Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memperbarui statistik tabel untuk digunakan oleh perencana kueri.
Hak istimewa yang diperlukan
Berikut ini adalah hak istimewa yang diperlukan untuk ANALISIS:
-
Superuser
-
Pengguna dengan hak istimewa ANALISIS
-
Pemilik relasi
-
Pemilik basis data yang tabel dibagikan
Sintaksis
ANALYZE [ VERBOSE ] [ [ table_name [ ( column_name [, ...] ) ] ] [ PREDICATE COLUMNS | ALL COLUMNS ]
Parameter
- BERTELE-TELE
-
Klausa yang mengembalikan pesan informasi kemajuan tentang operasi ANALISIS. Opsi ini berguna ketika Anda tidak menentukan tabel.
- table_name
-
Anda dapat menganalisis tabel tertentu, termasuk tabel sementara. Anda dapat memenuhi syarat tabel dengan nama skema. Anda dapat secara opsional menentukan table_name untuk menganalisis satu tabel. Anda tidak dapat menentukan lebih dari satu table_name dengan satu pernyataan ANALYZE table_name. Jika Anda tidak menentukan nilai table_name, semua tabel dalam database yang saat ini terhubung akan dianalisis, termasuk tabel persisten dalam katalog sistem. Amazon Redshift melewatkan menganalisis tabel jika persentase baris yang telah berubah sejak ANALISIS terakhir lebih rendah dari ambang analisis. Untuk informasi selengkapnya, lihat Menganalisis ambang.
Anda tidak perlu menganalisis tabel sistem Amazon Redshift (tabel STL dan STV).
- column_name
-
Jika Anda menentukan table_name, Anda juga dapat menentukan satu atau beberapa kolom dalam tabel (sebagai daftar yang dipisahkan kolom dalam tanda kurung). Jika daftar kolom ditentukan, hanya kolom yang terdaftar yang dianalisis.
- KOLOM PREDIKAT | SEMUA KOLOM
-
Klausa yang menunjukkan apakah ANALYSIS harus menyertakan hanya kolom predikat. Tentukan KOLOM PREDIKAT untuk menganalisis hanya kolom yang telah digunakan sebagai predikat dalam kueri sebelumnya atau kemungkinan kandidat untuk digunakan sebagai predikat. Tentukan SEMUA KOLOM untuk menganalisis semua kolom. Defaultnya adalah SEMUA KOLOM.
Kolom disertakan dalam kumpulan kolom predikat jika salah satu dari berikut ini benar:
-
Kolom telah digunakan dalam kueri sebagai bagian dari filter, kondisi gabungan, atau kelompok demi klausa.
-
Kolom adalah kunci distribusi.
-
Kolom adalah bagian dari kunci sortir.
Jika tidak ada kolom yang ditandai sebagai kolom predikat, misalnya karena tabel belum ditanyakan, semua kolom dianalisis bahkan ketika KOLOM PREDIKAT ditentukan. Ketika ini terjadi, Amazon Redshift mungkin merespons dengan pesan seperti
Tidak ada kolom predikat yang ditemukan untuk "”.
. Untuk informasi selengkapnya tentang kolom predikat, lihatMenganalisis tabel.table-name
Menganalisis semua kolom -
Catatan penggunaan
Amazon Redshift secara otomatis menjalankan ANALISIS pada tabel yang Anda buat dengan perintah berikut:
-
BUAT TABEL SEBAGAI
-
BUAT TABEL TEMP SEBAGAI
-
PILIH KE
Anda tidak dapat menganalisis tabel eksternal.
Anda tidak perlu menjalankan perintah ANALYZE pada tabel ini saat pertama kali dibuat. Jika Anda memodifikasinya, Anda harus menganalisisnya dengan cara yang sama seperti tabel lainnya.
Menganalisis ambang
Untuk mengurangi waktu pemrosesan dan meningkatkan kinerja sistem secara keseluruhan, Amazon Redshift melewatkan ANALISIS untuk tabel jika persentase baris yang telah berubah sejak perintah ANALYZE terakhir dijalankan lebih rendah dari ambang analisis yang ditentukan oleh parameter. analyze_threshold_percent Secara default, analyze_threshold_percent
adalah 10. analyze_threshold_percent
Untuk mengubah sesi saat ini, jalankan SET perintah. Contoh berikut berubah analyze_threshold_percent
menjadi 20 persen.
set analyze_threshold_percent to 20;
Untuk menganalisis tabel ketika hanya sejumlah kecil baris telah berubah, atur analyze_threshold_percent
ke angka kecil yang sewenang-wenang. Misalnya, jika Anda mengatur analyze_threshold_percent
ke 0,01, maka tabel dengan 100.000.000 baris tidak dilewati jika setidaknya 10.000 baris telah berubah.
set analyze_threshold_percent to 0.01;
Jika ANALYZE melewatkan tabel karena tidak memenuhi ambang analisis, Amazon Redshift menampilkan pesan berikut.
ANALYZE SKIP
Untuk menganalisis semua tabel meskipun tidak ada baris yang berubah, atur analyze_threshold_percent
ke 0.
Untuk melihat hasil operasi ANALISIS, kueri tabel STL_ANALISIS sistem.
Untuk informasi selengkapnya tentang menganalisis tabel, lihatMenganalisis tabel.
Contoh
Analisis semua tabel dalam database TICKIT dan kembalikan informasi kemajuan.
analyze verbose;
Analisis tabel LISTING saja.
analyze listing;
Analisis kolom VENUEID dan VENUENAME di tabel VENUE.
analyze venue(venueid, venuename);
Analisis hanya kolom predikat di tabel VENUE.
analyze venue predicate columns;