Sdílet prostřednictvím


Použití SQLAlchemy s Azure Databricks

Azure Databricks poskytuje dialekt SQLAlchemy(systém SQLAlchemy používá ke komunikaci s různými typy implementací a databází databázového rozhraní API) pro Azure Databricks. SQLAlchemy je sada nástrojů SQL Python a mapovač relačních objektů (ORM). SQLAlchemy poskytuje sadu známých vzorů trvalosti na podnikové úrovni, které jsou navržené pro efektivní a vysoce výkonný přístup k databázi přizpůsobené jednoduchému a pythonickému doménovému jazyku. Viz funkce a filozofie.

Aby bylo možné používat funkce SQLAlchemy s Azure Databricks, musí být nainstalovaný dialekt SQLAlchemy pro Azure Databricks. Tento článek se zabývá dialektem SQLAlchemy pro Azure Databricks verze 1.0 a 2.0, který bude založený na konektoru SQL Databricks pro Python verze 4.0.0 nebo vyšší.

Požadavky

  • Vývojový počítač s Pythonem >=3.8 a <=3.11.
  • Databricks doporučuje používat virtuální prostředí Pythonu, například prostředí, která poskytuje venv , která jsou součástí Pythonu. Virtuální prostředí pomáhají zajistit, abyste společně používali správné verze Pythonu a konektor SQL Databricks pro Python. Nastavení a používání virtuálních prostředí je mimo rozsah tohoto článku. Další informace najdete v tématu Vytváření virtuálních prostředí.
  • Existující cluster nebo SQL Warehouse.

Začněte

  • Nainstalujte databricks-sqlalchemy pro SQLAlchemy v1 pomocí pip install databricks-sqlalchemy~=1.0 nebo sqlAlchemy v2 pomocí pip install databricks-sqlalchemy. Informace o verzi najdete v historii verzí databricks-sqlalchemy.

  • Shromážděte následující informace pro cluster nebo SQL Warehouse, který chcete použít:

    Cluster

    SQL Warehouse

    • Název hostitele serveru služby SQL Warehouse. Můžete to získat z hodnoty jména hostitele serveru na kartě Podrobnosti připojení pro váš SQL sklad.
    • Cesta HTTP služby SQL Warehouse. Můžete to získat z hodnoty HTTP cesta na kartě Podrobnosti o připojení pro váš SQL Warehouse.

Ověřování

Dialekt SQLAlchemy pro Azure Databricks podporuje ověřování osobního přístupového tokenu Azure Databricks.

Pokud chcete vytvořit osobní přístupový token Azure Databricks, postupujte podle kroků v osobních přístupových tokenech Azure Databricks pro uživatele pracovního prostoru.

K ověření dialektu SQLAlchemy použijte následující fragment kódu. Tento fragment kódu předpokládá, že jste nastavili následující proměnné prostředí:

  • DATABRICKS_TOKEN, nastavte na osobní přístupový token Azure Databricks.
  • DATABRICKS_SERVER_HOSTNAMEnastaveno na hodnotu jména serverového hostitele pro váš cluster nebo SQL Warehouse.
  • DATABRICKS_HTTP_PATH, nastavte hodnotu cestu HTTP pro váš cluster nebo SQL Warehouse.
  • DATABRICKS_CATALOG, nastavte cílový katalog v Katalogu Unity.
  • DATABRICKS_SCHEMA, nastavte na cílové schéma (označované také jako databáze) v katalogu Unity.

Pokud chcete nastavit proměnné prostředí, přečtěte si dokumentaci k vašemu operačnímu systému.

import os
from sqlalchemy import create_engine

access_token    = os.getenv("DATABRICKS_TOKEN")
server_hostname = os.getenv("DATABRICKS_SERVER_HOSTNAME")
http_path       = os.getenv("DATABRICKS_HTTP_PATH")
catalog         = os.getenv("DATABRICKS_CATALOG")
schema          = os.getenv("DATABRICKS_SCHEMA")

engine = create_engine(
  url = f"databricks://token:{access_token}@{server_hostname}?" +
        f"http_path={http_path}&catalog={catalog}&schema={schema}"
)

# ...

Pomocí předchozí engine proměnné se připojíte ke zadanému katalogu a schématu prostřednictvím výpočetního prostředku Azure Databricks.

SQLAlchemy v1

Příklady připojení najdete v tomto example.py

SQLAlchemy v2

Příklady připojení najdete v následující části a v souboru sqlalchemy_example.py na GitHubu.

Referenční informace k DBAPI

Další materiály