Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Azure Databricks menyediakan dialek SQLAlchemy (sistem yang digunakan SQLAlchemy untuk berkomunikasi dengan berbagai jenis implementasi dan API database) untuk Azure Databricks. SQLAlchemy adalah toolkit Python SQL dan Object Relational Mapper (ORM). SQLAlchemy menyediakan serangkaian pola persistensi tingkat perusahaan terkenal, yang dirancang untuk akses database yang efisien dan berkinerja tinggi, disesuaikan ke dalam bahasa domain sederhana dan Pythonic. Lihat Fitur dan Filsafat.
Dialek SQLAlchemy untuk Azure Databricks perlu diinstal untuk menggunakan fitur SQLAlchemy dengan Azure Databricks. Artikel ini membahas dialek SQLAlchemy untuk Azure Databricks versi 1.0 dan 2.0, yang akan didasarkan pada Databricks SQL Connector untuk Python versi 4.0.0 atau lebih tinggi.
Persyaratan
- Mesin pengembangan yang menjalankan Python >=3.8 dan <=3.11.
- Databricks merekomendasikan agar Anda menggunakan lingkungan virtual Python, seperti yang disediakan oleh venv yang disertakan dengan Python. Lingkungan virtual membantu memastikan bahwa Anda menggunakan versi Python yang benar dan Konektor SQL Databricks untuk Python bersama-sama. Menyiapkan dan menggunakan lingkungan virtual berada di luar cakupan artikel ini. Untuk informasi selengkapnya, lihat Membuat lingkungan virtual.
- Kluster atau Gudang SQL yang sudah ada.
Mulai Sekarang
Instal databricks-sqlalchemy untuk SQLAlchemy v1 menggunakan
pip install databricks-sqlalchemy~=1.0
atau untuk SQLAlchemy v2 menggunakanpip install databricks-sqlalchemy
. Untuk informasi versi, lihat riwayat rilis databricks-sqlalchemy.Kumpulkan informasi berikut ini untuk kluster atau gudang SQL yang ingin digunakan:
Kluster
- Nama host kluster server. Anda bisa mendapatkan nama ini dari nilai Nama Host Server di tab Opsi Tingkat Lanjut > JDBC/ODBC kluster Anda.
- Jalur HTTP kluster. Anda bisa mendapatkan jalur ini dari nilai Jalur HTTP di tab Opsi Tingkat Lanjut > JDBC/ODBC kluster Anda.
Gudang SQL
- Nama host server gudang SQL. Anda dapat memperoleh nama ini dari nilai Nama Host Server pada tab Detail Sambungan untuk gudang SQL Anda.
- Path HTTP untuk gudang data SQL. Anda dapat memperoleh jalur ini dari nilai Jalur HTTP pada tab Detail Sambungan gudang SQL Anda.
Autentikasi
Dialek SQLAlchemy untuk Azure Databricks mendukung autentikasi token akses pribadi Azure Databricks.
Untuk membuat token akses pribadi Azure Databricks, ikuti langkah-langkah dalam token akses pribadi Azure Databricks untuk pengguna ruang kerja.
Untuk mengautentikasi dialek SQLAlchemy, gunakan cuplikan kode berikut. Cuplikan ini mengasumsikan bahwa Anda telah mengatur variabel lingkungan berikut:
-
DATABRICKS_TOKEN
, atur ke token akses pribadi Azure Databricks. -
DATABRICKS_SERVER_HOSTNAME
diatur ke nilai Server Hostname untuk kluster atau gudang SQL Anda. -
DATABRICKS_HTTP_PATH
, tetapkan ke nilai Jalur HTTP untuk kluster atau gudang SQL Anda. -
DATABRICKS_CATALOG
, ditentukan untuk katalog target di Unity Catalog. -
DATABRICKS_SCHEMA
, atur ke skema target (juga dikenal sebagai database) di Unity Catalog.
Untuk mengatur variabel lingkungan, lihat dokumentasi sistem operasi Anda.
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}"
)
# ...
Anda menggunakan variabel engine
sebelumnya untuk terhubung dengan katalog dan skema yang Anda tentukan melalui sumber daya komputasi Azure Databricks Anda.
SQLAlchemy v1
Untuk contoh koneksi, lihat example.py ini
SQLAlchemy v2
Untuk contoh koneksi, lihat bagian berikut dan file sqlalchemy_example.py di GitHub.
Referensi DBAPI
- databricks-sqlalchemy v1 repositori GitHub
- SQLAlchemy v1 README.md
- repositori GitHub databricks-sqlalchemy v2
- SQLAlchemy v2 README.md
Sumber Daya Tambahan:
- Tutorial Terpadu SQLAlchemy 1
- Tutorial Terpadu SQLAlchemy 2