A Unity Cataloggal kapcsolatos ajánlott eljárások

Ez a dokumentum javaslatokat tartalmaz a Unity Catalog használatával az adatszabályozási igények leghatékonyabb kielégítése érdekében. Az Azure Databricks adatirányításának bevezetéséért lásd: Data governance with Unity Catalog. A Unity Catalog bemutatása: Mi az a Unity Catalog?.

Identitások

A rendszerbiztonsági tagokat (felhasználókat, csoportokat és szolgáltatásneveket) Azure Databricks fiókszinten kell meghatározni ahhoz, hogy jogosultságokat lehessen hozzárendelni a Unity Catalog biztonságos objektumaihoz. A Databricks azt javasolja, hogy az identitásszolgáltatótól az automatikus identitáskezelés használatával létesítsen ki egyszerű tagokat Azure Databricks fiókjához. Ha az identitásszolgáltató nem támogatja az automatikus identitáskezelést, használja inkább az SCIM kiépítését.

Ajánlott eljárások:

  • Kerülje (és kapcsolja ki a meglévő) munkaterületszintű SCIM-kiépítést. A munkaterületre közvetlenül történő jogosultság hozzárendelést olyan régi munkaterületekre kell fenntartani, amelyek nincsenek engedélyezve a Unity Katalógusban. Az ellátást teljes mértékben a fiók szintjén kell kezelnie.

  • Csoportok definiálása és kezelése az identitásszolgáltatóban. Összhangban kell lenniük a szervezeti csoport definícióival.

    A csoportok másképp viselkednek, mint a felhasználók és a szolgáltatásnevek. Bár a munkaterülethez hozzáadott felhasználók és szolgáltatásnevek automatikusan szinkronizálódnak a Azure Databricksaccount-tal, a munkaterületszintű csoportok nem. Ha rendelkezik munkaterület-helyi csoportokkal, manuálisan kell áttelepítenie őket a fiókba, lehetőleg replikálva őket az identitásszolgáltatóban (ha szükséges), és ki kell telepítenie őket a fiókba.

  • Állítson be csoportokat, hogy hatékonyan használhassa őket az adatokhoz és más Unity Catalog elemekhez való hozzáférés biztosítása érdekében. Ha lehetséges, kerülje a közvetlen támogatásokat a felhasználóknak.

  • Csoportok használatával tulajdonjogot rendelhet a legtöbb biztonságos objektumhoz.

  • Ne adjon hozzá manuálisan felhasználókat a fiókhoz vagy a munkaterülethez. Kerülje a csoportok módosítását a Azure Databricks: használja az identitásszolgáltatót.

  • Szolgáltatási identitások használata feladatok futtatásához. A szolgáltatásnevek lehetővé teszik a feladatok automatizálását. Ha felhasználókkal futtat éles környezetben írható feladatokat, akkor véletlenül felülírhatja az éles adatokat.

További információ: Felhasználók, szolgáltatásnevek és csoportok kezelése, Automatikus identitáskezelés, valamint Felhasználók és csoportok szinkronizálása Microsoft Entra ID SCIM használatával.

Rendszergazdai szerepkörök és hatékony jogosultságok

A rendszergazdai szerepkörök és a ALL PRIVILEGES valamint MANAGE típusú hatékony jogosultságok hozzárendelése nagy körültekintést igényel.

  • A fiókadminisztrátorok, munkaterület-rendszergazdák és metaadattár-rendszergazdák jogosultságainak megismerése a hozzárendelésük előtt. Lásd: Rendszergazdai jogosultságok a Unity Catalogban.
  • Ezeket a szerepköröket a csoportokhoz rendelheti, amikor csak lehetséges.
  • A metaadattár-rendszergazdák nem szükségesek. Csak akkor rendelje hozzá őket, ha szüksége van rájuk. Útmutatásért tekintse meg a Metastore rendszergazdáit.
  • Objektumok tulajdonjogát rendeljük csoportokhoz, különösen akkor, ha az objektumokat termelési környezetben használják. Minden tárgy létrehozója az első tulajdonosa. Az alkotóknak át kell rendelni a tulajdonjogot a megfelelő csoportokhoz.
  • Csak az objektumon jogosultsággal rendelkező MANAGE metaadattár-rendszergazdák, tulajdonosok és felhasználók adhatnak jogosultságokat az adott objektumhoz. A szülőkatalógusok és sémák tulajdonosai jogosultságokat is biztosíthatnak a katalógusban vagy sémában lévő összes objektumhoz. Legyen takarékos a tulajdonjog és a MANAGE jogosultság hozzárendelésével.
  • Óvatosan bánjon az ALL PRIVILEGES hozzárendelésével, amely az összes jogosultságot magában foglalja, kivéve MANAGE, EXTERNAL USE LOCATION és EXTERNAL USE SCHEMA.

