Čtení tabulek Delta Lake (Synapse nebo externí umístění)
Důležitý
Azure HDInsight v AKS byl vyřazen 31. ledna 2025. Zjistěte více pomocí tohoto oznámení.
Abyste se vyhnuli náhlému ukončení úloh, musíte migrovat úlohy do Microsoft Fabric nebo ekvivalentního produktu Azure.
Důležitý
Tato funkce je aktuálně ve verzi Preview. Doplňkové podmínky použití pro zkušební verze Microsoft Azure zahrnují další právní podmínky, které se vztahují na funkce Azure, jež jsou v beta verzi, ve verzi Preview nebo jinak zatím nejsou k dispozici v rámci obecné dostupnosti. Informace o této konkrétní verzi Preview zjistíte v Azure HDInsight na AKS Preview. Pokud máte dotazy nebo návrhy funkcí, odešlete prosím žádost o AskHDInsight s podrobnostmi a sledujte nás o dalších aktualizacích komunity Azure HDInsight.
Tento článek obsahuje přehled, jak číst tabulku Delta Lake bez přístupu k metastoru (Synapse nebo jiné metastory bez veřejného přístupu).
U tabulek můžete provádět následující operace pomocí Trino s HDInsight v AKS.
- VYMAZAT
- AKTUALIZACE
- VLOŽIT
- SLOUČIT
Požadavky
Vytvoření schémat a tabulek Delta Lake
Tato část ukazuje, jak vytvořit tabulku Delta na předdefinovaném umístění, pokud již máte nakonfigurovaný katalog Delta Lake.
Projděte si účet úložiště pomocí
Storage browser
na webu Azure Portal, kde je základní adresář vaší tabulky. Pokud tato tabulka pochází ze služby Synapse, pravděpodobně se nachází pod cestousynapse/workspaces/.../warehouse/
, bude pojmenována dle vaší tabulky a bude obsahovat adresář_delta_log
. VyberteCopy URL
ze tří tečk umístěných vedle složky.Tuto cestu HTTP je potřeba převést na cestu ABFS (Azure Blob File System):
Cesta úložiště HTTP je strukturovaná takto:
https://{{AZURE_STORAGE_ACCOUNT}}.blob.core.windows.net/{{AZURE_STORAGE_CONTAINER}}/synapse/workspaces/my_workspace/warehouse/{{TABLE_NAME}}/
Cesty ABFS musí vypadat takto:
abfss://{{AZURE_STORAGE_CONTAINER}}@{{AZURE_STORAGE_ACCOUNT}}.dfs.core.windows.net/synapse/workspaces/my_workspace/warehouse/{{TABLE_NAME}}/
Příklad:
abfss://container@storageaccount.dfs.core.windows.net/synapse/workspaces/workspace_name/warehouse/table_name/
Vytvořte schéma Delta Lake v Trinu.
CREATE SCHEMA delta.default;
Případně můžete také vytvořit schéma v konkrétním účtu úložiště:
CREATE SCHEMA delta.default WITH (location = 'abfss://container@storageaccount.dfs.core.windows.net/trino/');
Pomocí
register_table
postupu vytvořte tabulku.CALL delta.system.register_table(schema_name => 'default', table_name => 'table_name', table_location => 'abfss://container@storageaccount.dfs.core.windows.net/synapse/workspaces/workspace_name/warehouse/table_name/');
Zadejte dotaz na tabulku a ověřte ji.
SELECT * FROM delta.default.table_name
Zápis tabulek Delta Lake ve Službě Synapse Spark
Pomocí format("delta")
uložte datový rámec jako tabulku Delta, a pak můžete použít cestu, kde jste uložili datový rámec ve formátu Delta, k zaregistrování tabulky v Trino.
my_dataframe.write.format("delta").save("abfss://container@storageaccount.dfs.core.windows.net/synapse/workspaces/workspace_name/warehouse/table_name")