Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Megjegyzés:
Ez a cikk a Databricks Connect 15.4 LTS és újabb verziókra vonatkozik.
Ez a cikk bemutatja, hogyan hozhat létre projektet az IDE-ben, hogyan állíthatja be a virtuális környezetet, telepítheti a Pythonhoz készült Databricks Connectet, és hogyan futtathat kódot kiszolgáló nélküli számításon a Databricks-munkaterületen.
Ez az oktatóanyag a Python 3.12-t és a Databricks Connect 17.3 LTS-t használja. A Databricks Connect Python más verzióinak használatához kompatibilisnek kell lenniük. Tekintse meg a verziótámogatási mátrixot.
Követelmények
Az oktatóanyag elvégzéséhez a következő követelményeknek kell teljesülniük:
- A munkaterület, a helyi környezet és a számítás megfelel a Pythonhoz készült Databricks Connect követelményeinek. Lásd a Databricks Connect használati követelményeit.
- A kiszolgáló nélküli számítás engedélyezve van a munkaterületen. Lásd: Csatlakozás kiszolgáló nélküli számításhoz.
- A Python 3.12 telepítve van.
- Telepítve van egy IDE, például a Visual Studio Code.
- A Databricks parancssori felület telepítve van a helyi gépen. Lásd: A Databricks parancssori felület telepítése vagy frissítése.
1. lépés: A Databricks-hitelesítés konfigurálása
Ez az oktatóanyag a Databricks OAuth felhasználó–gép (U2M) hitelesítést és egy Databricks konfigurációs profilt használ a Databricks-munkaterületre való hitelesítéshez.
Az OAuth-jogkivonatok helyi felügyeletének elindításához használja a Databricks parancssori felületét az alábbi parancs futtatásával minden cél-munkaterületen. A következő parancsban cserélje le
<workspace-url>például a Databricks-munkaterületpéldány URL-címéthttps://dbc-a1b2345c-d6e7.cloud.databricks.com.databricks auth login --host <workspace-url>A Databricks parancssori felülete kéri, hogy mentse a Databricks konfigurációs profilként megadott adatokat. Nyomja meg a
Entergombot a javasolt profilnév elfogadásához, vagy írja be egy új vagy meglévő profil nevét. A Databricks a profilnév használatátDEFAULTjavasolja.A webböngészőben végezze el a képernyőn megjelenő utasításokat a Databricks-munkaterületre való bejelentkezéshez.
2. lépés: Új Python virtuális környezet létrehozása
Hozza létre a projektmappát, és nyissa meg az IDE-ben. A Visual Studio Code főmenüjében például kattintson a Fájl>megnyitása mappa>
Nyisson meg egy terminálablakot a projektmappa gyökérkönyvtárában. A Visual Studio Code főmenüjében például kattintson aTerminál>.
Hozzon létre egy virtuális környezetet a projekt mappájának gyökerénél,
venvés futtassa a következő parancsot a terminálban:python3.12 -m venv .venvA virtuális környezet aktiválása:
# Linux/Mac source .venv/bin/activate# Windows .venv\Scripts\activate
3. lépés: A Databricks Connect telepítése
Telepítse a Databricks Connectet. A Databricks Connect legújabb kiadású verzióival kapcsolatos információkért lásd a Databricks Connect kibocsátási megjegyzéseit.
pip install "databricks-connect==17.3.*"
4. lépés: Kód hozzáadása és futtatása
Új Python-fájl
main.pyhozzáadása a projekthezÍrja be a következő kódot a fájlba, cserélje le a helyőrzőt
<profile-name>a konfigurációs profil nevére az 1. lépésben, majd mentse a fájlt. Az alapértelmezett konfigurációs profilnév a következőDEFAULT: .from databricks.connect import DatabricksSession spark = DatabricksSession.builder.serverless().profile("<profile-name>").getOrCreate() df = spark.read.table("samples.nyctaxi.trips") df.show(5)Futtassa a kódot a következő paranccsal:
python3 main.pyA rendszer a tábla öt sorát adja vissza:
+--------------------+---------------------+-------------+-----------+---------+-----------+ |tpep_pickup_datetime|tpep_dropoff_datetime|trip_distance|fare_amount|pickup_zip|dropoff_zip| +--------------------+---------------------+-------------+-----------+----------+-----------+ | 2016-02-16 22:40:45| 2016-02-16 22:59:25| 5.35| 18.5| 10003| 11238| | 2016-02-05 16:06:44| 2016-02-05 16:26:03| 6.5| 21.5| 10282| 10001| | 2016-02-08 07:39:25| 2016-02-08 07:44:14| 0.9| 5.5| 10119| 10003| | 2016-02-29 22:25:33| 2016-02-29 22:38:09| 3.5| 13.5| 10001| 11222| | 2016-02-03 17:21:02| 2016-02-03 17:23:24| 0.3| 3.5| 10028| 10028| +--------------------+---------------------+-------------+-----------+----------+-----------+
Sikeresen futtatta az első lekérdezést a Databricks kiszolgáló nélküli számításán a Databricks Connect használatával az IDE-ből.
5. lépés: A kód éles üzemkészsé tétele
Éles forgatókönyvek esetén fontos, hogy ne használjon számítási specifikációkat a Spark-munkamenet-szerkesztőben. Ha például a kódot egy klasszikus fürtön helyezi üzembe: Standard vagy Dedicated az API-t használja a .serverless() Spark-munkamenet-szerkesztőben, a rendszer létrehoz egy új kiszolgáló nélküli Spark-munkamenetet a klasszikus fürt ügyfélként való használatával.
Ahhoz, hogy a kód rugalmas és éles használatra kész legyen, a Spark-munkamenet nem tartalmazhat paramétereket.
spark = DatabricksSession.builder.getOrCreate()
Ha azonban ezt a kódot a Databricksen futtatja, a Rendszer a Databricks-számítás alapértelmezett globális Spark-munkamenetét használja.
Ha engedélyezni szeretné a kiszolgáló nélküli számítást az IDE-ben, használja az ALAPÉRTELMEZETT konfigurációs profilt, amelyet akkor választ ki, DatabricksSession.builder ha nincsenek megadva paraméterek:
Hozzon létre egy konfigurációs profilt
DEFAULTaz 1. lépés utasításai alapján.A fájl megnyitásához
.databrickscfghasználjon szövegszerkesztőt, amely a következő helyen található:A
$HOMEfelhasználó kezdőlapja Unix, Linux vagy macOS rendszeren:~/.databrickscfgvagyAz Ön
%USERPROFILE%(a felhasználó kezdőlapja) mappája a Windowsban. Például macOS esetén:nano ~/.databrickscfg
Hozzáadás
serverless_compute_id = autoaDEFAULTprofilhoz:[DEFAULT] host = https://my-workspace.cloud.databricks.com auth_type = databricks-cli serverless_compute_id = autoMentse a módosításokat, és lépjen ki a szerkesztőből.
Módosítsa a kódot egy általános Spark-munkamenet használatára, és futtassa azt:
from databricks.connect import DatabricksSession spark = DatabricksSession.builder.getOrCreate() df = spark.read.table("samples.nyctaxi.trips") df.show(5)python3 main.py
Sikeresen futtatta az éles üzemre kész kódot a Databricks kiszolgáló nélküli számításán a Databricks Connect használatával az IDE-ből az ALAPÉRTELMEZETT konfigurációs profil használatával.
Jótanács
Környezeti változók használatával is beállíthatja a kapcsolatot egy adott Databricks-számításhoz:
- Kiszolgáló nélküli:
DATABRICKS_SERVERLESS_COMPUTE_ID=auto - Klasszikus:
DATABRICKS_CLUSTER_ID=<your_cluster_id>