Připojení k datům pomocí Sparku

Dokončeno

Nejprve si probereme, co poznámkové bloky Fabric nabízejí, a další možnosti příjmu dat. Na rozdíl od ručních nahrávání poskytují poznámkové bloky automatizaci a zajišťují hladký a systematický přístup. Toky dat nabízejí uživatelské rozhraní; nejsou ale tak výkonné u velkých sémantických modelů. Kanály umožňují orchestraci kopírování dat a můžou vyžadovat toky dat nebo poznámkové bloky pro transformace. Poznámkové bloky proto poskytují komplexní automatizované řešení pro příjem dat a transformaci.

Prozkoumání poznámkových bloků Prostředků infrastruktury

Poznámkové bloky Prostředků infrastruktury je možné snadno vytvářet v mnoha částech služby Fabric. Poznámkové bloky jsou uložené v pracovním prostoru, ze kterého jsou vytvořené, což nemusí být stejný pracovní prostor, ze kterého je lakehouse.

Podobně jako jiné poznámkové bloky umožňují poznámkové bloky Infrastruktury mít více buněk kódu nebo Markdownu. Poznámkové bloky jsou vynikající pro počáteční testování, protože můžete vidět výstup kódu přímo v řádku s kódem a provádět rychlé změny. Můžete také spouštět jednotlivé buňky, ukotvit buňky nebo spouštět všechny buňky v poznámkovém bloku.

Snímek obrazovky poznámkového bloku Fabric s kódem a buňkami Markdownu

Poznámkové bloky Fabric ve výchozím nastavení používají modul Spark k povolení vícevláknových distribuovaných transakcí pro rychlé procesy. V závislosti na vašich potřebách můžete použít PySpark, Html, Spark (Scala), Spark SQL a SparkR (R).

Připojení k externím zdrojům

Teď, když znáte základy poznámkového bloku, se podíváme na připojení k externím zdrojům. Vynikající ethos v programování je udělat snadný způsob první. Poznámkové bloky Prostředků infrastruktury nabízejí intuitivní klávesové zkratky pro určité platformy. Pokud se ale vaše data nacházejí jinde, potřebujete jinou metodu. Tady je základní příklad připojení ke službě Azure Blob Storage pomocí Sparku:

# Azure Blob Storage access info
blob_account_name = "<your_blob_account_name>"
blob_container_name = "<your_blob_container_name>"
blob_relative_path = "<your_blob_relative_path>"

# Construct connection path
abfss_path = f'abfss://{blob_container_name}@{blob_account_name}.dfs.core.windows.net/{blob_relative_path}'

# Read data from Azure Blob Storage path into a DataFrame
blob_df = spark.read.parquet(abfss_path)

# Show the DataFrame
blob_df.show()

Předchozí kód PySpark definuje parametry a vytvoří cestu připojení, pak načte data do datového rámce a zobrazí data v datovém rámci.

Konfigurace alternativního ověřování

Předchozí příklad se připojí ke zdroji a načte data do datového rámce. V závislosti na vašem zdroji možná budete potřebovat jiný typ ověřování, například instanční objekt, OAuth atd. Tady je příklad připojení ke službě Azure SQL Database pomocí základního ověřování:

# Placeholders for Azure SQL Database connection info
server_name = "<your_server_name>.database.windows.net"
database_name = "<your_database_name>"
table_name = "<YourTableName>"
db_username = "<username>"
db_password = "<password>"

# Build the Azure SQL Database JDBC URL
jdbc_url = f"jdbc:sqlserver://{server_name}:1433;database={database_name};encrypt=true;trustServerCertificate=false;hostNameInCertificate=*.database.windows.net;loginTimeout=30;"

# Properties for the JDBC connection
properties = {
    "user": db_username, 
    "password": db_password,  
    "driver": "com.microsoft.sqlserver.jdbc.SQLServerDriver",
}

# Read entire table from Azure SQL Database using Basic authentication
sql_df = spark.read.jdbc(url=jdbc_url, table=table_name, properties=properties)

# Show the Azure SQL DataFrame
sql_df.show()

Úspěšně jsme se připojili k externím datům pomocí Sparku a v poznámkovém bloku Fabric ho načetli do datového rámce. Probereme, jak načíst data do souboru nebo tabulky.