Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Iceberg-Tabellenschema weiterentwickeln
Iceberg-Schemaaktualisierungen sind reine Metadaten-Änderungen. Bei einer Schemaaktualisierung werden keine Datendateien geändert.
Das Iceberg-Format unterstützt die folgenden Änderungen an der Schemaentwicklung:
-
Einfügen – Fügt einer Tabelle oder einer verschachtelten
struct
eine neue Spalte hinzu. -
Entfernen – Entfernt eine vorhandene Spalte aus einer Tabelle oder einem verschachtelten
struct
. -
Umbenennen – Benennt eine vorhandene Spalte oder ein vorhandenes Feld in einer verschachtelten
struct
. -
Neuanordnen – Ändert die Reihenfolge der Spalten.
-
Promotionstyp – Erweitert den Typ einer Spalte, ein
struct
-Feld, einemap
-Schlüssel, einenmap
-Wert, oder einlist
-Element. Derzeit werden die folgenden Fälle für Iceberg-Tabellen unterstützt:-
Ganzzahl bis große Ganzzahl
-
FLOAT, DOUBLE
-
Erhöhung der Genauigkeit eines Dezimaltyps
-
TABELLE ÄNDERN SPALTEN HINZUFÜGEN
Fügt einer vorhandenen Iceberg-Tabelle eine oder mehrere Spalten hinzu.
Syntax
ALTER TABLE [
db_name
.]table_name
ADD COLUMNS (col_name
data_type
[,...])
Beispiele
Im folgenden Beispiel wird eine comment
-Spalte des Typs string
einer Iceberg-Tabelle hinzugefügt.
ALTER TABLE iceberg_table ADD COLUMNS (comment string)
Im folgenden Beispiel wird eine point
-Spalte des Typs struct
einer Iceberg-Tabelle hinzugefügt.
ALTER TABLE iceberg_table ADD COLUMNS (point struct<x: double, y: double>)
Im folgenden Beispiel wird eine points
-Spalte, die ein Array von Strukturen zu einer Iceberg-Tabelle ist, hinzugefügt.
ALTER TABLE iceberg_table ADD COLUMNS (points array<struct<x: double, y: double>>)
ALTER TABLE DROP COLUMN
Lässt eine Spalte von einer vorhandenen Iceberg-Tabelle fallen.
Syntax
ALTER TABLE [
db_name
.]table_name
DROP COLUMNcol_name
Beispiel
ALTER TABLE iceberg_table DROP COLUMN userid
ALTER TABLE CHANGE COLUMN
Ändert den Namen, den Typ, die Reihenfolge oder den Kommentar einer Spalte.
Anmerkung
ALTER TABLE REPLACE COLUMNS
wird nicht unterstützt. Da REPLACE COLUMNS
alle Spalten entfernt und dann neue hinzufügt, wird es für Iceberg nicht unterstützt. CHANGE COLUMN
ist die bevorzugte Syntax für die Schemaentwicklung.
Syntax
ALTER TABLE [
db_name
.]table_name
CHANGE [COLUMN]col_old_name
col_new_name
column_type
[COMMENTcol_comment
] [FIRST|AFTERcolumn_name
]
Beispiel
ALTER TABLE iceberg_table CHANGE comment blog_comment string AFTER id
SHOW_COLUMNS
Zeigt die Spalten in einer Tabelle an.
Syntax
SHOW COLUMNS (FROM|IN) [
db_name
.]table_name
Beispiel
SHOW COLUMNS FROM iceberg_table