Vlastnosti tabulky a možnosti tabulky
Platí pro: Databricks SQL Databricks Runtime
Definuje uživatelsky definované značky pro tabulky a zobrazení.
-
Vlastnost tabulky je pár klíč-hodnota, který můžete inicializovat při provádění CREATE TABLE nebo CREATE VIEW. Pomocí funkce ALTER TABLE nebo ALTER VIEW můžete zrušit nastavení existujících nebo nastavit nové nebo existující vlastnosti tabulky.
Vlastnosti tabulky můžete použít k označení tabulek s informacemi, které SQL nesleduje.
-
Účelem možností tabulky je předat vlastnosti úložiště podkladovému úložišti, jako jsou například vlastnosti SERDE do Hivu.
Možnost tabulky je pár klíč-hodnota, který můžete inicializovat při provádění CREATE TABLE.
SET
Nelze aniUNSET
použít možnost tabulky.
TBLPROPERTIES
Nastaví jednu nebo více vlastností tabulky v nové tabulce nebo zobrazení.
Vlastnosti tabulky můžete použít k označení tabulek s informacemi, které SQL nesleduje.
Syntaxe
TBLPROPERTIES ( { property_key [ = ] property_val } [, ...] )
property_key
{ identifier [. ...] | string_literal }
Parametry
property_key
Klíč vlastnosti. Klíč se může skládat z jednoho nebo více identifikátorů oddělených tečkou nebo řetězcovým literálem.
Klíče vlastností musí být jedinečné a rozlišují malá a velká písmena.
property_val
Hodnota vlastnosti. Hodnota musí být
BOOLEAN
hodnota ,STRING
,INTEGER
neboDECIMAL
literál.
Příklady
-- Create table with user defined table properties
> CREATE TABLE T(c1 INT) TBLPROPERTIES('this.is.my.key' = 12, this.is.my.key2 = true);
> SHOW TBLPROPERTIES T;
option.serialization.format 1
this.is.my.key 12
this.is.my.key2 true
transient_lastDdlTime 1649783569
NASTAVENÍ TBLPROPERTIES
Nastaví jednu nebo více vlastností tabulky v existující tabulce nebo zobrazení.
Syntaxe
SET TBLPROPERTIES ( { property_key [ = ] property_val } [, ...] )
property_key
{ identifier [. ...] | string_literal }
Parametry
property_key
Klíč vlastnosti. Klíč se může skládat z jednoho nebo více identifikátorů oddělených tečkou nebo řetězcovým literálem.
Klíče vlastností musí být jedinečné a rozlišují malá a velká písmena.
property_val
Nová hodnota vlastnosti. Hodnota musí být
BOOLEAN
hodnota ,STRING
,INTEGER
neboDECIMAL
literál.
Příklady
-- Alter the a table's table properties.
> ALTER TABLE T SET TBLPROPERTIES(this.is.my.key = 14, 'this.is.my.key2' = false);
> SHOW TBLPROPERTIES T;
option.serialization.format 1
this.is.my.key 14
this.is.my.key2 false
transient_lastDdlTime 1649783980
ZRUŠIT NASTAVENÍ TBLPROPERTIES
Odebere jednu nebo více vlastností tabulky z tabulky nebo zobrazení.
Syntaxe
UNSET TBLPROPERTIES [ IF EXISTS ] ( property_key [, ...] )
property_key
{ identifier [. ...] | string_literal }
Parametry
POKUD EXISTUJE
Nepovinná klauzule, která směruje Databricks SQL, aby nevyvolá chybu, pokud žádný z klíčů vlastností neexistuje.
property_key
Klíč vlastnosti, který chcete odebrat. Klíč se může skládat z jednoho nebo více identifikátorů oddělených tečkou nebo řetězcovým literálem.
U klíčů vlastností se rozlišují malá a velká písmena. Pokud
property_key
neexistuje a chyba se vyvolá, pokudIF EXISTS
není zadána.
Příklady
-- Remove a table's table properties.
> ALTER TABLE T UNSET TBLPROPERTIES(this.is.my.key, 'this.is.my.key2');
> SHOW TBLPROPERTIES T;
option.serialization.format 1
transient_lastDdlTime 1649784415
OPTIONS
Nastaví jednu nebo více možností tabulky v nové tabulce.
Účelem možností tabulky je předat vlastnosti úložiště podkladovému úložišti, jako jsou například vlastnosti SERDE do Hivu.
Zadání možností tabulky pro tabulky Delta Lake bude také odpovídat těmto možnostem jako vlastností tabulky.
Syntaxe
OPTIONS ( { property_key [ = ] property_val } [, ...] )
property_key
{ identifier [. ...] | string_literal }
Parametry
property_key
Klíč vlastnosti. Klíč se může skládat z jednoho nebo více identifikátorů oddělených tečkou nebo řetězcovým literálem.
Klíče vlastností musí být jedinečné a rozlišují velká a malá písmena.
property_val
Hodnota vlastnosti. Hodnota musí být
BOOLEAN
hodnota ,STRING
,INTEGER
neboDECIMAL
literál.V Databricks SQL a Databricks Runtime 13.3 LTS a vyšší
property_val
může být konstantní výraz.
Příklady
-- Create table with user defined table option
-- The options appears with an `option.` prefix.
> CREATE TABLE T(c1 INT) OPTIONS(this.is.my.key = 'blue' || 'green');
> SHOW TBLPROPERTIES T;
option.this.is.my.key bluegreen
option.serialization.format 2
Klíče vlastností rezervovaných tabulek
Azure Databricks si vyhrazuje některé klíče vlastností pro vlastní použití a při pokusu o jejich použití vyvolá chybu:
external
Pomocí příkazu CREATE EXTERNAL TABLE vytvořte externí tabulku.
location
LOCATION
K nastavení umístění tabulky použijte klauzule ALTER TABLE a CREATE TABLE.owner
[SET] OWNER TO
Pomocí klauzule ALTER TABLE a ALTER VIEW můžete převést vlastnictví tabulky nebo zobrazení. Funkce SET je povolená jako volitelné klíčové slovo v Databricks SQL.provider
USING
Použití klauzule CREATE TABLE k nastavení zdroje dat tabulky
Klíče vlastností byste neměli používat od identifikátoru option
.
Tento identifikátor předpony bude filtrován v SHOW TBLPROPERTIES.
Předpona option
se také používá k zobrazení možností tabulky.
Běžné klíče TBLPROPERTIES a OPTIONS
U Delta Lake se běžně používají následující nastavení:
delta.appendOnly
: Nastavte na zakázánítrue
UPDATE
aDELETE
operace.delta.dataSkippingNumIndexedCols
: Nastavte počet úvodních sloupců, pro který se mají shromažďovat a zvažovat statistiky.delta.deletedFileRetentionDuration
: Nastavte na interval, například'interval 7 days'
k řízení, kdyVACUUM
je povoleno odstraňovat soubory.delta.logRetentionDuration
: Nastavte interval, například'interval 60 days'
k řízení, jak dlouho se historie uchovává pro dotazy na časovou cestu.