Megosztás a következőn keresztül:


Ö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 rendelkeznie CREATE 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ő

  1. Az Azure Databricks-munkaterületen kattintson a Katalógus elemre Katalógus ikon .

  2. A Katalógus panel tetején kattintson aHozzáadás vagy plusz ikon 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.

  3. Adjon meg egy felhasználóbarát kapcsolatnevet.

  4. Válassza ki a Databricks kapcsolattípusát.

  5. 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.
  6. (Nem kötelező) Kattintson a Kapcsolat tesztelése elemre annak ellenőrzéséhez, hogy működik-e.

  7. (Nem kötelező) Megjegyzés hozzáadása.

  8. 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ő

  1. Az Azure Databricks-munkaterületen kattintson a Katalógus gombra Katalógus ikon a Catalog Explorer megnyitásához.

  2. A Katalógus panel tetején kattintson aHozzáadás vagy plusz ikon 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.

  3. 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:

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