Amazon Redshift unterstützt ab dem 1. November 2025 nicht mehr die Erstellung neuer Python-UDFs. Wenn Sie Python-UDFs verwenden möchten, erstellen Sie die UDFs vor diesem Datum. Bestehende Python-UDFs funktionieren weiterhin wie gewohnt. Weitere Informationen finden Sie im Blog-Posting
STV_BLOCKLIST
STV_BLOCKLIST enthält die Anzahl der 1 MB-Festplattenblöcke, die von jedem Slice, jeder Tabelle oder Spalte in einer Datenbank verwendet werden.
Verwenden Sie aggregierte Abfragen mit STV_BLOCKLIST, wie die folgenden Beispiele zeigen, um die Anzahl der 1 MB-Festplattenblöcke zu bestimmen, die pro Datenbank, Tabelle, Slice oder Spalte zugewiesen sind. Sie können auch STV_PARTITIONS verwenden, um zusammenfassende Informationen zur Festplattennutzung anzuzeigen.
STV_BLOCKLIST ist nur für Superuser sichtbar. Weitere Informationen finden Sie unter Sichtbarkeit der Daten in Systemtabellen und Ansichten.
Anmerkung
STV_BLOCKLIST zeichnet nur Blöcke auf, die dem bereitgestellten Cluster oder Serverless-Namespace gehören. Wenn die Datenbank Blöcke enthält, die von einem Datashare-Produzentengemeinsam genutzt werden, sind diese Blöcke nicht in STV_BLOCKLIST enthalten. Weitere Informationen zu Datashares finden Sie unter Datenfreigabe in Amazon Redshift .
Tabellenspalten
| Spaltenname | Datentyp | Beschreibung |
|---|---|---|
| slice | integer | Knoten-Slice. |
| col | integer | Null-basierter Index für die Spalte. Jeder Tabelle, die Sie erstellen, werden diese drei verborgenen Spalten angehängt: INSERT_XID, DELETE_XID, und ROW_ID (OID). Eine Tabelle mit drei vom Benutzer definierten Spalten hat tatsächlich sechs Spalten, und die benutzerdefinierten Spalten haben die interne Nummerierung 0, 1 und 2. Die Spalten INSERT_XID, DELETE_XID, und ROW_ID haben in diesem Beispiel die Nummern 3, 4 und 5. |
| tbl | integer | Tabellen-ID für die Datenbanktabelle. |
| blocknum | integer | ID für den Datenblock. |
| num_values | integer | Anzahl der enthaltenen Werte für den Block. |
| extended_limits | integer | Zur internen Verwendung. |
| minvalue | bigint | Minimaler Datenwert des Blocks. Speichert die ersten acht Zeichen als 64-Bit-Ganzzahl für nicht-numerische Daten. Zum Scannen von Festplatten verwendet. |
| maxvalue | bigint | Maximaler Datenwert des Blocks. Speichert die ersten acht Zeichen als 64-Bit-Ganzzahl für nicht-numerische Daten. Zum Scannen von Festplatten verwendet. |
| sb_pos | integer | Interne Amazon-Redshift-Kennung für die Superblock-Position auf der Festplatte. |
| pinned | integer | Ob der Block im Rahmen des Pre-Load-Vorgangs im Speicher fixiert ist. 0 = false; 1 = true. Standard ist „false“. |
| on_disk | integer | Ob der Block automatisch auf der Festplatte gespeichert wird. 0 = false; 1 = true. Standard ist „false“. |
| modified | integer | Ob der Block modifiziert wurde. 0 = false; 1 = true. Standard ist „false“. |
| hdr_modified | integer | Ob der Block-Header modifiziert wurde. 0 = false; 1 = true. Standard ist „false“. |
| unsorted | integer | Ob der Block unsortiert ist. 0 = false; 1 = true. Der Standardwert ist „true“. |
| tombstone | integer | Zur internen Verwendung. |
| preferred_diskno | integer | Nummer der Festplatte, auf der sich der Block befinden sollte, sofern die Festplatte nicht ausgefallen ist. Sobald die Festplatte festgelegt ist, wird der Block wieder auf diese Festplatte übertragen. |
| temporary | integer | Ob der Block temporäre Daten enthält, etwa aus einer temporären Tabelle oder aus Abfragezwischenergebnissen. 0 = false; 1 = true. Standard ist „false“. |
| newblock | integer | Zeigt an, ob ein Block neu ist (true) oder noch nie einem Commit-Vorgang zu einer Festplatte unterzogen wurde (false). 0 = false; 1 = true. |
| num_readers | integer | Anzahl der Referenzen auf jedem Block. |
| flags | integer | Interne Amazon-Redshift-Flags für den Block-Header. |
Beispielabfragen
STV_BLOCKLIST enthält eine Zeile pro zugewiesenem Festplattenblock, so dass eine Abfrage mit Auswahl aller Zeilen möglicherweise eine sehr große Zahl von Zeilen ausgibt. Wir empfehlen, nur aggregierte Abfragen mit STV_BLOCKLIST zu verwenden.
Die Ansicht SVV_DISKUSAGE bietet ähnliche Informationen in einem benutzerfreundlichen Format – das folgende Beispiel illustriert eine Verwendung der STV_BLOCKLIST-Tabelle.
Um die Anzahl der 1 MB-Blöcke zu bestimmen, die jede Spalte in der VENUE-Tabelle enthält, geben Sie die folgende Abfrage ein:
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;
Diese Abfrage gibt die Anzahl der jeder Spalte in der VENUE-Tabelle zugeordneten 1 MB-Blöcke zurück, vgl. die folgenden Beispieldaten:
col | count -----+------- 0 | 4 1 | 4 2 | 4 3 | 4 4 | 4 5 | 4 7 | 4 8 | 4 (8 rows)
Die folgende Abfrage zeigt, ob die Tabellendaten tatsächlich über alle Slices verteilt sind:
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;
Diese Abfrage erstellt die folgende Beispielausgabe, die die gleichmäßige Verteilung der Daten für die Tabelle mit den meisten Zeilen anzeigt:
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)
Die folgende Abfrage bestimmt, ob ein Tombstone-Block auf die Festplatte geschrieben wurde:
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)