Összevont lekérdezések futtatása az Amazon Redshiften
Fontos
Ez a funkció a nyilvános előzetes verzióban érhető el.
Ez a cikk azt ismerteti, hogyan állíthatja be a Lakehouse Federationt összevont lekérdezések futtatására az Azure Databricks által nem felügyelt Amazon Redshift-adatok lekérdezéseinek futtatásakor. További információ a Lakehouse Federation-ről: What is Lakehouse Federation.
Ha az Amazon Redshift-adatbázisban futó lekérdezésekhez a Lakehouse Federation használatával szeretne csatlakozni, az alábbiakat kell létrehoznia az Azure Databricks Unity Catalog metaadattárában:
- Kapcsolat az Amazon Redshift-adatbázis futtatási lekérdezéseihez.
- Egy külföldi katalógus , amely tükrözi a Futtatási lekérdezéseket az Amazon Redshift-adatbázisban a Unity Catalogban, így a Unity Catalog lekérdezésszintaxisával és adatszabályozási eszközeivel kezelheti az Azure Databricks felhasználói hozzáférését az adatbázishoz.
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.
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 Redshift kapcsolattípusát.
Adja meg a Redshift-példány alábbi kapcsolati tulajdonságait.
- Gazdagép: Például:
redshift-demo.us-west-2.redshift.amazonaws.com
- Port: Például:
5439
- Felhasználó: Például:
redshift_user
- Jelszó: Például:
password123
- Gazdagép: Például:
(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.
CREATE CONNECTION <connection-name> TYPE redshift
OPTIONS (
host '<hostname>',
port '<port>',
user '<user>',
password '<password>'
);
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 redshift
OPTIONS (
host '<hostname>',
port '<port>',
user secret ('<secret-scope>','<secret-key-user>'),
password 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ülső katalógus egy külső adatrendszer adatbázisát tükrözi, így az Azure Databricks és a Unity Catalog használatával lekérdezheti és kezelheti az adatbázisban lévő adatokhoz való hozzáférést. Idegen katalógus létrehozásához a már definiált adatforráshoz 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 az 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 egy SQL-lekérdezésszerkesztőben. A szögletes zárójelek nem kötelezőek. Cserélje le a helyőrző értékeket:
<catalog-name>
: A katalógus neve az Azure Databricksben.<connection-name>
: Az adatforrást, elérési utat és hozzáférési hitelesítő adatokat meghatározó kapcsolati objektum .<database-name>
: Annak az adatbázisnak a neve, amelyet katalógusként szeretne tükrözni az Azure Databricksben.
CREATE FOREIGN CATALOG [IF NOT EXISTS] <catalog-name> USING CONNECTION <connection-name>
OPTIONS (database '<database-name>');
Támogatott leküldéses leküldések
A következő leküldéses leküldések támogatottak:
- Szűrők
- Leképezések
- Korlát
- Összekapcsolások
- Összesítések (Átlag, Darabszám, Max, Min, StddevPop, StddevSamp, Sum, VarianceSamp)
- Függvények (Sztringfüggvények és egyéb egyéb függvények, például Alias, Cast, SortOrder)
- Rendezés
A következő leküldéses leküldések nem támogatottak:
- Windows-függvények
Adattípus-leképezések
Amikor a Redshiftből a Sparkba olvas, az adattípusok az alábbiak szerint lesznek megfeleltetve:
Redshift típus | Spark-típus |
---|---|
Numerikus | Decimális típus |
int2, int4 | Egész számtípus |
int8, oid, xid | LongType |
float4 | FloatType |
dupla pontosság, float8, pénz | DoubleType |
bpchar, char, character varying, name, super, text, tid, varchar | StringType |
bájt, geometria, varbyte | BinaryType |
bit, bool | Logikai típus |
dátum: | DateType |
tabstime, time, time with time zone, timetz, timetz, time zone, timetamp with time zone, timestamp, timestamptz, timetamp without time zone* | TimestampType/TimestampNTZType |
*Amikor a Redshiftből olvas, a Redshift Timestamp
a Sparkra TimestampType
van leképezve, ha infer_timestamp_ntz_type = false
(alapértelmezett). Redshift Timestamp
van megfeleltetve, ha TimestampNTZType
infer_timestamp_ntz_type = true
.
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: