Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
Az Azure Databricks egy SQLAlchemydialektust biztosít (az SQLAlchemy a különböző típusú adatbázis API-implementációkkal és adatbázisokkal való kommunikációhoz) az Azure Databricks számára. Az SQLAlchemy egy Python SQL-eszközkészlet és objektumrelációs mapper (ORM). Az SQLAlchemy jól ismert, nagyvállalati szintű adatmegőrzési mintákat biztosít, amelyek hatékony és nagy teljesítményű adatbázis-hozzáféréshez lettek kialakítva, egyszerű és Python-tartománynyelvhez igazítva. Lásd: Funkciók és filozófia.
Az Azure Databricks SQLAlchemy-dialektusát telepíteni kell az SQLAlchemy funkcióinak az Azure Databricksben való használatához. Ez a cikk az Azure Databricks 1.0-s és 2.0-s verziójának SQLAlchemy dialektusát ismerteti, amely a Python 4.0.0-s vagy újabb verzióján alapuló Databricks SQL Connectoron alapul.
Követelmények
- Python >=3.8 és <=3.11 rendszerű fejlesztőgép.
- A Databricks azt javasolja, hogy pythonos virtuális környezeteket használjon, például a Python részét képező venv által biztosítottakat. A virtuális környezetek segítségével biztosítható, hogy a Python és a Databricks SQL Connector for Python megfelelő verzióit használja együtt. A virtuális környezetek beállítása és használata a jelen cikk hatókörén kívül esik. További információ: Virtuális környezetek létrehozása.
- Meglévő fürt vagy SQL Warehouse.
Első lépések
Telepítse a databricks-sqlalchemyt az SQLAlchemy v1-hez a
pip install databricks-sqlalchemy~=1.0használatával vagy az SQLAlchemy v2-höz apip install databricks-sqlalchemyhasználatával. A verzióval kapcsolatos információkért lásd a databricks-sqlalchemy kiadási előzményeit.Gyűjtse össze a használni kívánt fürtre vagy SQL Warehouse-ra vonatkozó alábbi információkat:
Fürt
- A fürt kiszolgálói állomásneve. Ezt a szerver hosztnév értéket a fürtje Speciális beállítások JDBC/ODBC lapján találja meg.
- A fürt HTTP-elérési útja. A HTTP-elérési út értéket a fürt JDBC/ODBC > Speciális beállítások fülén találja meg.
SQL Warehouse
- Az SQL Warehouse kiszolgálói állomásneve. Ezt az SQL-raktár Kapcsolat részletei lapján található Kiszolgáló állomásnév értékéből szerezheti be.
- Az SQL Warehouse HTTP-elérési útja. Ezt az SQL Warehouse Kapcsolat részletei lapján található HTTP-elérési út értékből szerezheti be.
Hitelesítés
Az Azure Databricks SQLAlchemy dialektusa támogatja az Azure Databricks személyes hozzáférési jogkivonat-hitelesítését.
Azure Databricks személyes hozzáférési jogkivonat létrehozásához kövesse a munkaterület-felhasználók személyes hozzáférési jogkivonatainak létrehozása című szakasz lépéseit.
Az SQLAlchemy dialektus hitelesítéséhez használja az alábbi kódrészletet. Ez a kódrészlet feltételezi, hogy a következő környezeti változókat állította be:
-
DATABRICKS_TOKENállítsa be az Azure Databricks személyes hozzáférési tokenjét. - Állítsa be a
DATABRICKS_SERVER_HOSTNAMEkomponenst a szerver hosztnév értékére a fürt vagy az SQL tárház számára. -
DATABRICKS_HTTP_PATH, állítsa be a HTTP-elérési út értékét a klaszteréhez vagy az SQL raktárához. - A
DATABRICKS_CATALOG-t állítsa be a célkatalógusra a Unity Catalogban. -
DATABRICKS_SCHEMA, állítsa be a célséma (más néven adatbázis) a Unity Catalogban.
A környezeti változók beállításához tekintse meg az operációs rendszer dokumentációját.
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}"
)
# ...
Az előző engine változóval csatlakozhat a megadott katalógushoz és sémához az Azure Databricks számítási erőforrásán keresztül.
SQLAlchemy v1
Kapcsolati példákért tekintse meg ezt a example.py
SQLAlchemy v2
A kapcsolati példákért tekintse meg a következő szakaszt és a GitHub sqlalchemy_example.py fájlt.
DBAPI-referencia
- databricks-sqlalchemy v1 GitHub-tárház
- SQLAlchemy v1 README.md
- databricks-sqlalchemy v2 GitHub-tárház
- SQLAlchemy v2 README.md