Jogosultság-hozzárendelés

A Unity Catalog biztonságos objektumai hierarchikusak, a jogosultságok pedig lefelé öröklődnek. Ezzel az öröklési hierarchiával hatékony jogosultságmodellt hozhat létre.

Ajánlott eljárások:

  • A jogosultságok és a jogosultságok szerepének USE CATALOG megismerése USE SCHEMA :

    • USE CATALOG | SCHEMA lehetővé teszi a katalógusban vagy sémában lévő adatok megtekintését. Ezek a jogosultságok önmagukban nem SELECT vagy READ biztosítanak az objektumokra a katalógusban vagy sémában, de előfeltételei annak, hogy a felhasználók hozzáférést kapjanak. Ezeket a jogosultságokat csak azoknak a felhasználóknak adja meg, akiknek meg kell tudniuk tekinteni a katalógusban vagy a sémában lévő adatokat.
    • USE CATALOG | SCHEMAa katalógushoz vagy sémához való hozzáférés korlátozásával megakadályozza, hogy az objektumtulajdonosok (például a tábla létrehozója) véletlenül hozzáférést rendeljenek az adott objektumhoz (táblázathoz) azoknak a felhasználóknak, akiknek nem kellene hozzáféréssel rendelkezniük. Általában csapatonként hoznak létre sémát, és csak az adott csapatnak adunk meg USE SCHEMA és CREATE TABLE (a szülőkatalógussal USE CATALOG együtt).
  • Megérteni a BROWSE jogosultság szerepét:

    • BROWSE A katalógusban lévő objektumok metaadatainak megtekintését a katalógusban a Catalog Explorer, a sémaböngésző, a keresés, a lineage graph information_schemaés a REST API használatával teszi lehetővé. Nem biztosít hozzáférést az adatokhoz.
    • BROWSE lehetővé teszi, hogy a felhasználók felderíthessék az adatokat, és hozzáférést kérjenek hozzá, még akkor is, ha nem rendelkeznek jogosultságokkal USE CATALOG vagy USE SCHEMA jogosultságokkal.
    • A Databricks azt javasolja, hogy katalógusszinten adja meg BROWSE a katalógusokat a All account users csoportnak, hogy az adatok felderíthetők legyenek, és támogassák a hozzáférési kérelmeket.
  • A hozzáférési kérelmek célhelyeinek konfigurálása az önkiszolgáló hozzáférés támogatásához:

    • Ha a hozzáférési kérelem célhelye nincs konfigurálva, a felhasználók akkor sem kérhetnek hozzáférést az objektumokhoz, ha felfedezhetik őket.
    • A Databricks azt javasolja, hogy engedélyezze az alapértelmezett e-mail-célhelyeket, így a rendszer automatikusan elküldi a kéréseket a katalógus tulajdonosának vagy az objektum tulajdonosának, ha nincs más célhely konfigurálva.
    • A célhely konfigurálható e-mail-címekre, Slackre, Microsoft Teams, PagerDuty-ra, webhookokra vagy a szervezet kérési rendszerére irányuló átirányítási URL-címre.
  • Ismerje meg az objektum tulajdonjoga és a MANAGE jogosultság közötti különbséget:

    • Az objektum tulajdonosa rendelkezik minden jogosultsággal az objektumon, például SELECTMODIFY egy táblán, valamint engedéllyel rendelkezik a biztonságos objektumra vonatkozó jogosultságok más tagoknak való megadására és a tulajdonjog más tagoknak való átadására.
    • A tulajdonosok jogosultságot adhatnak arra MANAGE , hogy tulajdonjogi képességeket delegáljanak egy objektumon más tagoknak.
    • A katalógus- és sématulajdonosok a katalógus vagy séma bármely objektumának tulajdonjogát átvihetik.
    • A legjobb, ha minden objektum tulajdonjogát konfigurálja, vagy megadja a MANAGE jogosultságot egy olyan csoportnak, amely az objektumon lévő támogatások felügyeletéért felelős.
  • A nézetek és metrikanézetek együttműködő szerkesztésének lehetővé tétele csoporttulajdon használatával:

    • Alapértelmezés szerint csak a nézet vagy a metrikanézet tulajdonosa szerkesztheti a definícióját. Ez megakadályozza a jogosultságok eszkalálását, ahol a szerkesztő módosíthatja a nézetet, hogy jogosulatlan adatokhoz férhessen hozzá.
    • Ha azt szeretné, hogy több felhasználó is biztonságosan szerkessze ugyanazt a nézetet vagy metrikanézetet, adja át a tulajdonjogot egy csoportnak, és adjon hozzáférést a csoportnak a forrástáblákhoz. Ezután minden csoporttag szerkesztheti a definíciót, és az adathozzáférés csak arra korlátozódik, amire a csoport jogosult.
    • Részletes útmutatásért lásd: Együttműködésen alapuló szerkesztés engedélyezése.
  • MODIFY Közvetlen hozzáférés lefoglalása az éles táblákhoz a szolgáltatásnevek számára.

