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.
Ez a lap bemutatja, hogyan olvashatja el az Önnel megosztott adatokat a Databricks-to-Databricks Delta Sharing protokoll használatával, ahol a Databricks biztonságos kapcsolatot kezel az adatmegosztáshoz. A Delta Sharing nyílt megosztási protokolltól eltérően a Databricks-to-Databricks protokollhoz nem szükséges hitelesítő fájl (jogkivonatalapú biztonság).
A Databricks-to-Databricks megosztásához önnek, mint címzettnek meg kell felelnie az alábbi követelményeknek :
- Hozzáféréssel rendelkezik a Unity Cataloghoz engedélyezett Databricks-munkaterülethez.
- A szolgáltató a Databricks-to-Databricks Delta Sharing protokollt használja, nem a nyílt megosztási protokollt, amely hitelesítő adatokat tartalmazó fájlt biztosít.
Ha egyik követelmény sem teljesül, olvassa el a Delta Sharing nyílt megosztással megosztott adatok olvasása tulajdonosi jogkivonatokkal című témakört.
Hogyan elérhetővé tenni a megosztott adatokat a csapatom számára?
A Databricks-to-Databricks protokollal megosztott adatok és jegyzetfüzetek olvasásához felhasználónak kell lennie a Unity Cataloghoz engedélyezett Databricks-munkaterületen. A csapat egy tagja egyedi azonosítót ad az adatszolgáltatónak a Unity Catalog-metaadattárhoz, és az adatszolgáltató ezt az azonosítót használja a szervezettel való biztonságos megosztási kapcsolat létrehozásához. A megosztott adatok ezután olvasásra elérhetővé válnak a munkaterületén. Az adatszolgáltató által a megosztott táblákra, nézetekre, kötetekre és partíciókra végzett frissítések közel valós időben jelennek meg a munkaterületen.
Note
Előfordulhat, hogy az oszlopmódosítások, például a hozzáadás, az átnevezés vagy a törlés legfeljebb egy percig nem jelennek meg a Katalóguskezelőben. Hasonlóképpen, az új megosztások és a megosztások frissítései, beleértve az új táblák hozzáadását is, egy percig gyorsítótárazva lesznek, mielőtt azok megtekinthetők és lekérdezhetők lennének.
Note
A megosztott katalógusból származó information_schema táblák a Unity Katalógusban tárolt metaadatokat tükrözik. Ez a metaadatok csak akkor frissülnek a szolgáltatótól, ha közvetlenül kérdezi le a megosztott táblát, vagy futtat egy parancsot, például a DESCRIBE vagy REFRESH FOREIGNa . Addig information_schema is elavultnak tűnhet a szolgáltató adataihoz képest.
Az Önnel megosztott adatok olvasása:
- A csapat egyik felhasználója megkeresi a megosztást – az Önnel megosztott táblák, nézetek, kötetek és jegyzetfüzetek tárolóját –, és a megosztás használatával létrehoz egy katalógust– a Databricks Unity-katalógus összes adatának legfelső szintű tárolóját.
- A csapat egy felhasználója hozzáférést biztosít vagy tagad a katalógusban lévő objektumokhoz (sémák, táblázatok, nézetek és kötetek) a csapat tagjai számára.
- Elolvashatja azokat az adatokat a táblákban, nézetekben és kötetekben, amelyekhez hozzáférést kapott, mint bármely adategység a Databricksben, amelyhez írásvédett (
SELECTvagyREAD VOLUME) hozzáféréssel rendelkezik. - A megosztásban megtekintheti és klónozhat jegyzetfüzeteket, amennyiben rendelkezik a katalógusban szereplő
USE CATALOGjogosultsággal.
Engedélyek szükségesek
Ahhoz, hogy az összes szolgáltató és szolgáltatómegosztás adatait listázhassa és megtekinthesse, rendelkeznie kell a USE PROVIDER jogosultsággal. Más felhasználók csak a tulajdonában lévő szolgáltatókhoz és megosztásokhoz férhetnek hozzá.
Ha szolgáltatói megosztásból szeretne katalógust létrehozni, metaadattár-rendszergazdának kell lennie, olyan felhasználónak, aki rendelkezik a CREATE CATALOG Unity Catalog-metaadattárhoz tartozó jogosultságokkal és USE PROVIDER jogosultságokkal, vagy olyan felhasználónak, aki rendelkezik a CREATE CATALOG szolgáltatói objektum jogosultságával és tulajdonjogával.
A megosztásból létrehozott katalógus sémáihoz (adatbázisaihoz, tábláihoz, nézeteihez és köteteihez) csak olvasási hozzáférés biztosítása a Unity Catalog jellemző jogosultsági hierarchiáját követi. A megosztásból létrehozott katalógusban lévő jegyzetfüzetek megtekintéséhez a USE CATALOG katalógusban lévő jogosultság szükséges. A Delta Sharing katalógus sémáinak, tábláinak és köteteinek engedélyeinek kezelése. Lásd:
Szolgáltatók és megosztások megtekintése
Az adatszolgáltató által Önnel megosztott adatok olvasásához ismernie kell a szolgáltató nevét, és meg kell osztania a Unity Catalog metaadattárában tárolt objektumokat, miután a szolgáltató megosztotta Önnel az adatokat.
A szolgáltató objektum a Unity Catalog metaadattárát, a felhőplatformot és az adatokat Önnel megosztó szervezet régióját jelöli.
A megosztási objektum azokat a táblákat, köteteket és nézeteket jelöli, amelyeket a szolgáltató megosztott Önnel.
Az összes olyan szolgáltató megtekintése, aki megosztotta Önnel az adatokat
Az elérhető adatszolgáltatók listájának megtekintéséhez használhatja a Catalog Explorert, a Databricks Unity Catalog parancssori felületét vagy a SHOW PROVIDERS SQL-parancsot egy Azure Databricks-jegyzetfüzetben vagy a Databricks SQL-lekérdezésszerkesztőben.
Szükséges engedélyek: Önnek rendelkeznie kell a USE PROVIDER jogosultsággal. Más felhasználók csak a tulajdonában lévő szolgáltatókhoz és szolgáltatói megosztásokhoz férhetnek hozzá.
További részletekért lásd: Szolgáltatók megtekintése.
Szolgáltató adatainak megtekintése
A szolgáltató részleteinek megtekintéséhez használhatja a Catalog Explorert, a Databricks Unity Catalog parancssori felületét, vagy a DESCRIBE PROVIDER SQL-parancsot egy Azure Databricks-jegyzetfüzetben vagy a Databricks SQL-lekérdezésszerkesztőben.
Szükséges engedélyek: Metaadattár-rendszergazdának kell lennie, rendelkeznie kell a USE PROVIDER jogosultsággal, vagy rendelkeznie kell a szolgáltató objektumával.
További részletekért lásd: Szolgáltató adatainak megtekintése.
Megosztások megtekintése
A szolgáltató által Önnel megosztott megosztások megtekintéséhez használhatja a Catalog Explorert, a Databricks Unity Catalog parancssori felületét, vagy a SHOW SHARES IN PROVIDER SQL-parancsot egy Azure Databricks jegyzetfüzetben vagy a Databricks SQL-lekérdezésszerkesztőben.
Szükséges engedélyek: Metaadattár-rendszergazdának kell lennie, rendelkeznie kell a USE PROVIDER jogosultsággal, vagy rendelkeznie kell a szolgáltató objektumával.
További részletekért tekintse meg a szolgáltató által Önnel megosztott megosztások megtekintése című témakört.
Adatok elérése megosztott táblában vagy kötetben
Adatok olvasása megosztott táblában vagy kötetben:
- A kiemelt felhasználóknak katalógust kell létrehozniuk a táblát vagy kötetet tartalmazó megosztásból. Ez lehet metaadattár-rendszergazda, olyan felhasználó, aki rendelkezik a
CREATE CATALOGUnity Catalog-metaadattárhoz tartozó jogosultságokkal ésUSE PROVIDERjogosultságokkal, vagy olyan felhasználó, aki aCREATE CATALOGszolgáltató objektum jogosultságával és tulajdonjogával is rendelkezik. - Ennek a felhasználónak vagy az azonos jogosultságokkal rendelkező felhasználónak hozzáférést kell adnia a megosztott táblához vagy kötethez.
- A táblát vagy kötetet ugyanúgy érheti el, mint bármely más, a Unity Catalog metaadattárában regisztrált adategységet.
Katalógus létrehozása megosztásból
Ha elérhetővé szeretné tenni egy megosztás adatait a csapat számára, létre kell hoznia egy katalógust a megosztásból, vagy csatlakoztatnia kell a megosztást egy meglévő megosztott katalógushoz. Ha katalógust szeretne létrehozni egy megosztásból, használhatja a Catalog Explorert, a Databricks Unity Catalog CLI-t vagy az SQL-parancsokat egy Azure Databricks jegyzetfüzetben vagy a Databricks SQL-lekérdezésszerkesztőben. Ha egy meglévő megosztott katalógushoz szeretné csatlakoztatni a megosztást, használja a Katalóguskezelőt.
Katalógus létrehozásához szükséges engedélyek: Metaadattár-rendszergazda, a Unity Catalog-metaadattárhoz tartozó jogosultságokkal és CREATE CATALOG jogosultságokkal rendelkező USE PROVIDER felhasználó, vagy olyan felhasználó, aki rendelkezik a CREATE CATALOG szolgáltató objektum jogosultságával és tulajdonjogával.
A megosztás meglévő katalógushoz való csatlakoztatásához szükséges engedélyek: A felhasználónak rendelkeznie kell a USE PROVIDER szolgáltatói objektum jogosultságával vagy tulajdonosával, valamint vagy a meglévő megosztott katalógus tulajdonosával, vagy mindkettővel MANAGE és USE CATALOG jogosultságokkal a meglévő megosztott katalógusban.
Note
Ha egy SAP BDC-megosztásból hoz létre katalógust, az SAP szemantikai metaadatai (tábla- és oszlopbejegyzések, elsődleges kulcsok, idegen kulcsok és szabályozási címkék) automatikusan szinkronizálódnak a katalógusba. Nincs szükség további műveletre. További részletekért tekintse meg az SAP BDC szemantikai metaadatait.
Note
Ha a megosztás nézeteket tartalmaz, a szolgáltató metaadattárában lévő nézetet tartalmazó katalógus nevével eltérő katalógusnevet kell használnia.
Katalóguskezelő
A Azure Databricks munkaterületen kattintson a
Catalog elemre a Catalog Explorer megnyitásához.
A Katalógus panel tetején kattintson a
fogaskerék ikonra, és válassza a Delta Megosztás lehetőséget.
Másik lehetőségként a jobb felső sarokban kattintson a Delta Sharing megosztás elemre>.
A Velem megosztva lapon keresse meg és válassza ki a szolgáltatót.
Keresse meg a kívánt megosztást, és kattintson a Katalógushoz csatolás gombra a megosztási sorban.
Válassza a Create a new catalog or Mount to existing catalog (Új katalógus létrehozása vagy csatlakoztatás a meglévő katalógushoz ) lehetőséget az adategység meglévő katalógushoz való hozzáadásához.
Adja meg az új katalógus nevét, vagy válassza ki, hogy melyik meglévő katalógushoz szeretné hozzáadni a megosztást.
Kattintson a Létrehozás vagy csatlakoztatás gombra.
Másik lehetőségként a Katalóguskezelő megnyitásakor a jobb felső sarokban található + > Katalógus létrehozása elemre kattintva létrehozhat egy megosztott katalógust. Lásd: Katalógusok létrehozása.
SQL
Futtassa a következő parancsot egy jegyzetfüzetben vagy a Databricks SQL-lekérdezésszerkesztőben.
CREATE CATALOG [IF NOT EXISTS] <catalog-name>
USING SHARE <provider-name>.<share-name>;
parancssori felület
databricks catalogs create <catalog-name> /
--provider-name <provider-name> /
--share-name <share-name>
A megosztásból létrehozott katalógus a Delta Sharing katalógustípusával rendelkezik. A típust a Katalóguskezelő katalógusadatok lapján, illetve a DESCRIBE CATALOG SQL-parancs jegyzetfüzetben vagy Databricks SQL-lekérdezésben való futtatásával tekintheti meg. Az összes megosztott katalógus a Katalóguskezelő bal oldali ablaktábláján a Megosztott katalógus csoportban > található.
A Delta Sharing-katalógusok ugyanúgy kezelhetők, mint a Unity Catalog-metaadattárak szokásos katalógusai. Megtekintheti, frissítheti és törölheti a Delta Sharing-katalógust a Catalog Explorer, a Databricks parancssori felület, valamint a , SHOW CATALOGS, DESCRIBE CATALOGés ALTER CATALOG SQL-parancsok használatávalDROP CATALOG.
A megosztásból létrehozott Delta Sharing-katalógus 3 szintű névtérstruktúrája megegyezik a Unity Catalog egy reguláris katalógusában lévővel: catalog.schema.table vagy catalog.schema.volume.
A megosztott katalógusban lévő tábla- és kötet adatok írásvédettek, ami azt jelenti, hogy olvasási műveletek hajthatók végre, például:
-
DESCRIBE,SHOWésSELECTtáblák esetén. -
DESCRIBE VOLUME,LIST <volume-path>,SELECT * FROM <format>.'<volume_path>'ésCOPY INTOkötetek esetén.
A megosztott katalógusban lévő jegyzetfüzeteket bármely felhasználó megtekintheti és klónozhatja.
A megosztott katalógusban lévő modelleket bármely olyan felhasználó elolvashatja és betöltheti következtetésre, aki a következő jogosultságokkal rendelkezik: EXECUTE jogosultságok a regisztrált modellen, valamint USE SCHEMAUSE CATALOG a modellt tartalmazó séma és katalógus jogosultságai.
A deltamegosztási katalógus sémáihoz, tábláihoz és köteteihez tartozó engedélyek kezelése
Alapértelmezés szerint a katalógus létrehozója a deltamegosztási katalógusban lévő összes adatobjektum tulajdonosa, és bármelyikhez kezelheti az engedélyeket.
A jogosultságok lefelé öröklődnek, bár előfordulhat, hogy egyes munkaterületek továbbra is az örökölt biztonsági modellen vannak, amelyek nem biztosítottak öröklést. Lásd : Jogosultságöröklés. A katalógusban jogosultsággal SELECT rendelkező felhasználók a katalógus összes sémáján és tábláján rendelkeznek SELECT jogosultsággal, kivéve, ha a jogosultságot visszavonják. Hasonlóképpen, a katalógusban jogosultsággal READ VOLUME rendelkező felhasználók a katalógus összes kötetén megkapják READ VOLUME a jogosultságot, kivéve, ha a jogosultságot visszavonják. Nem adhat meg olyan jogosultságokat, amelyek írási vagy frissítési hozzáférést biztosítanak egy Delta Sharing-katalógushoz vagy -objektumokhoz egy Delta Sharing-katalógusban.
A katalógus tulajdonosa delegálhatja az adatobjektumok tulajdonjogát más felhasználókra vagy csoportokra, így a felhasználók kezelhetik az objektumengedélyeket és az életciklusokat.
Az adatobjektumok jogosultságainak a Unity Catalog használatával történő kezelésével kapcsolatos részletes információkért lásd : Jogosultságok kezelése a Unity Catalogban.
Adatok olvasása megosztott táblában
A megosztott táblákban lévő adatokat a Azure Databricks felhasználóként elérhető eszközök bármelyikével elolvashatja: Catalog Explorer, notebookok, SQL-lekérdezések, Databricks CLI és Databricks REST API-k. Rendelkeznie kell a SELECT táblában szereplő jogosultsággal.
Ha a szolgáltató megosztotta a táblát WITH HISTORY, tranzakciókat futtathat a táblán. A tranzakciós követelményekről és korlátozásokról további információt a Tranzakciók című témakörben talál.
Adatok olvasása megosztott idegen táblában vagy idegen sémában
Important
Ez a funkció bétaverzióban érhető el. A munkaterület rendszergazdái az Előnézetek lapon szabályozhatják a funkcióhoz való hozzáférést. Lásd: Manage Azure Databricks előzetes verzió.
A megosztott idegen táblában vagy idegen sémában lévő adatokat a Azure Databricks felhasználóként elérhető eszközök bármelyikével elolvashatja: Catalog Explorer, notebookok, SQL-lekérdezések, Databricks CLI és Databricks REST API-k. Rendelkeznie kell az SELECT előjoggal a megosztott idegen táblán vagy idegen sémán.
Tranzakciókat futtathat megosztott külföldi táblákon. Lásd a tranzakciós követelményeket és korlátozásokat.
A megosztott idegen tábla vagy idegen séma elérése további költségekkel jár. A megosztási költségek kiszámításával kapcsolatos további információkért lásd: Hogyan merülnek fel és ellenőrizhetők a Delta megosztási költségei?
Korlátozások: A megosztott idegen táblák olvasásához nem kerülheti el a fürtkorlátozást, még akkor sem, ha a szolgáltató engedélyezi.
Adatok olvasása egy megosztott külső Iceberg táblában
Important
Ez a funkció a nyilvános előzetes verzióban érhető el.
Egy megosztott idegen Iceberg-táblában adatokat olvashat a Azure Databricks felhasználóként elérhető eszközök bármelyikével: Catalog Explorer, notebookok, SQL-lekérdezések, Databricks CLI és Databricks REST API-k. A Catalog Explorerben egy megosztott külföldi Iceberg-tábla jelenik meg, amely egy Idegen típusú táblázattal és egy Iceberg adatforrás-formátummal jelenik meg.
Hozzáféréssel rendelkezik a forrás icebergi helyéhez, de csak a következő típusú lekérdezéseket hajthatja végre:
- Pillanatkép-lekérdezések
- Streamelési lekérdezések
Követelmények:
- Önnek rendelkeznie kell a
SELECTjogosultsággal a közösen használt külföldi Iceberg-táblán. - A Databricks Runtime 15.4 LTS vagy újabb verzióját kell használnia.
Adatok olvasása megosztott kötetben
A megosztott kötetekben lévő adatokat a Azure Databricks felhasználóként elérhető eszközök bármelyikével elolvashatja: Catalog Explorer, notebookok, SQL-lekérdezések, Databricks CLI és Databricks REST API-k. Rendelkeznie kell a jogosultsággal a READ VOLUME köteten.
Az ABAC által védett adatok olvasása és ABAC-szabályzatok alkalmazása
Important
Ez a funkció a nyilvános előzetes verzióban érhető el.
Attribute-alapú hozzáférés-vezérlés (ABAC) olyan adatszabályozási modell, amely rugalmas, skálázható és központosított hozzáférés-vezérlést biztosít az Azure Databricks.
A címzett oldalon lévő fiókadminisztrátornak be kell kapcsolnia az Attribútum alapú hozzáférés-vezérlést a Delta Sharinghez a fiókkonzol előzetes verziójában, hogy olvashassa az ABAC-szabályzatokkal védett megosztott táblákat. Ez biztosítja, hogy a lekérdezés eredményei helyesek legyenek. Ellenkező esetben fennáll annak a kockázata, hogy az adatok szabályozása nem megfelelően történik.
Megosztásból létrehozott megosztott táblákhoz, sémákhoz és katalógusokhoz hozzon létre ABAC-szabályzatokat. A materializált nézetek korlátozásokkal támogatottak. Nem hozhat létre ABAC-szabályzatokat megosztott streamelési táblákhoz vagy materializált nézetekhez. Az ABAC-szabályzatok konfigurálásához lásd : ABAC-szabályzatok létrehozása és kezelése.
Sorkövetési oszlopok olvasása megosztott táblákban
Ha az adatszolgáltató engedélyezte a sorkövetést egy megosztott táblán, lekérdezheti a sorkövetés metaadatainak oszlopait. Az elérhető oszlopok listáját a Databricks sorkövetése című témakörben találja.
Az oszlopok elérése a megosztott tábla típusától függ:
Előzményekkel és partíciószűrők nélkül megosztott táblák: A sorkövetési oszlopokat korlátozás nélkül kérdezheti le.
Partíciószűrőkkel vagy előzmény nélkül megosztott táblák: a Scala Sparkot kell használnia, és explicit módon be kell állítania a
responseFormatbeállítástdelta.spark.read.option(“responseformat”, “delta”).table(“shared_table”).select(“_metadata.row_id”).show()
Megosztott modell betöltése következtetés céljából
A megosztott modell betöltésével és kötegelt következtetéssel való használatával kapcsolatos részletekért lásd a modell verziószámának alias szerinti betöltését a következtetési számítási feladatokhoz.
Tábla előzményadatainak lekérdezése
Ha az előzményeket a táblázattal együtt osztja meg, lekérdezheti a tábla adatait verzió vagy időbélyeg alapján. A Databricks Runtime 12.2 LTS-t vagy újabb verziót igényel.
Például:
SELECT * FROM vaccine.vaccine_us.vaccine_us_distribution VERSION AS OF 3;
SELECT * FROM vaccine.vaccine_us.vaccine_us_distribution TIMESTAMP AS OF "2023-01-01 00:00:00";
Ezenkívül ha a változásadatcsatorna (CDF) engedélyezve van a táblával, lekérdezheti a CDF-et. A verzió és az időbélyeg is támogatott:
SELECT * FROM table_changes('vaccine.vaccine_us.vaccine_us_distribution', 0, 3);
SELECT * FROM table_changes('vaccine.vaccine_us.vaccine_us_distribution', "2023-01-01 00:00:00", "2022-02-01 00:00:00");
További információért a változásadatcsatornáról, lásd: A Delta Lake változásadatcsatorna használata az Azure Databricks-en.
Tábla lekérdezése apache Spark strukturált streameléssel
Ha egy tábla meg van osztva az előzményekkel, használhatja forrásként a Spark strukturált streameléséhez. A Databricks Runtime 12.2 LTS-t vagy újabb verziót igényel.
Támogatott lehetőségek:
-
ignoreDeletes: Az adatokat törlő tranzakciók figyelmen kívül hagyása. -
ignoreChanges: Újra feldolgozhatja a frissítéseket, ha a fájlokat újraírták a forrástáblában olyan adatmódosítási művelet miatt, mintUPDATEa ,MERGE INTO,DELETE(partíciókon belüli) vagyOVERWRITE. Változatlan sorok továbbra is kibocsáthatók. Ezért az alsóbb rétegbeli fogyasztóknak képesnek kell lenniük az ismétlődések kezelésére. A törléseket a rendszer nem propagálja lefelé.ignoreChangesmagába foglaljaignoreDeletes. Ezért ha használjaignoreChanges, a streamet nem zavarja a forrástábla törlése vagy frissítése. -
startingVersion: A megosztott tábla verziója, amelyből kiindulni szeretne. Az ebből a verzióból (beleértve) kezdődő összes táblamódosítást a streamelési forrás felolvassa. -
startingTimestamp: A kezdéshez megadott időbélyeg. Az időbélyegen vagy után véglegesített összes táblamódosítást (beleértve) a streamelési forrás felolvassa. Példa:"2023-01-01 00:00:00.0" -
maxFilesPerTrigger: Az összes mikrokötegben figyelembe venni kívánt új fájlok száma. -
maxBytesPerTrigger: Az egyes mikrokötegekben feldolgozott adatok mennyisége. Ez a beállítás "soft max" értéket állít be, ami azt jelenti, hogy egy köteg körülbelül ennyi adatot dolgoz fel, és a korlátnál többet is feldolgozhat annak érdekében, hogy a streamelési lekérdezés előrehaladjon olyan esetekben, amikor a legkisebb bemeneti egység nagyobb ennél a korlátnál. -
readChangeFeed: A stream felolvassa a megosztott tábla változásadatcsatornáját.
Nem támogatott beállítások:
Trigger.availableNow
Strukturált streamelési lekérdezések mintája
Scala
spark.readStream.format("deltaSharing")
.option("startingVersion", 0)
.option("ignoreChanges", true)
.option("maxFilesPerTrigger", 10)
.table("vaccine.vaccine_us.vaccine_us_distribution")
Python
spark.readStream.format("deltaSharing")\
.option("startingVersion", 0)\
.option("ignoreDeletes", true)\
.option("maxBytesPerTrigger", 10000)\
.table("vaccine.vaccine_us.vaccine_us_distribution")
Ha a táblához engedélyezve van a változási adatfolyam (CDF), akkor a CDF-et folyamatosan olvashatja.
spark.readStream.format("deltaSharing")
.option("readChangeFeed", "true")
.table("vaccine.vaccine_us.vaccine_us_distribution")
Sorszűrők és oszlopmaszkok alkalmazása
Ha sorszűrőket és oszlopmaszkokat szeretne alkalmazni az adatszolgáltató által megosztott táblákra és idegen táblákra, olvassa el a Sorszűrők és oszlopmaszkok manuális alkalmazása című témakört. Streamelő táblákra vagy materializált nézetekre nem alkalmazhat oszlopmaszkokat.
Táblák olvasása, amelyeknél törlési vektorok vagy oszlopleképezés van engedélyezve
Important
Ez a funkció a nyilvános előzetes verzióban érhető el.
A törlési vektorok olyan tárolási optimalizálási funkciók, amelyeket a szolgáltató engedélyezhet a megosztott Delta-táblákon. Lásd: Törlési vektorok a Databricksben.
Azure Databricks a Delta-táblák oszlopleképezését is támogatja. Lásd: Az oszlopok átnevezése és elvetése a Delta Lake oszlopleképezéssel.
Ha a szolgáltató egy táblát osztott meg engedélyezett törlési vektorokkal vagy oszlopleképezéssel, akkor kötegelt olvasásokat végezhet el a táblán egy SQL-adattárházzal vagy egy Databricks Runtime 14.1 vagy újabb verzióját futtató fürttel. A CDF- és streamelési lekérdezésekhez a Databricks Runtime 14.2-s vagy újabb verziója szükséges.
A kötegelt lekérdezéseket igény szerint is végrehajthatja, mert azok automatikusan feloldhatók responseFormat a megosztott tábla táblafunkciói alapján.
A változásadatcsatorna (CDF) olvasásához vagy a megosztott táblák streamelési lekérdezéseinek törlési vektorokkal vagy oszlopleképezéssel történő végrehajtásához be kell állítania a további beállítást responseFormat=delta.
Az alábbi példák kötegelt, CDF- és folyamatos lekérdezéseket mutatnak be.
import org.apache.spark.sql.SparkSession
// Batch query
spark.read.format("deltaSharing").table(<tableName>)
// CDF query
spark.read.format("deltaSharing")
.option("readChangeFeed", "true")
.option("responseFormat", "delta")
.option("startingVersion", 1)
.table(<tableName>)
// Streaming query
spark.readStream.format("deltaSharing").option("responseFormat", "delta").table(<tableName>)
Megosztott kezelt Iceberg-táblák olvasása
Important
Ez a funkció a nyilvános előzetes verzióban érhető el.
A megosztott felügyelt Iceberg-táblák olvasása megegyezik a megosztott táblák olvasásával, az alábbi kivételekkel:
Támogatás a nyílt megosztáshoz:
A cikkben szereplő utasítások a megosztott adatok Azure Databricks felhasználói felületek, különösen a Unity Catalog szintaxisa és felületei használatával történő olvasására összpontosítanak. A Delta Sharing-összekötők speciális Delta-funkciótámogatásának korlátozása miatt a megosztott felügyelt Iceberg-táblák lekérdezése Python, Tableau és Power BI használatával nem támogatott.
Adatcsatorna módosítása:
A felügyelt Iceberg-táblák nem támogatják a változási adatcsatornát.
Azure Databricks Iceberg korlátozásai:
A Iceberg-tábla és a felügyelt Iceberg-táblákra vonatkozó korlátozások érvényesek. Lásd : Iceberg-táblázat korlátozásai.
Megosztott nézetek olvasása
A megosztott nézetek olvasása megegyezik a megosztott táblák olvasásával, az alábbi kivételekkel:
Megosztott nézetek korlátozásai:
- A megosztott nézetek csak a Databricks beépített függvényeinek és operátorainak egy részét támogatják. Lásd: Databricks-to-Databricks megosztott nézetekben támogatott függvények.
- A címzettek nem kérdezhetnek le több mint 20 megosztott nézetet a Databricks-to-Databricks megosztásban lévő lekérdezésekben. A megosztott nézetek legfeljebb öt különböző szolgáltatói megosztásból származhatnak.
- Ha a szolgáltató ugyanabból a fiókból származik, vagy ha kiszolgáló nélküli számítást használ egy másik fiókban, egyetlen lekérdezésben nem kérdezhet le több függő nézetet ugyanabból a szolgáltatóból.
Például, ha
view1függview2-től a szolgáltatói oldalon, és mindkét nézet meg van osztva Önnel, nem hivatkozhat mind aview1-re, mind aview2-re ugyanabban a lekérdezésben. - A tranzakciók megosztott nézeteken is futtathatók. Lásd a tranzakciós követelményeket és korlátozásokat.
Elnevezési követelmények:
A nézetet tartalmazó megosztott katalógushoz használt katalógusnév nem lehet azonos a nézet által hivatkozott táblát tartalmazó szolgáltatókatalógussal. Ha például a megosztott nézet szerepel a test katalógusban, és a nézetben hivatkozott szolgáltató egyik táblája szerepel a szolgáltató test katalógusában, a lekérdezés névtérütközési hibát fog eredményezni. Lásd: Katalógus létrehozása megosztásból.
Lekérdezés eredményének időtúllépése:
Ha nem rendelkezik közvetlen hozzáféréssel az alapul szolgáló adatokhoz, az Azure Databricks valós idejű anyagiasítást végez a nézet lekérdezésekor. Ha ez a materializálás 5 percnél hosszabb időt vesz igénybe, a lekérdezés túllépi az időkorlátot. Váltson kiszolgáló nélküli számításra a korlátozás elkerülése érdekében.
Előzmények és streamelés:
Nem kérdezhet le előzményeket, és nem használhat nézetet streamforrásként.
Nyílt megosztásnál a támogatás megtekintése:
A cikkben szereplő utasítások a megosztott adatok Azure Databricks felhasználói felületek, különösen a Unity Catalog szintaxisa és felületei használatával történő olvasására összpontosítanak. A megosztott nézeteket az Apache Spark, Python és BI-eszközök, például a Tableau és a Power BI használatával is lekérdezheti.
Costs:
A megosztási költségek kiszámításával kapcsolatos további információkért lásd: Hogyan merülnek fel és ellenőrizhetők a Delta megosztási költségei?
Megosztott streamelési táblák és materializált nézetek olvasása
A megosztott streamelési táblák és a materializált nézetek olvasása megegyezik a megosztott táblák olvasásával, az alábbi kivételekkel:
Támogatás a nyílt megosztáshoz:
Az ezen a lapon található utasítások a közösen használt adatoknak az Azure Databricks felhasználói felületeinek használatával történő olvasásához nyújtanak útmutatót, különösen a Unity Catalog szintaxisára és felületeire összpontosítva. A megosztott streamelési táblákat és materializált nézeteket az Apache Spark, a Python és a BI-eszközök, például a Tableau és a Power BI használatával is lekérdezheti. Lásd: Adatok olvasása a Delta Sharing által megosztott nyílt megosztásban hordozó tokenekkel.
Tranzakciók:
- Tranzakciókat hajthat végre megosztott materializált nézeteken és streamelő táblákon. Lásd a tranzakciós követelményeket és korlátozásokat.
SQL-korlátozások:
- A
current_recipientfüggvény nem támogatott. - A
DESCRIBE EXTENDEDparancs nem támogatott.
Oszlopleképezés:
Ha egy másik Azure Databricks-fiókból származó megosztás fogadásakor klasszikus számítást használ, az oszlopleképezéssel rendelkező materializált nézet vagy streamtáblák lekérdezéséhez az alábbihoz hasonlóan meg kell adnia a responseFormat.
spark.read.option("responseFormat", "delta").table("catalog_name.schema_name.mv_name")
Ha klasszikus számítást használ ugyanazon Azure Databricks fiókon vagy kiszolgáló nélküli számításon belüli megosztáskor bármely forgatókönyvben, korlátozás nélkül kérdezhet le.
Costs:
A megosztási költségek kiszámításával kapcsolatos további információkért lásd: Hogyan merülnek fel és ellenőrizhetők a Delta megosztási költségei?
Megtestesült nézetre vonatkozó kivételek
History:
Az előzmények nem kérdezhetők le.
Refresh:
A materializált nézet frissítési állapota és ütemezése nem érhető el.
Tábla létrehozásának megtekintése és streamelése:
Megosztott materializált nézeteken nem hozhat létre streamtáblákat.
Adatfolyam táblákra vonatkozó kivételek
History:
A lekérdezési előzmények a következő Databricks-to-Databricks megosztási körülmények között érhetők el:
Kiszolgáló nélküli számítást használ egy másik Azure Databricks-fiókkal való megosztáskor.
Kiszolgáló nélküli vagy klasszikus számítást használ ugyanazon Azure Databricks fiókon belüli megosztáskor.
A különböző számításokkal kapcsolatos további információkért lásd: Compute.
Refresh:
A streamelési tábla frissítési állapota és ütemezése nem érhető el.
Read megosztott Python UDF-ek
A megosztott Python UDF-ek olvasása ugyanaz, mint megosztott táblák olvasása. Miután létrehozott egy új katalógust a megosztáshoz, vagy csatlakoztatta a megosztást egy meglévő katalógushoz, elérheti és használhatja a Python UDF-t.
Megosztott olvasás FeatureSpecs
A megosztott FeatureSpecs olvasás ugyanaz, mint a megosztott táblák olvasása. Miután létrehozott egy új katalógust a megosztáshoz, vagy csatlakoztatta a megosztást egy meglévő katalógushoz, üzembe helyezheti a FeatureSpec kívánt kiszolgálóvégponton. A végpontok létrehozásának módjáról a Végpont létrehozása című témakörben olvashat.
Ha a szolgáltató FeatureSpec-t egy új függőséggel frissíti, de nem osztja meg Önnel a függőséget, a modell kudarcot vall. Új függőségek kereséséhez lépjen kapcsolatba az adatszolgáltatóval.
A szolgáltatás előtt FeatureSpeclétre kell hoznia egy online áruházat, és közzé kell tennie a függő táblákat a munkaterületen. Az online áruházak létrehozásáról és a tábla közzétételéről a Databricks Online szolgáltatástárolók című témakörben olvashat.
Megosztott jegyzetfüzetek olvasása
Megosztott jegyzetfüzetfájlok előnézetének megtekintéséhez és klónozásához használhatja a Catalog Explorert.
Tárolási korlátozás: Ha a tároló privát végpontokat használ, nem olvashat megosztott jegyzetfüzeteket.
Szükséges engedélyek: A katalógus tulajdonosa vagy a USE CATALOG megosztásból létrehozott katalógusban szereplő jogosultsággal rendelkező felhasználó.
A Azure Databricks munkaterületen kattintson a
Catalog elemre.
A bal oldali panelen bontsa ki a Katalógus menüt, keresse meg és válassza ki a megosztásból létrehozott katalógust.
Az Egyéb eszközök lapon minden megosztott jegyzetfüzetfájl megjelenik.
Kattintson egy megosztott jegyzetfüzetfájl nevére az előnézet megtekintéséhez.
(Nem kötelező) A Klónozás gombra kattintva importálhatja a megosztott jegyzetfüzetfájlt a munkaterületre.
- A Klónozás párbeszédpanelen szükség esetén adjon meg egy Új nevet, majd válassza ki azt a munkaterületi mappát, ahová a jegyzetfüzetfájlt klónozni szeretné.
- Kattintson a Klón lehetőségre.
- Miután a jegyzetfüzet klónozása befejeződött, megjelenik egy párbeszédpanel, amely tájékoztatja Önt, hogy a klónozás sikeres volt. A párbeszédpanelen kattintson a jegyzetfüzet-szerkesztőben megjelenítés lehetőségre, hogy megtekintse azt a jegyzetfüzet-szerkesztőben.
Megosztás leválasztása
A megosztás leválasztása az adategység katalógusból való eltávolításához.
Szükséges engedélyek: A megosztott katalógusban szereplő USE CATALOG jogosultságokkal rendelkező MANAGE felhasználó.
A Azure Databricks munkaterületen kattintson a
Catalog elemre a Catalog Explorer megnyitásához.
A Katalógus panel tetején kattintson a
fogaskerék ikonra, és válassza a Delta Megosztás lehetőséget.
Másik lehetőségként a jobb felső sarokban kattintson a Delta Sharing megosztás elemre>.
A Velem megosztva lapon keresse meg és válassza ki a szolgáltatót.
Kattintson a
a megosztási sorban.
Kattintson a Megosztás leválasztása elemre.
Kattintson a Leválasztás gombra.