Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk: Databricks SQL
Databricks Runtime
Pernyataan ini ANALYZE TABLE
mengumpulkan perkiraan statistik tentang tabel tertentu atau semua tabel dalam skema tertentu. Statistik ini digunakan oleh pengoptimal kueri untuk menghasilkan rencana kueri yang optimal.
Pengoptimalan prediktif secara otomatis dijalankan pada tabel terkelola di Unity Catalog. Databricks merekomendasikan untuk mengaktifkan pengoptimalan prediktif untuk semua tabel terkelola Unity Catalog untuk menyederhanakan pemeliharaan data dan mengurangi biaya penyimpanan. Lihat Pengoptimalan prediktif untuk tabel terkelola Unity Catalog.
Sintaks
ANALYZE TABLE table_name [ PARTITION clause ]
COMPUTE [ DELTA ] STATISTICS [ NOSCAN | FOR COLUMNS col1 [, ...] | FOR ALL COLUMNS ]
ANALYZE TABLES [ { FROM | IN } schema_name ] COMPUTE STATISTICS [ NOSCAN ]
Parameter
-
Mengidentifikasi tabel yang akan dianalisis. Nama tidak boleh menyertakan spesifikasi temporal, spesifikasi opsi, atau jalur. Jika tabel tidak dapat ditemukan, Azure Databricks menimbulkan kesalahan TABLE_OR_VIEW_NOT_FOUND .
-
Secara opsional membatasi perintah ke subset partisi.
Klausul ini tidak didukung untuk tabel Delta Lake.
DELTA
Berlaku untuk:
Databricks SQL
Databricks Runtime 14.3 LTS ke atas
Menghitung ulang statistik yang disimpan di log Delta untuk kolom yang dikonfigurasi untuk pengumpulan statistik dalam tabel Delta.
Ketika kata kunci
DELTA
ditentukan, statistik normal untuk pengoptimal kueri tidak dikumpulkan.Databricks merekomendasikan menjalankan
ANALYZE TABLE table_name COMPUTE DELTA STATISTICS
setelah menetapkan kolom baru untuk pengabaian data untuk memperbarui statistik untuk semua baris dalam tabel. Untuk performa yang dioptimalkan, jalankanANALYZE TABLE table_name COMPUTE STATISTICS
untuk memperbarui rencana kueri setelah pembaruan log Delta selesai.[ NOSCAN | UNTUK COLUMNS col [, ...] | UNTUK SEMUA COLUMNS ]
Jika tidak ada opsi analisis yang ditentukan,
ANALYZE TABLE
kumpulkan jumlah baris dan ukuran tabel dalam byte.NOSCAN
Kumpulkan hanya ukuran tabel dalam byte ( yang tidak memerlukan pemindaian seluruh tabel ).
UNTUK COLUMNS col [, ...] | UNTUK SEMUA COLUMNS
Mengumpulkan statistik untuk setiap kolom yang ditentukan atau semua kolom, serta statistik tabel.
Statistik kolom tidak didukung dalam kombinasi dengan klausul
PARTITION
.
{ FROM
|
IN } schema_nameMenentukan nama skema yang akan dianalisis. Tanpa nama skema,
ANALYZE TABLES
mengumpulkan semua tabel dalam skema saat ini yang dapat dianalisis oleh pengguna saat ini yang memiliki izin.
Contoh
> CREATE TABLE students (name STRING, student_id INT) PARTITIONED BY (student_id);
> INSERT INTO students PARTITION (student_id = 111111) VALUES ('Mark');
> INSERT INTO students PARTITION (student_id = 222222) VALUES ('John');
> ANALYZE TABLE students COMPUTE STATISTICS NOSCAN;
> DESC EXTENDED students;
col_name data_type comment
-------------------- -------------------- -------
name string null
student_id int null
... ... ...
Statistics 864 bytes
... ... ...
> ANALYZE TABLE students COMPUTE STATISTICS;
> DESC EXTENDED students;
col_name data_type comment
-------------------- -------------------- -------
name string null
student_id int null
... ... ...
Statistics 864 bytes, 2 rows
... ... ...
-- Note: ANALYZE TABLE .. PARTITION is not supported for Delta tables.
> ANALYZE TABLE students PARTITION (student_id = 111111) COMPUTE STATISTICS;
> DESC EXTENDED students PARTITION (student_id = 111111);
col_name data_type comment
-------------------- -------------------- -------
name string null
student_id int null
... ... ...
Partition Statistics 432 bytes, 1 rows
... ... ...
OutputFormat org.apache.hadoop...
> ANALYZE TABLE students COMPUTE STATISTICS FOR COLUMNS name;
> DESC EXTENDED students name;
info_name info_value
-------------- ----------
col_name name
data_type string
comment NULL
min NULL
max NULL
num_nulls 0
distinct_count 2
avg_col_len 4
max_col_len 4
histogram NULL
> ANALYZE TABLES IN school_schema COMPUTE STATISTICS NOSCAN;
> DESC EXTENDED teachers;
col_name data_type comment
-------------------- -------------------- -------
name string null
teacher_id int null
... ... ...
Statistics 1382 bytes
... ... ...
> DESC EXTENDED students;
col_name data_type comment
-------------------- -------------------- -------
name string null
student_id int null
... ... ...
Statistics 864 bytes
... ... ...
> ANALYZE TABLES COMPUTE STATISTICS;
> DESC EXTENDED teachers;
col_name data_type comment
-------------------- -------------------- -------
name string null
teacher_id int null
... ... ...
Statistics 1382 bytes, 2 rows
... ... ...
> DESC EXTENDED students;
col_name data_type comment
-------------------- -------------------- -------
name string null
student_id int null
... ... ...
Statistics 864 bytes, 2 rows
... ... ...
> ANALYZE TABLE some_delta_table COMPUTE DELTA STATISTICS;