További információ: Jogosultságok kezelése a Unity Katalógusban.

Metaadattárak

A metaadattárak létrehozásának és kezelésének szabályai és ajánlott eljárásai a következők:

  • Régiónként csak egy metaadattár lehet. Az adott régió összes munkaterülete megosztja ezt a metaadattárat. Az adatok régiók közötti megosztásáról további információt a régiók közötti és a platformfüggetlen megosztásról olvashat.

  • A metaadattárak regionális elkülönítést biztosítanak, de nem az adatelkülönítés alapértelmezett egységeiként szolgálnak. Az adatelkülönítés általában a katalógus szintjén kezdődik. Ha azonban inkább központosított szabályozási modellt szeretne, létrehozhat metaadattárszintű felügyelt tárterületet. A javaslatokért tekintse meg a Felügyelt tárterületet.

  • A metaadattár-rendszergazdai szerepkör nem kötelező. A választható metaadattár-rendszergazdák hozzárendelésével kapcsolatos javaslatokért tekintse meg a rendszergazdai szerepköröket és a hatékony jogosultságokat.

Fontos

Ne regisztrálja a gyakran használt táblákat külső táblákként több metaadattárban. Ha így tesz, a séma, a táblatulajdonságok, a megjegyzések és az A metaadattárba történő írások eredményeként bekövetkező egyéb metaadatok módosítása egyáltalán nem fog regisztrálni a B metaadattárban. Konzisztenciaproblémákat is okozhat a Azure Databricks véglegesítési szolgáltatással.

Katalógusok és sémák

A katalógusok az adatelkülönítés elsődleges egysége a Unity Catalog tipikus adatszabályozási modelljében. A sémák további szervezeti réteget adnak hozzá.

