Vytvoření a změna rozdílových externích tabulek ve službě Azure Storage
Platí pro: ✅Microsoft Fabric✅Azure Data Explorer
Příkazy v tomto článku lze použít k vytvoření nebo změně rozdílové externí tabulky v databázi, ze které se příkaz spustí. Rozdílová externí tabulka odkazuje na data tabulky Delta Lake umístěná ve službě Azure Blob Storage, Azure Data Lake Store Gen1 nebo Azure Data Lake Store Gen2.
Poznámka:
Pokud tabulka existuje, .create
příkaz selže s chybou. Použijte .create-or-alter
nebo .alter
upravte existující tabulky.
Pokud chcete zrychlit dotazy nad externími tabulkami delta, přečtěte si téma Zásady akcelerace dotazů.
Oprávnění
Pokud chcete .create
vyžadovat aspoň oprávnění uživatele databáze a vyžaduje .alter
alespoň oprávnění správce tabulky.
K .create-or-alter
externí tabulce používající ověřování spravované identity se vyžadují oprávnění AllDatabasesAdmin .
Syntaxe
(.create
| | .alter
.create-or-alter
) external
table
TableName [(
Schema)
] kind
delta
=
(
StorageConnectionString )
[with
(
Vlastnost [,
...]])
Přečtěte si další informace o konvencích syntaxe.
Parametry
Název | Type | Požadováno | Popis |
---|---|---|---|
TableName | string |
✔️ | Název externí tabulky, který dodržuje pravidla názvů entit. Externí tabulka nemůže mít stejný název jako běžná tabulka ve stejné databázi. |
Schéma | string |
Volitelné schéma externích dat je čárkami oddělený seznam jednoho nebo více názvů sloupců a datových typů, kde každá položka má formát: ColumnName : ColumnType. Pokud není zadaný, bude automaticky odvozen z rozdílového protokolu na základě nejnovější verze tabulky Delta. |
|
StorageConnectionString | string |
✔️ | cesta kořenové složky tabulky delta, včetně přihlašovacích údajů. Může odkazovat na kontejner objektů blob služby Azure Blob Storage, systém souborů Azure Data Lake Gen2 nebo kontejner Azure Data Lake Gen1. Typ úložiště externí tabulky je určen zadaným připojovací řetězec. Viz připojovací řetězec úložiště. |
Vlastnost | string |
Dvojice vlastností klíč-hodnota ve formátu PropertyName = PropertyValue. Viz volitelné vlastnosti. |
Poznámka:
- Pokud je k dispozici vlastní schéma, nebudou existující sloupce nebo sloupce s nekompatibilními typy vyplněny hodnotami null.
- Informace o oddílech se automaticky odvozují z rozdílového protokolu. Sloupce oddílů se přidají jako virtuální sloupce do schématu tabulky. Další informace najdete v tématu Virtuální sloupce.
- Formát cesty se automaticky odvodí z informací o dělení. Další informace naleznete v tématu Formát cesty
Tip
Pro vlastní schéma můžete použít modul plug-in infer_storage_schema k odvození schématu na základě obsahu externího souboru.
Ověřování a autorizace
Metoda ověřování pro přístup k externí tabulce je založená na připojovací řetězec poskytnuté během jejího vytváření a oprávnění potřebná pro přístup k tabulce se liší v závislosti na metodě ověřování.
Podporované metody ověřování jsou stejné jako podporované externími tabulkami Azure Storage.
Volitelné vlastnosti
Vlastnost | Type | Popis |
---|---|---|
folder |
string |
Složka tabulky |
docString |
string |
Řetězec dokumentující tabulku |
namePrefix |
string |
Pokud je tato sada nastavená, označuje předponu souborů. Při operacích zápisu budou všechny soubory zapsány s touto předponou. Při operacích čtení se čtou pouze soubory s touto předponou. |
fileExtension |
string |
Pokud je tato sada nastavená, označuje přípony souborů. Při zápisu budou názvy souborů končit touto příponou. Při čtení se budou číst pouze soubory s touto příponou souboru. |
encoding |
string |
Určuje, jak je text kódován: UTF8NoBOM (výchozí) nebo UTF8BOM . |
dryRun |
bool |
Pokud je tato sada nastavená, definice externí tabulky se neuchová. Tato možnost je užitečná pro ověřování definice externí tabulky, zejména ve spojení s parametrem nebo parametrem filesPreview sampleUris . |
Poznámka:
K externí rozdílové tabulce se přistupuje během vytváření, aby bylo možné odvodit informace o dělení a volitelně schéma. Ujistěte se, že je definice tabulky platná a že je úložiště přístupné.
Příklady
Vytvoření nebo změna rozdílové externí tabulky s odvozeným schématem
V následující externí tabulce se schéma automaticky odvodí z nejnovější verze tabulky Delta.
.create-or-alter external table ExternalTable
kind=delta
(
h@'https://storageaccount.blob.core.windows.net/container1;secretKey'
)
Vytvoření rozdílové externí tabulky s vlastním schématem
V následující externí tabulce je zadáno vlastní schéma a přepíše schéma tabulky delta. Pokud později potřebujete nahradit vlastní schéma schématem na základě nejnovější verze tabulky Delta, spusťte .alter
| .create-or-alter
příkaz bez zadání schématu, jako v předchozím příkladu.
.create external table ExternalTable (Timestamp:datetime, x:long, s:string)
kind=delta
(
h@'abfss://filesystem@storageaccount.dfs.core.windows.net/path;secretKey'
)
Omezení
- Časová cesta není podporována. Používá se pouze nejnovější verze tabulky Delta.