Táblázattulajdonságok és táblázatbeállítások
A következőkre vonatkozik: Databricks SQL Databricks Runtime
A táblák és nézetek felhasználó által definiált címkéit határozza meg.
-
A táblatulajdonságok kulcs-érték párok, amelyeket a CREATE TABLE vagy a CREATE NÉZET végrehajtásakor inicializálhat. Az ALTER TABLE vagy AZ ALTER VIEW használatával feloldhatja a meglévő vagy az új vagy meglévő táblatulajdonságok beállítását.
A táblatulajdonságokkal olyan táblákat címkézhet meg, amelyeket az SQL nem követ nyomon.
-
A táblabeállítások célja, hogy a tárolási tulajdonságokat átadják a mögöttes tárolónak, például SERDE-tulajdonságokat a Hive-nek.
A táblabeállítás egy kulcs-érték pár, amelyet a CREATE TABLE végrehajtásakor inicializálhat. A táblázat nem vagy
UNSET
nemSET
adható meg.
TBLPROPERTIES
Egy vagy több táblatulajdonság beállítása új táblában vagy nézetben.
A táblatulajdonságokkal olyan táblákat címkézhet meg, amelyeket az SQL nem követ nyomon.
Syntax
TBLPROPERTIES ( { property_key [ = ] property_val } [, ...] )
property_key
{ identifier [. ...] | string_literal }
Paraméterek
property_key
A tulajdonságkulcs. A kulcs egy vagy több , ponttal vagy sztringkonstanssal elválasztott azonosítóból állhat.
A tulajdonságkulcsnak egyedinek kell lennie, és megkülönbözteti a kis- és nagybetűket.
property_val
A tulajdonság értéke. Az értéknek egy
BOOLEAN
,STRING
,INTEGER
vagyDECIMAL
literálnak kell lennie.
Példák
-- 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
TBLPROPERTIES BEÁLLÍTÁSA
Egy vagy több táblatulajdonság beállítása meglévő táblában vagy nézetben.
Syntax
SET TBLPROPERTIES ( { property_key [ = ] property_val } [, ...] )
property_key
{ identifier [. ...] | string_literal }
Paraméterek
property_key
A tulajdonságkulcs. A kulcs egy vagy több , ponttal vagy sztringkonstanssal elválasztott azonosítóból állhat.
A tulajdonságkulcsnak egyedinek kell lennie, és megkülönbözteti a kis- és nagybetűket.
property_val
A tulajdonság új értéke. Az értéknek egy
BOOLEAN
,STRING
,INTEGER
vagyDECIMAL
literálnak kell lennie.
Példák
-- 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
UNSET TBLPROPERTIES
Eltávolít egy vagy több táblatulajdonságt egy táblából vagy nézetből.
Syntax
UNSET TBLPROPERTIES [ IF EXISTS ] ( property_key [, ...] )
property_key
{ identifier [. ...] | string_literal }
Paraméterek
HA LÉTEZIK
Nem kötelező záradék, amely arra utasítja a Databricks SQL-t, hogy ne okozz hibát, ha valamelyik tulajdonságkulcs nem létezik.
property_key
Az eltávolítandó tulajdonságkulcs. A kulcs egy vagy több , ponttal vagy sztringkonstanssal elválasztott azonosítóból állhat.
A tulajdonságkulcsok megkülönböztetik a kis- és nagybetűket. Ha
property_key
nem létezik, és a hiba akkor jelentkezik, haIF EXISTS
nincs megadva.
Példák
-- 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
BEÁLLÍTÁSOK
Egy vagy több táblázatbeállítás beállítása egy új táblában.
A táblabeállítások célja, hogy a tárolási tulajdonságokat átadják a mögöttes tárolónak, például SERDE-tulajdonságokat a Hive-nek.
A Delta Lake-táblák táblázatbeállításainak megadása szintén táblatulajdonságokként jelenik meg.
Syntax
OPTIONS ( { property_key [ = ] property_val } [, ...] )
property_key
{ identifier [. ...] | string_literal }
Paraméterek
property_key
A tulajdonságkulcs. A kulcs egy vagy több , ponttal vagy sztringkonstanssal elválasztott azonosítóból állhat.
A tulajdonságkulcsnak egyedinek kell lennie, és megkülönbözteti a kis- és nagybetűket.
property_val
A tulajdonság értéke. Az értéknek egy
BOOLEAN
,STRING
,INTEGER
vagyDECIMAL
literálnak kell lennie.A Databricks SQL-ben és a Databricks Runtime 13.3 LTS-ben és a fenti
property_val
verziókban állandó kifejezés lehet.
Példák
-- 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
Fenntartott táblatulajdonságkulcsok
Az Azure Databricks lefoglal néhány tulajdonságkulcsot a saját használatára, és hibát jelez, ha megpróbálja használni őket:
external
Külső tábla létrehozása a CREATE EXTERNAL TABLE használatával.
location
A tábla helyének beállításához használja az
LOCATION
ALTER TABLE és a CREATE TABLE záradékait.owner
Az ALTER TABLE és az
[SET] OWNER TO
ALTER VIEW záradékával ruházhatja át egy tábla vagy nézet tulajdonjogát. A SET választható kulcsszóként engedélyezve van a Databricks SQL-ben.provider
Tábla adatforrásának beállítása a
USING
CREATE TABLE záradékával
Az azonosítótól option
kezdve nem szabad tulajdonságkulcsokat használnia.
Ez az előtag-azonosító a SHOW TBLPROPERTIES( TBLPROPERTIES) nézetben lesz szűrve.
Az option
előtag táblabeállítások megjelenítésére is használható.
Gyakori TBLPROPERTIES és OPTIONS billentyűk
A Delta Lake gyakran használja a következő beállításokat:
delta.appendOnly
: Állítsa be a letiltástrue
UPDATE
ésDELETE
a műveletek beállítását.delta.dataSkippingNumIndexedCols
: Állítsa be azoknak a kezdőoszlopoknak a számát, amelyekhez statisztikákat szeretne gyűjteni és figyelembe venni.delta.deletedFileRetentionDuration
: Olyan időközre van állítva, amely'interval 7 days'
szabályozza, hogy mikorVACUUM
törölhetők a fájlok.delta.logRetentionDuration
: Állítson be egy időközt, például'interval 60 days'
annak szabályozására, hogy mennyi idő előzményt őriznek meg az időutazási lekérdezések.