Amazon Redshift tidak akan lagi mendukung pembuatan Python UDFs baru mulai 1 November 2025. Jika Anda ingin menggunakan Python UDFs, buat UDFs sebelum tanggal tersebut. Python yang ada UDFs akan terus berfungsi seperti biasa. Untuk informasi lebih lanjut, lihat posting blog
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
STV_BLOCKLIST
STV_BLOCKLIST berisi jumlah blok disk 1 MB yang digunakan oleh setiap irisan, tabel, atau kolom dalam database.
Gunakan kueri agregat dengan STV_BLOCKLIST, seperti yang ditunjukkan contoh berikut, untuk menentukan jumlah blok disk 1 MB yang dialokasikan per database, tabel, irisan, atau kolom. Anda juga dapat menggunakan STV_PARTISI untuk melihat informasi ringkasan tentang pemanfaatan disk.
STV_BLOCKLIST hanya terlihat oleh pengguna super. Untuk informasi selengkapnya, lihat Visibilitas data dalam tabel dan tampilan sistem.
catatan
STV_BLOCKLIST hanya merekam blok yang dimiliki oleh cluster yang disediakan atau namespace tanpa server. Jika database menyertakan blok yang dibagikan dari produsen datashare, blok tersebut tidak disertakan dalam STV_BLOCKLIST. Untuk informasi lebih lanjut tentang datashares, kunjungi. Berbagi data di Amazon Redshift
Kolom tabel
Nama kolom | Jenis data | Deskripsi |
---|---|---|
mengiris | integer | Irisan simpul. |
col | integer | Indeks berbasis nol untuk kolom. Setiap tabel yang Anda buat memiliki tiga kolom tersembunyi yang ditambahkan padanya: INSERT_XID, DELETE_XID, dan ROW_ID (OID). Tabel dengan 3 kolom yang ditentukan pengguna berisi 6 kolom aktual, dan kolom yang ditentukan pengguna diberi nomor internal sebagai 0, 1, dan 2. Kolom INSERT_XID, DELETE_XID, dan ROW_ID masing-masing diberi nomor 3, 4, dan 5, dalam contoh ini. |
tbl | integer | ID tabel untuk tabel database. |
blocknum | integer | ID untuk blok data. |
num_values | integer | Jumlah nilai yang terkandung di blok. |
extended_limits | integer | Untuk penggunaan internal. |
minvalue | bigint | Nilai data minimum blok. Menyimpan delapan karakter pertama sebagai integer 64-bit untuk data non-numerik. Digunakan untuk pemindaian disk. |
nilai maksimal | bigint | Nilai data maksimum blok. Menyimpan delapan karakter pertama sebagai integer 64-bit untuk data non-numerik. Digunakan untuk pemindaian disk. |
sb_pos | integer | Pengidentifikasi Amazon Redshift internal untuk posisi blok super pada disk. |
disematkan | integer | Apakah blok disematkan ke memori sebagai bagian dari pra-muat. 0 = false; 1 = true. Default adalah false. |
on_disk | integer | Apakah blok disimpan secara otomatis pada disk atau tidak. 0 = false; 1 = true. Default adalah false. |
dimodifikasi | integer | Apakah blok telah dimodifikasi atau tidak. 0 = false; 1 = true. Default adalah false. |
hdr_dimodifikasi | integer | Apakah header blok telah dimodifikasi atau tidak. 0 = false; 1 = true. Default adalah false. |
tidak disortir | integer | Apakah blok tidak disortir atau tidak. 0 = false; 1 = true. Default adalah benar. |
batu nisan | integer | Untuk penggunaan internal. |
disukai_diskno | integer | Nomor disk yang harus dihidupkan blok, kecuali disk gagal. Setelah disk diperbaiki, blok akan kembali ke disk ini. |
sementara | integer | Apakah blok berisi data sementara atau tidak, seperti dari tabel sementara atau hasil kueri menengah. 0 = salah; 1 = benar. Default adalah false. |
blok baru | integer | Menunjukkan apakah sebuah blok baru (true) atau tidak pernah berkomitmen ke disk (false). 0 = false; 1 = true. |
num_reader | integer | Jumlah referensi di setiap blok. |
bendera | integer | Bendera Amazon Redshift internal untuk header blok. |
Kueri Sampel
STV_BLOCKLIST berisi satu baris per blok disk yang dialokasikan, sehingga kueri yang memilih semua baris berpotensi mengembalikan sejumlah besar baris. Sebaiknya gunakan hanya kueri agregat dengan STV_BLOCKLIST.
SVV_DISKUSAGETampilan memberikan informasi serupa dalam format yang lebih user-friendly; Namun, contoh berikut menunjukkan satu penggunaan tabel STV_BLOCKLIST.
Untuk menentukan jumlah blok 1 MB yang digunakan oleh setiap kolom dalam tabel VENUE, ketikkan kueri berikut:
select col, count(*) from stv_blocklist, stv_tbl_perm where stv_blocklist.tbl = stv_tbl_perm.id and stv_blocklist.slice = stv_tbl_perm.slice and stv_tbl_perm.name = 'venue' group by col order by col;
Kueri ini mengembalikan jumlah blok 1 MB yang dialokasikan untuk setiap kolom dalam tabel VENUE, yang ditunjukkan oleh data sampel berikut:
col | count -----+------- 0 | 4 1 | 4 2 | 4 3 | 4 4 | 4 5 | 4 7 | 4 8 | 4 (8 rows)
Kueri berikut menunjukkan apakah data tabel benar-benar didistribusikan ke semua irisan:
select trim(name) as table, stv_blocklist.slice, stv_tbl_perm.rows from stv_blocklist,stv_tbl_perm where stv_blocklist.tbl=stv_tbl_perm.id and stv_tbl_perm.slice=stv_blocklist.slice and stv_blocklist.id > 10000 and name not like '%#m%' and name not like 'systable%' group by name, stv_blocklist.slice, stv_tbl_perm.rows order by 3 desc;
Kueri ini menghasilkan output sampel berikut, menunjukkan distribusi data genap untuk tabel dengan baris terbanyak:
table | slice | rows ----------+-------+------- listing | 13 | 10527 listing | 14 | 10526 listing | 8 | 10526 listing | 9 | 10526 listing | 7 | 10525 listing | 4 | 10525 listing | 17 | 10525 listing | 11 | 10525 listing | 5 | 10525 listing | 18 | 10525 listing | 12 | 10525 listing | 3 | 10525 listing | 10 | 10525 listing | 2 | 10524 listing | 15 | 10524 listing | 16 | 10524 listing | 6 | 10524 listing | 19 | 10524 listing | 1 | 10523 listing | 0 | 10521 ... (180 rows)
Kueri berikut menentukan apakah ada blok batu nisan yang dikomit ke disk:
select slice, col, tbl, blocknum, newblock from stv_blocklist where tombstone > 0; slice | col | tbl | blocknum | newblock -------+-----+--------+----------+---------- 4 | 0 | 101285 | 0 | 1 4 | 2 | 101285 | 0 | 1 4 | 4 | 101285 | 1 | 1 5 | 2 | 101285 | 0 | 1 5 | 0 | 101285 | 0 | 1 5 | 1 | 101285 | 0 | 1 5 | 4 | 101285 | 1 | 1 ... (24 rows)