Ajánlott eljárások katalógus- és sémahasználathoz:

  • Rendszerezheti az adatokat és az AI-objektumokat a szervezeti részlegeket és projekteket tükröző katalógusokba és sémákba. Ez gyakran azt jelenti, hogy a katalógusok egy környezeti hatókörnek, csapatnak, üzleti egységnek vagy ezek valamilyen kombinációjának felelnek meg. Ez megkönnyíti a jogosultsági hierarchia használatát a hozzáférés hatékony kezeléséhez.
  • Ha a munkahelyi környezetek és az adatok elkülönítési követelményei azonosak, a katalógusokat egy adott munkaterülethez kötheti. Ha ez szükséges, hozzon létre katalógusokat, amelyek korlátozott munkaterület-csoportokra terjedhetnek ki.
  • A gyártási katalógusok és sémák tulajdonjogát mindig csoportokhoz rendelje, nem pedig egyéni felhasználókhoz.
  • Adjon meg USE CATALOG és USE SCHEMA csak azoknak a felhasználóknak, akiknek meg kell tudniuk tekinteni vagy lekérdezni a bennük lévő adatokat.

További tanácsok a katalógusokon és sémákon való jogosultságok megadásához: Privilege assignment.

Felügyelt tárterület

A felügyelt táblákat és köteteket, azokat az objektumokat, amelyek életciklusát teljes mértékben a Unity Catalog felügyeli, az alapértelmezett tárolási helyeken, más néven felügyelt tárolókban tárolják. A felügyelt tárat a metaadattár, a katalógus vagy a séma szintjén állíthatja be. Az adatok tárolása a hierarchia legalacsonyabb rendelkezésre állási helyén történik. További részletekért lásd: Felügyelt tárhely megadása a Unity Katalógusban.

Ajánlott eljárások felügyelt tárolóhelyekhez:

  • A katalógusszintű tárolást részesítse előnyben elsődleges adatelkülönítési egységként.

    Metaadattárszintű tárolásra volt szükség a Unity Catalog korai környezeteiben, de már nincs szükség rájuk.

  • Ha metaadattárszintű felügyelt helyet szeretne létrehozni, használjon egy dedikált tárolót.

  • Ne használjon olyan tárolót, amely a Unity Katalóguson kívülről érhető el.

    Ha egy külső szolgáltatás vagy főkiszolgáló hozzáfér az adatokhoz a felügyelt tárolóhelyen, megkerüli a Unity Katalógust, a felügyelt táblák és kötetek hozzáférés-vezérlése és naplózása sérül.

  • Ne használjon újra olyan tárolót, amelyet a DBFS-gyökér fájlrendszerhez használtak vagy használtak.

  • Ha tárigényes számítási feladatokkal rendelkezik, ne használjon egyetlen tárfiókot és tárolót felügyelt tároláshoz és más külső helyekhez.

    re:[ADLS] fiókok alapértelmezés szerint másodpercenként 20 000 kérést támogatnak. Ez a munkaterhelés szabályozását és lassulást okozhat. Ha több tárolót használ ugyanabban a tárfiókban, az nem változtatja meg ezt a fiókszintű korlátot. Ezért a tárhelyet több tárfiók között kell elosztania.

    Az ilyen csíkozás láthatatlan lenne a Unity Catalog végfelhasználói számára.

Felügyelt és külső táblák

A felügyelt táblákat teljes mértékben a Unity Catalog felügyeli, ami azt jelenti, hogy a Unity Catalog az egyes felügyelt táblák irányítási és mögöttes adatfájljait is kezeli. Ezek mindig Delta vagy Apache Iceberg formátumúak.

Az olyan táblák, amelyek hozzáférését a Azure Databricks a Unity Catalog felügyeli, de az adatéletciklus és a fájlelrendezés a felhőszolgáltató és más adatplatformok használatával történik. Amikor külső táblát hoz létre az Azure Databricksben, meg kell adnia a helyét, amely egy Unity Catalog külső helyen meghatározott elérési úton kell legyen.

Felügyelt táblák használata:

  • A legtöbb használati esetben. A Databricks felügyelt táblákat és köteteket ajánl, mivel lehetővé teszik a Unity Catalog szabályozási képességeinek és teljesítményoptimalizálásának teljes kihasználását, beleértve a következőket:

    • Automatikus tömörítés
    • Automatikus optimalizálás
    • Gyorsabb metaadat-olvasás (metaadatok gyorsítótárazása)
    • Intelligens fájlméret-optimalizálások

    Az új Azure Databricks funkciók elsőbbséget élveznek a felügyelt táblákkal szemben.

  • Minden új táblához.

