View a markdown version of this page

STV_BLOCKLIST - Amazon Redshift

Amazon Redshift tidak akan lagi mendukung penggunaan Python UDF setelah 30 Juni 2026. Kami akan mulai menegakkannya secara bertahap. Untuk informasi lebih lanjut tentang detail opsi akhir masa pakai dan migrasi Python, lihat posting blog yang diterbitkan pada 30 Juni 2025.

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 berbagi data, buka. Berbagi data di Amazon Redshift

Kolom tabel

Nama kolom Jenis data Deskripsi
mengiris integer Irisan simpul.
Col integer Zero-based indeks 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 diberi nomor 3, 4, dan 5, masing-masing, dalam contoh ini.
tbl integer ID tabel untuk tabel database.
Blocknum integer ID untuk blok data.
nilai_angka integer Jumlah nilai yang terkandung di blok.
batas_diperpanjang integer Untuk penggunaan internal.
minvalue bigint Nilai data minimum blok. Menyimpan delapan karakter pertama sebagai bilangan bulat 64-bit untuk data non-numerik. Digunakan untuk pemindaian disk.
nilai maksimum bigint Nilai data maksimum blok. Menyimpan delapan karakter pertama sebagai bilangan bulat 64-bit untuk data non-numerik. Digunakan untuk pemindaian disk.
sb_pos integer Pengidentifikasi internal Amazon Redshift untuk posisi blok super pada disk.
disematkan integer Apakah blok disematkan ke dalam memori sebagai bagian dari pra-pemuatan. 0 = salah; 1 = benar. Defaultnya false.
on_disk integer Apakah blok disimpan secara otomatis pada disk atau tidak. 0 = salah; 1 = benar. Defaultnya false.
dimodifikasi integer Apakah blok telah dimodifikasi atau tidak. 0 = salah; 1 = benar. Defaultnya false.
hdr_dimodifikasi integer Apakah header blok telah dimodifikasi atau tidak. 0 = false; 1 = true. Defaultnya false.
tidak disortir integer Apakah blok tidak disortir atau tidak. 0 = salah; 1 = benar. Defaultnya benar.
batu nisan integer Untuk penggunaan internal.
preferred_diskno integer Nomor disk yang harus diaktifkan blok, kecuali disk telah gagal. Setelah disk diperbaiki, blok akan pindah kembali ke disk ini.
sementara integer Apakah blok berisi data sementara atau tidak, seperti dari tabel sementara atau hasil kueri perantara. 0 = false; 1 = true. Defaultnya false.
blok baru integer Menunjukkan apakah blok baru (benar) atau tidak pernah diikat ke disk (false). 0 = false; 1 = true.
pembaca_nomor 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.

T SVV_DISKUSAGE ampilan memberikan informasi serupa dalam format yang lebih ramah pengguna; namun, contoh berikut menunjukkan satu penggunaan tabel STV_BLOCKLIST.

Untuk menentukan jumlah blok 1 MB yang digunakan oleh setiap kolom dalam tabel VENUE, ketik 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, 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 atau tidak:

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