Összevont lekérdezések futtatása egy másik Databricks-munkaterületen
Ez a cikk bemutatja, hogyan állíthatja be a Lakehouse Federationt, hogy összevont lekérdezéseket futtasson a Databricks-adatokon egy másik Databricks-munkaterületen. Ha többet szeretne megtudni a Lakehouse Federation-ről, olvassa el a Mi az a Lakehouse Federation?
Fontos
A Databricks-to-Databricks Lakehouse Federation egy jó eszköz arra, hogy lekérdezéseket futtasson egy másik Databricks-munkaterület Hive- vagy AWS Glue-metaadattára által kezelt adatokon. A legtöbb más forgatókönyv esetében a többi Azure Databricks-munkafolyamat hatékonyabb:
- Ha az Azure Databricks-munkaterületek ugyanazt a Unity Catalog-metaadattárat használják, a munkaterületek közötti lekérdezéseket szabványos Unity Catalog-lekérdezésekkel és adatszabályozási eszközökkel kezelheti.
- Ha írásvédett hozzáférést szeretne az adatokhoz egy másik Unity Catalog-metaadattárhoz csatolt Databricks-munkaterületen, akár az Azure Databricks-fiókjában, akár nem, a Delta Sharing jobb választás.
Ezen forgatókönyvek egyikében sincs szükség a Lakehouse Federation beállítására.
Ha egy Másik munkaterületen lévő Databricks-katalógushoz szeretne csatlakozni a Lakehouse Federation használatával, az alábbiakat kell létrehoznia az Azure Databricks Unity Catalog metaadattárában:
- Fürt vagy SQL-raktár egy Databricks-munkaterületen.
- Kapcsolat a fürthöz vagy az SQL Warehouse-hoz.
- Egy idegen katalógus a Unity Catalog metaadattárában, amely a fürtből vagy az SQL Warehouse-ból elérhető többi Databricks-katalógust tükrözi, így a Unity Catalog lekérdezési szintaxisával és adatszabályozási eszközeivel kezelheti az Azure Databricks felhasználói hozzáférését az adatokhoz.
Mielőtt elkezdené
Munkaterületre vonatkozó követelmények:
- A Unity Cataloghoz engedélyezett munkaterület.
Számítási követelmények:
- Hálózati kapcsolat a Databricks Runtime-fürtből vagy az SQL Warehouse-ból a céladatbázis-rendszerekhez. Lásd a Lakehouse Federation hálózatkezelési ajánlásait.
- Az Azure Databricks-fürtöknek a Databricks Runtime 13.3 LTS vagy újabb verzióját kell használniuk, valamint megosztott vagy egyfelhasználós hozzáférési módot kell használniuk.
- Az SQL-raktáraknak Pro vagy Kiszolgáló nélkülinek kell lenniük, és 2023.40-et vagy újabb verziót kell használniuk.
Szükséges engedélyek:
- Kapcsolat létrehozásához metaadattár-rendszergazdának vagy felhasználónak kell lennie a
CREATE CONNECTION
munkaterülethez csatolt Unity Catalog metaadattára jogosultsággal. - Külföldi katalógus létrehozásához rendelkeznie kell a
CREATE CATALOG
metaadattár engedélyével, és vagy a kapcsolat tulajdonosának kell lennie, vagy jogosultsággal kell rendelkeznieCREATE FOREIGN CATALOG
a kapcsolaton.
Az alábbi tevékenységalapú szakaszokban további engedélykövetelmények vannak megadva.
A kapcsolat konfigurálásához aktív fürtnek vagy SQL Warehouse-nak is rendelkeznie kell az Azure Databricks-munkaterületen.
Kapcsolat létrehozása
A kapcsolat megadja a külső adatbázisrendszer eléréséhez szükséges elérési utat és hitelesítő adatokat. Kapcsolat létrehozásához használhatja a Catalog Explorert vagy az CREATE CONNECTION
SQL-parancsot egy Azure Databricks-jegyzetfüzetben vagy a Databricks SQL-lekérdezésszerkesztőben.
Szükséges engedélyek: Metaadattár-rendszergazda vagy jogosultsággal CREATE CONNECTION
rendelkező felhasználó.
Katalóguskezelő
Az Azure Databricks-munkaterületen kattintson a Katalógus elemre .
A Katalógus panel tetején kattintson a Hozzáadás ikonra, és válassza a Kapcsolat hozzáadása lehetőséget a menüből.
Másik lehetőségként a Gyorselérési lapon kattintson a Külső adatok >gombra, lépjen a Kapcsolatok lapra, és kattintson a Kapcsolat létrehozása parancsra.
Adjon meg egy felhasználóbarát kapcsolatnevet.
Válassza ki a Databricks kapcsolattípusát.
Adja meg a többi Databricks-példány alábbi kapcsolati tulajdonságait.
- Gazdagép: Munkaterület-példány neve. A munkaterület-példány nevének lekéréséről további információt a munkaterület-objektumok azonosítóinak lekérése című témakörben talál.
- HTTP-elérési út: Az SQL Warehouse HTTP-elérési útja. Az elérési út lekéréséhez nyissa meg az SQL > SQL Warehouses oldalt az oldalsávon, jelölje ki az SQL Warehouse-t, lépjen a Kapcsolat részletei lapra, és másolja ki a HTTP-elérési út értékét.
- Személyes hozzáférési jogkivonat: Egy Azure Databricks személyes hozzáférési jogkivonat, amely lehetővé teszi a cél-munkaterülethez való hozzáférést. A jogkivonat beszerzéséről az Azure Databricks személyes hozzáférési jogkivonat-hitelesítésében olvashat. Kapcsolatok esetén a Databricks személyes hozzáférési jogkivonat használatát javasolja egy szolgáltatásnévhez.
(Nem kötelező) Kattintson a Kapcsolat tesztelése elemre annak ellenőrzéséhez, hogy működik-e.
(Nem kötelező) Megjegyzés hozzáadása.
Kattintson a Létrehozás gombra.
SQL
Futtassa a következő parancsot egy jegyzetfüzetben vagy a Databricks SQL-lekérdezésszerkesztőben, és cserélje le a következőket:
<connection-name>
: A létrehozott kapcsolat felhasználóbarát neve.<workspace-instance>
: A cél-munkaterület példánya. A munkaterület-példány nevének lekéréséről további információt a munkaterület-objektumok azonosítóinak lekérése című témakörben talál.<sql-warehouse-path>
: Az SQL Warehouse HTTP-elérési útja. Az elérési út lekéréséhez nyissa meg az SQL > SQL Warehouses oldalt az oldalsávon, jelölje ki az SQL Warehouse-t, lépjen a Kapcsolat részletei lapra, és másolja ki a HTTP-elérési út értékét.<personal-access-token>
: Egy Azure Databricks személyes hozzáférési jogkivonat, amely lehetővé teszi a cél munkaterülethez való hozzáférést. A jogkivonat beszerzéséről az Azure Databricks személyes hozzáférési jogkivonat-hitelesítésében olvashat. Kapcsolatok esetén a Databricks azt javasolja, hogy használja a szolgáltatásnév személyes hozzáférési jogkivonatát.
CREATE CONNECTION <connection-name> TYPE databricks
OPTIONS (
host '<workspace-instance>',
httpPath '<sql-warehouse-path>',
personalAccessToken '<personal-access-token>'
);
Javasoljuk, hogy az Azure Databricks titkos kulcsait használja egyszerű szöveges sztringek helyett olyan bizalmas értékekhez, mint a hitelesítő adatok. Példa:
CREATE CONNECTION <connection-name> TYPE databricks
OPTIONS (
host '<workspace-instance>',
httpPath '<sql-warehouse-path>',
personalAccessToken secret ('<secret-scope>','<secret-key-password>')
)
A titkos kódok beállításáról további információt a Titkos kódok kezelése című témakörben talál.
Idegen katalógus létrehozása
A külföldi katalógusok a külső Databricks-munkaterületen lévő katalógust tükrözik, így a külső Databricks-katalógusban lévő adatokhoz való hozzáférést úgy kérdezheti le és kezelheti, mintha az a saját munkakörnyezetében lévő katalógus lenne. Külső katalógus létrehozásához a már definiált külső Databricks-munkaterülethez való kapcsolatot kell használnia.
Idegen katalógus létrehozásához használhatja a Catalog Explorert vagy az CREATE FOREIGN CATALOG
SQL-parancsot egy Azure Databricks-jegyzetfüzetben vagy a Databricks SQL-lekérdezésszerkesztőben.
Szükséges engedélyek: CREATE CATALOG
a metaadattár engedélye, illetve a kapcsolat tulajdonjoga vagy a CREATE FOREIGN CATALOG
kapcsolat jogosultsága.
Katalóguskezelő
Az Azure Databricks-munkaterületen kattintson a Katalógus gombra a Catalog Explorer megnyitásához.
A Katalógus panel tetején kattintson a Hozzáadás ikonra, és válassza a Katalógus hozzáadása lehetőséget a menüből.
Másik lehetőségként a Gyorselérési lapon kattintson a Katalógusok gombra, majd a Katalógus létrehozása gombra.
Kövesse az utasításokat a külföldi katalógusok létrehozásakor a Katalógusok létrehozása területen.
SQL
Futtassa a következő SQL-parancsot egy jegyzetfüzetben vagy a Databricks SQL-szerkesztőben. A szögletes zárójelek nem kötelezőek. Cserélje le a helyőrző értékeket:
<catalog-name>
: A létrehozott külföldi katalógus neve.<connection-name>
: Az adatforrást, elérési utat és hozzáférési hitelesítő adatokat meghatározó kapcsolati objektum .<external-catalog-name>
: A tükrözött külső Databricks-munkaterület katalógusának neve.
CREATE FOREIGN CATALOG [IF NOT EXISTS] <catalog-name> USING CONNECTION <connection-name>
OPTIONS (catalog '<external-catalog-name>');
Támogatott leküldéses leküldések
A következő leküldéses leküldések támogatottak az összes számításhoz:
- Szűrők
- Leképezések
- Korlát
- Függvények: csak a szűrőkifejezések támogatottak (sztringfüggvények, matematikai függvények, adatok, idő- és időbélyegfüggvények, valamint egyéb egyéb függvények, például Alias, Cast, SortOrder).
A Databricks Runtime 13.3 LTS és újabb verziója és az SQL Warehouse számítási verziója a következő leküldéses leküldéseket támogatja:
- Összesítések
- A következő logikai operátorok: =, <, = <, >, >=, <=>
- A következő matematikai függvények (nem támogatottak, ha az ANSI le van tiltva): +, -, *, %, /
- A következő egyéb operátorok: ^, |, ~
- Rendezés, ha korláttal használjuk
A következő leküldéses leküldések nem támogatottak:
- Összekapcsolások
- Windows-függvények