Külső táblák használata:

  • Amikor már használja őket, és a Hive metaadattárról a Unity Catalogra vált.

    • A külső táblák használata gyors és zökkenőmentes "egykattintásos" frissítést biztosít az adatok áthelyezése nélkül.
    • A Databricks azt javasolja, hogy végül külső táblákat migráljon felügyelt táblákba.
  • Ha olyan vészhelyreállítási követelményekkel rendelkezik ezekhez az adatokhoz, amelyeket a felügyelt táblák nem tudnak teljesíteni.

    A felügyelt táblák nem regisztrálhatók több metaadattárban ugyanabban a felhőben.

  • Ha a külső olvasóknak vagy íróknak a Databricksen kívülről kell tudniuk kezelni az adatokat.

    Általában el kell kerülnie, hogy a külső hozzáférés még a Unity Catalogban regisztrált külső táblákhoz is engedélyezve legyen. Ez megkerüli a Unity Catalog hozzáférés-vezérlését, auditálását és származástörténetét. A felügyelt táblák használata és az adatok régiók vagy felhőszolgáltatók közötti megosztása az OpenSharing használatával jobb gyakorlat. Ha engedélyeznie kell a külső táblákhoz való külső hozzáférést, korlátozza az olvasást, és minden írás a Azure Databricks és a Unity Katalóguson keresztül történik.

  • Támogatnia kell a nem Delta- vagy nem Iceberg-táblákat, például a Parquetet, az Avro-t, az ORC-t stb.

További javaslatok külső táblák használatához:

  • A Databricks azt javasolja, hogy sémánként egy külső hely használatával hozzon létre külső táblákat.
  • A Databricks határozottan javasolja, hogy a konzisztenciaproblémák kockázata miatt ne regisztráljon egy táblát külső táblaként több metaadattárban. Az egyik metaadattár sémájának módosítása például nem lesz regisztrálva a második metaadattárban. Az OpenSharing használatával megoszthatja az adatokat a metaadattárak között. Lásd : Régiók közötti és platformfüggetlen megosztás.

Lásd még Azure Databricks táblákat.

Felügyelt és külső kötetek

A felügyelt köteteket teljes mértékben a Unity Catalog felügyeli, ami azt jelenti, hogy a Unity Catalog felügyeli a kötet tárolási helyéhez való hozzáférést a felhőszolgáltató fiókjában. Az aktuális kötetek a Azure Databricks kívül felügyelt, de a Unity Katalógusban regisztrált meglévő adatokat képviselik a hozzáférés szabályozásához és naplózásához a Azure Databricks belülről. Amikor külső kötetet hoz létre az Azure Databricks-ben, meg kell adnia a helyét, amelynek egy Unity Catalog externális helyen meghatározott elérési úton kell lennie.

Felügyelt kötetek használata:

  • A legtöbb használati esetben a Unity Catalog szabályozási képességeinek teljes kihasználása.
  • Ha olyan táblákat szeretne létrehozni, amelyek egy kötet fájljaiból indulnak ki futási COPY INTO vagy CTAS-utasításokCREATE TABLE AS nélkül.

Külső kötetek használata:

  • A külső rendszerek által előállított nyers adatok célterületeinek regisztrálása az ETL-folyamatok és egyéb adatmérnöki tevékenységek korai szakaszában történő feldolgozás támogatására.
  • Előkészítési helyek regisztrálása a betöltéshez, például automatikus betöltő, COPY INTO, vagy CTAS-utasítások használatával.
  • Fájltárolási helyeket biztosít az adatelemzők, adatelemzők és gépi tanulási mérnökök számára a feltáró adatelemzési és egyéb adatelemzési feladatok részeként való használatra, ha a felügyelt kötetek nem választhatók.
  • Annak érdekében, hogy Azure Databricks felhasználók hozzáférjenek a más rendszerek által a felhőben létrehozott és a felhőben tárolt tetszőleges fájlokhoz, például a felügyeleti rendszerek vagy IoT-eszközök által rögzített, strukturálatlan adatok (például kép-, hang-, video- és PDF-fájlok), illetve a helyi függőségkezelő rendszerekből vagy CI/CD-folyamatokból exportált kódtárfájlokhoz (JAR-k és Python kerékfájlok).
  • Ha operatív adatokat szeretne tárolni, például naplózási vagy ellenőrzőpont-fájlokat, ha a felügyelt kötetek nem használhatók.

