ANALYZE COMPRESSION - Amazon Redshift

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

ANALYZE COMPRESSION

Melakukan analisis kompresi dan menghasilkan laporan dengan pengkodean kompresi yang disarankan untuk tabel yang dianalisis. Untuk setiap kolom, laporan tersebut mencakup perkiraan potensi pengurangan ruang disk dibandingkan dengan RAW pengkodean.

Sintaks

ANALYZE COMPRESSION [ [ table_name ] [ ( column_name [, ...] ) ] ] [COMPROWS numrows]

Parameter

table_name

Anda dapat menganalisis kompresi untuk tabel tertentu, termasuk tabel sementara. Anda dapat memenuhi syarat tabel dengan nama skema. Anda dapat secara opsional menentukan table_name untuk menganalisis satu tabel. Jika Anda tidak menentukan table_name, semua tabel dalam database yang saat ini terhubung akan dianalisis. Anda tidak dapat menentukan lebih dari satu table_name dengan satu ANALYZE COMPRESSION pernyataan.

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).

COMPROWS

Jumlah baris yang akan digunakan sebagai ukuran sampel untuk analisis kompresi. Analisis dijalankan pada baris dari setiap irisan data. Misalnya, jika Anda menentukan COMPROWS 1000000 (1.000.000) dan sistem berisi 4 irisan total, tidak lebih dari 250.000 baris per irisan dibaca dan dianalisis. Jika COMPROWS tidak ditentukan, ukuran sampel default menjadi 100.000 per irisan. Nilai yang COMPROWS lebih rendah dari default 100.000 baris per irisan secara otomatis ditingkatkan ke nilai default. Namun, analisis kompresi tidak menghasilkan rekomendasi jika jumlah data dalam tabel tidak cukup untuk menghasilkan sampel yang bermakna. Jika COMPROWS jumlahnya lebih besar dari jumlah baris dalam tabel, ANALYZE COMPRESSION perintah masih melanjutkan dan menjalankan analisis kompresi terhadap semua baris yang tersedia. Menggunakan COMPROWS hasil dalam kesalahan jika tabel tidak ditentukan.

numrows

Jumlah baris yang akan digunakan sebagai ukuran sampel untuk analisis kompresi. Rentang yang diterima untuk numrows adalah angka antara 1000 dan 1000000000 (1.000.000.000).

Catatan penggunaan

ANALYZECOMPRESSIONmemperoleh kunci tabel eksklusif, yang mencegah pembacaan dan penulisan bersamaan terhadap tabel. Jalankan ANALYZE COMPRESSION perintah hanya saat tabel dalam keadaan idle.

Jalankan ANALYZE COMPRESSION untuk mendapatkan rekomendasi untuk skema pengkodean kolom, berdasarkan sampel isi tabel. ANALYZECOMPRESSIONadalah alat penasihat dan tidak memodifikasi pengkodean kolom tabel. Anda dapat menerapkan pengkodean yang disarankan dengan membuat ulang tabel atau dengan membuat tabel baru dengan skema yang sama. Membuat ulang tabel yang tidak terkompresi dengan skema pengkodean yang sesuai dapat secara signifikan mengurangi jejak pada disk. Pendekatan ini menghemat ruang disk dan meningkatkan kinerja kueri untuk beban kerja terikat I/O.

ANALYZECOMPRESSIONmelewatkan fase analisis aktual dan langsung mengembalikan jenis pengkodean asli pada kolom apa pun yang ditunjuk sebagai. SORTKEY Ini dilakukan karena pemindaian terbatas rentang mungkin berkinerja buruk ketika SORTKEY kolom dikompresi jauh lebih tinggi daripada kolom lainnya.

Contoh

Contoh berikut menunjukkan pengkodean dan perkiraan pengurangan persen untuk kolom dalam LISTING tabel saja:

analyze compression listing; Table | Column | Encoding | Est_reduction_pct ---------+----------------+----------+------------------- listing | listid | az64 | 40.96 listing | sellerid | az64 | 46.92 listing | eventid | az64 | 53.37 listing | dateid | raw | 0.00 listing | numtickets | az64 | 65.66 listing | priceperticket | az64 | 72.94 listing | totalprice | az64 | 68.05 listing | listtime | az64 | 49.74

Contoh berikut menganalisisQTYSOLD,COMMISSION, dan SALETIME kolom dalam SALES tabel.

analyze compression sales(qtysold, commission, saletime); Table | Column | Encoding | Est_reduction_pct -------+------------+----------+------------------- sales | salesid | N/A | 0.00 sales | listid | N/A | 0.00 sales | sellerid | N/A | 0.00 sales | buyerid | N/A | 0.00 sales | eventid | N/A | 0.00 sales | dateid | N/A | 0.00 sales | qtysold | az64 | 83.06 sales | pricepaid | N/A | 0.00 sales | commission | az64 | 71.85 sales | saletime | az64 | 49.63