További javaslatok külső kötetek használatához:

  • A Databricks azt javasolja, hogy hozzon létre külső köteteket egy külső helyről egy sémán belül.

Tipp.

Betöltési esetekben, amikor az adatok más helyre másolódnak (például az Auto Loader segítségével vagy COPY INTO), külső köteteket használnak. Külső táblákat akkor használjon, ha az adatokat táblaként szeretné lekérdezni, és nincs benne másolat.

Lásd még: Felügyelt és külső kötetek és külső helyek.

Külső helyek

A külső hely biztonságos objektumai a tárolási hitelesítő adatok és a tárolási útvonalak kombinálásával biztosítják a tárterület-hozzáférés erős vezérlését és naplózását. Fontos megakadályozni, hogy a felhasználók közvetlenül hozzáférjenek a külső helyként regisztrált tárolókhoz, elkerülve a Unity Catalog által biztosított hozzáférés-vezérlést.

Külső helyek hatékony használata:

  • Ügyeljen arra, hogy a külső helyként használt tárolókhoz közvetlen hozzáféréssel rendelkező felhasználók számát korlátozza.

  • Ne csatlakoztassa a tárfiókokat a DBFS-hez, ha külső helyként is használják őket. A Databricks azt javasolja, hogy migrálja a felhőbeli tárolóhelyeken lévő csatlakoztatásokat a Unity Katalógus külső helyére a Catalog Explorer használatával.

  • Külső helyek csak a Unity Catalog és a felhőtárhely közötti kapcsolatok beállításával megbízott rendszergazdák, illetve megbízható adatmérnökök számára hozhatók létre.

    A külső helyek hozzáférést biztosítanak a Unity Katalógusból egy széles körben felölelő felhőbeli tárolóhoz, például egy teljes gyűjtőhöz vagy tárolóhoz (abfss://mycompany-hr-prod@storage-account.dfs.core.windows.net) vagy egy széles körű mellékúthoz (abfss://mycompany-hr-prod@storage-account.dfs.core.windows.net/unity-catalog). A cél az, hogy a felhőgazdák részt vehessenek néhány külső hely beállításában, majd delegálják ezeket a helyeket a szervezet Azure Databricks rendszergazdájának. A Azure Databricks rendszergazda ezután részletesebb engedélyekkel rendelkező területekre rendezheti a külső helyet úgy, hogy külső köteteket vagy külső táblákat regisztrál a külső hely adott előtagjainál.

    Mivel a külső helyek annyira átfogóak, a Databricks azt javasolja, hogy csak olyan rendszergazdának adja meg az CREATE EXTERNAL LOCATION engedélyt, aki a Unity Catalog és a felhőbeli tárolás közötti kapcsolatok beállításával, vagy megbízható adatmérnökökkel van megbízva. A részletesebb hozzáférés biztosítása érdekében a többi felhasználó számára a Databricks azt javasolja, hogy a felhasználók külső táblákat vagy köteteket regisztráljanak külső helyszíneken, és adathozzáférést biztosítsanak táblák vagy kötetek segítségével. Mivel a táblák és kötetek egy katalógus és séma gyermekei, a katalógus- vagy sémagazdák rendelkeznek a hozzáférési engedélyek feletti végső vezérléssel.

    A külső helyekhez való hozzáférést úgy is szabályozhatja, hogy adott munkaterületekhez köti. Lásd: Külső hely hozzárendelése adott munkaterületekhez.

  • Ne adjon általános READ FILES vagy WRITE FILES engedélyeket a külső helyeken a végfelhasználóknak.

    A felhasználók ne használjanak külső helyeket másra, mint táblák, kötetek vagy felügyelt helyek létrehozására. Nem használhatnak külső helyeket az adatelemzéshez vagy más nem táblázatos adathasználati esetekhez való elérésiút-alapú hozzáféréshez.

    A nem táblázatos adatokhoz való elérési útalapú hozzáféréshez használjon köteteket. A kötet elérési útja alatt az adatokhoz való felhőbeli URI-hozzáférést a köteten megadott jogosultságok szabályozzák, nem pedig a kötet tárolási helyének külső helyén megadott jogosultságok.

    A kötetek lehetővé teszik a fájlok használatát SQL-parancsok, dbutils, Spark API-k, REST API-k, Terraform és a fájlok böngészésére, feltöltésére és letöltésére szolgáló felhasználói felület használatával. A kötetek emellett kínálnak egy FUSE-csatlakozást, amely elérhető a helyi fájlrendszerben /Volumes/<catalog_name>/<schema_name>/<volume_name>/ alatt. A FUSE-csatlakoztatással az adattudósok és az ml-mérnökök úgy férhetnek hozzá a fájlokhoz, mintha egy helyi fájlrendszerben lennének, ahogyan azt számos gépi tanulási vagy operációsrendszer-kódtár megköveteli.

    Ha közvetlen hozzáférést kell adnia a külső helyen lévő fájlokhoz (például a felhőbeli tárolóban lévő fájlok felderítéséhez, mielőtt a felhasználó létrehoz egy külső táblát vagy kötetet), akkor engedélyezheti a hozzáférést READ FILES. Ritkán fordulnak elő engedélyezési WRITE FILES esetek.

  • Kerülje az elérési utak átfedését: soha ne hozzon létre külső köteteket vagy táblákat a külső hely gyökerénél.

    Ha külső köteteket vagy táblákat hoz létre a külső hely gyökerénél, nem hozhat létre további külső köteteket vagy táblákat azon a külső helyen. Ehelyett hozzon létre külső köteteket vagy táblákat egy alkönyvtárban a külső helyen belül.

  • Engedélyezze a fájleseményeket az optimális fájlfeldolgozási teljesítmény érdekében.

    Ha a fájlesemények engedélyezve vannak egy külső helyen, Azure Databricks nyomon követi a betöltési metaadatokat a felhőszolgáltatók változásértesítéseinek feldolgozásával. Ez javítja az alsóbb rétegbeli funkciók, például a fájlbetöltési eseményindítók és az automatikus betöltő teljesítményét és megbízhatóságát.

Csak külső helyeket használjon a következők végrehajtásához:

  • Külső táblák és kötetek regisztrálása a CREATE EXTERNAL VOLUME vagy CREATE TABLE parancsok használatával.
  • Helyszín regisztrálása mint felügyelt tároló. A CREATE MANAGED STORAGE jogosultság egy előfeltétel.
  • Mielőtt külső táblát vagy kötetet hoz létre egy adott előtagon, fedezze fel a felhőbeli tárolóban lévő meglévő fájlokat. A READ FILES jogosultság egy előfeltétel. Ezt a jogosultságot takarékosan rendelje hozzá. A részletekért tekintse meg az előző listában szereplő javaslatot.

Külső helyek vs. külső kötetek

A kötetek kiadása előtt egyes Unity Catalog-implementációk közvetlenül külső helyekhez rendeltek READ FILES hozzáférést az adatfeltáráshoz. Mivel olyan kötetek állnak rendelkezésre, amelyek bármilyen formátumban regisztrálják a fájlokat, beleértve a strukturált, félig strukturált és strukturálatlan adatokat is, nincs valódi ok arra, hogy külső helyeket használjon a táblák, kötetek vagy felügyelt helyek létrehozásán kívül. A külső helyek és a kötetek használatának időpontjával kapcsolatos részletes információkért lásd: Felügyelt és külső kötetek és külső helyek.

Régiók közötti és platformfüggetlen megosztás

Régiónként csak egy metaadattár lehet. Ha különböző régiókban szeretné megosztani az adatokat a munkaterületek között, használja a Databricks-to-Databricks OpenSharinget.

Ajánlott eljárások:

  • Használja az egyrégiós metaadattárat az összes szoftverfejlesztési életciklus-hatókörhöz és üzleti egységhez, például fejlesztéshez, teszteléshez, termékfejlesztéshez, értékesítéshez és marketinghez. Győződjön meg arról, hogy a gyakori megosztott adathozzáférést igénylő munkaterületek ugyanabban a régióban találhatók.
  • A Databricks-to-Databricks OpenSharing használata felhőrégiók vagy felhőszolgáltatók között.
  • Használja az OpenSharingot olyan táblákhoz, amelyekhez ritkán férnek hozzá, mivel Ön a felelős a felhőrégióból a felhőrégióba irányuló kimenő forgalomért. Ha a gyakran használt adatokat régiók vagy felhőszolgáltatók között kell megosztania, tekintse meg a következőt: OpenSharing kimenő költségek monitorozása és kezelése (szolgáltatók esetén).

A Databricks-to-Databricks-megosztás használatakor vegye figyelembe a következő korlátozásokat:

  • A vonalas gráfok a metaadattár szintjén jönnek létre, és nem lépik át a régiót vagy a platform határait. Ez akkor is érvényes, ha egy erőforrást ugyanazon Databricks-fiók metaadattáraiban osztanak meg: a forrásból származó életútadatok nem láthatók a célhelyen, és fordítva.
  • A hozzáférés-vezérlés a metaadattár szintjén van definiálva, és nem lépi át a régió vagy a platform határait. Ha egy erőforráshoz jogosultságok vannak hozzárendelve, és az erőforrás meg van osztva a fiók egy másik metaadattárában, az erőforrás jogosultságai nem vonatkoznak a célmegosztásra. Jogosultságokat kell adnia a célmegosztáson a célhelyen.

Számítási konfigurációk

A Databricks számítási szabályzatok használatát javasolja a fürtök szabályokon alapuló konfigurálásának korlátozására. A számítási szabályzatok lehetővé teszik, hogy a felhasználók unitykatalógus-kompatibilis fürtöket hozzanak létre, különösen olyan fürtöket, amelyek standard hozzáférési módot (korábban megosztott hozzáférési módot) vagy dedikált hozzáférési módot (korábban egyfelhasználós vagy hozzárendelt hozzáférési módot) használnak.

Csak azok a fürtök férhetnek hozzá az adatokhoz, amelyek ezen hozzáférési módok egyikét használják a Unity Katalógusban. Minden kiszolgáló nélküli számítás és DBSQL-számítás támogatja a Unity Catalogot.

A Databricks minden számítási feladathoz standard hozzáférési módot javasol. Csak akkor használjon dedikált hozzáférési módot, ha a standard hozzáférési mód nem támogatja a szükséges funkciókat. Lásd a Hozzáférési módokat.

Unity Catalog REST API-k

Amikor közvetlenül hívod a Unity Catalog REST API-kat, kövesd az általános REST API irányelveket , hogy az integrációid gyorsak és megbízhatóak maradjanak a metastore növekedésével:

  • Lapozza a(z) LIST hívásokat. A Unity Catalog LIST API-i, mint például a listatáblák, listágmák és lista katalógusok, oldalakon adják vissza az eredményeket. Állítsd be a max_results=0 értéket, és ismételd ezt a next_page_token paraméterrel minden válaszban, amíg nem kapsz vissza tokent.
  • Kezeld a sebességkorlátokat. Próbáld meg újra a HTTP 429 válaszokat exponenciális visszahúzódással és jitterrel.
  • Vágd le a válaszmezőket. Amikor a táblák listázásakor csak a nevüket szeretnéd lekérni, állítsd be a omit_properties=true és omit_columns=true értékét, hogy kisebb válaszokat kapj gyorsabban.

A Databricks SDK-k és a Databricks CLI-k automatikusan paginázódnak, így ezeket a mintákat csak akkor kell megvalósítani, ha közvetlenül hívod a REST API-t.