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


Mik azok a katalógusok az Azure Databricksben?

A katalógus az Azure Databricks Unity Catalog adatszabályozási modelljének elsődleges adatszervezési egysége. Ez a cikk áttekintést nyújt a Unity Catalog katalógusairól és azok használatának legjobb módjáról.

A katalógusok a Unity Catalog háromszintű névterének (catalog.schema.table-etc) első rétegei. Sémákat tartalmaznak, amelyek viszont táblákat, nézeteket, köteteket, modelleket és függvényeket tartalmazhatnak. A katalógusok egy Unity Catalog-metaadattárban vannak regisztrálva az Azure Databricks-fiókban.

Unity Catalog objektummodell-diagram, a katalógusra összpontosítva

Hogyan rendszerezhetem az adataimat katalógusokba?

Az adatszabályozási modell tervezésekor alaposan át kell gondolnia a létrehozott katalógusokat. A szervezet adatszabályozási modelljének legmagasabb szintjeként minden katalógusnak az adatelkülönítés logikai egységét és az adathozzáférés logikai kategóriáját kell képviselnie, lehetővé téve a támogatások hatékony hierarchiáját a sémákra és a bennük található adatobjektumokra. A katalógusok ezért gyakran tükrözik a szervezeti egységeket vagy a szoftverfejlesztési életciklus hatóköreit. Választhatja például az éles adatok katalógusát és a fejlesztési adatok katalógusát, vagy a nem ügyféladatok katalógusát, valamint a bizalmas ügyféladatok katalógusát.

Adatelkülönítés katalógusokkal

Minden katalógusnak általában saját felügyelt tárolási helye van a felügyelt táblák és kötetek tárolásához, így a katalógus szintjén fizikai adatok elkülönítése biztosítható. Dönthet úgy is, hogy a metaadattár szintjén tárolja az adatokat, és alapértelmezett tárolási helyet biztosít azoknak a katalógusoknak, amelyek nem rendelkeznek saját felügyelt tárhellyel. A részletesebb adatelkülönítés érdekében sémaszinten adhat hozzá tárterületet.

Mivel az Azure Databricks-fiók régiónként egy metaadattárat is magában hordoz, a katalógusok eredendően régiónként vannak elkülönítve.

További információ: Mik azok az adatbázis-objektumok az Azure Databricksben?

Katalógusszintű jogosultságok

Mivel a Unity Catalog-objektumokra vonatkozó támogatásokat az objektum gyermekei öröklik, a katalógus tulajdonjoga vagy a katalógus széles körű jogosultságai rendkívül hatékonyak. A katalógustulajdonosok például minden jogosultsággal rendelkeznek a katalógusban és a katalógusban lévő objektumokon, és hozzáférést biztosíthatnak a katalógus bármely objektumához. A katalógusban szereplő SELECT felhasználók a katalógus bármely táblázatát elolvashatják. A katalógusban szereplő CREATE TABLE felhasználók a katalógus bármely sémájában létrehozhatnak egy táblát.

A minimális jogosultság elvének érvényesítése érdekében, ahol a felhasználók rendelkeznek a szükséges feladatok elvégzéséhez szükséges minimális hozzáféréssel, általában csak a felhasználó által igényelt hierarchia adott objektumaihoz vagy szintjeihez ad hozzáférést. A katalógusszintű jogosultságok azonban lehetővé teszik, hogy a katalógus tulajdonosa kezelje, amit az alacsonyabb szintű objektumok tulajdonosai adhatnak. Még akkor is, ha egy felhasználó hozzáférést kap egy alacsony szintű adatobjektumhoz, például egy táblához, az adott felhasználó csak akkor férhet hozzá a táblához, ha a táblát tartalmazó katalógusban is rendelkezik USE CATALOG jogosultsággal.

További információ: A Unity Catalog objektumtulajdonságainak kezelése, az általános Unity Catalog-jogosultságtípusok, valamint az adatszabályozás és az adatelkülönítés építőelemei.

Katalógustípusok

Katalógus létrehozásakor két lehetőség közül választhat:

  • Standard katalógus: az a tipikus katalógus, amely elsődleges egységként szolgál az adatobjektumok Unity-katalógusban való rendszerezéséhez. Ez az a katalógustípus, amelyet ebben a cikkben tárgyalunk.
  • Külföldi katalógus: egy Unity Catalog-objektum, amelyet csak Lakehouse Federation-forgatókönyvekben használnak. A külföldi katalógus egy külső adatrendszer adatbázisát tükrözi, így írásvédett lekérdezéseket hajthat végre az adott adatrendszeren az Azure Databricks-munkaterületen. Lásd : Mi az a Lakehouse Federation?.

A két katalógustípus mellett az Azure Databricks automatikusan kiépít a következő katalógusokat egy új munkaterület létrehozásakor:

  • hive_metastore katalógus: Ez az Azure Databricks-munkaterületeken található régi Hive metaadattár által kezelt összes adat adattára. Ha egy meglévő, nem Unity Catalog-munkaterületet unity katalógussá konvertál, a régi Hive metaadattárban regisztrált összes objektum megjelenik a hive_metastore katalógus Unity-katalógusában. A Hive metaadattára és a Unity Catalog együttes használatával kapcsolatos további információkért lásd : A Unity Katalógus használata és az örökölt Hive-metaadattár. A Hive metaadattára elavult, és minden Azure Databricks-munkaterületnek át kell költöznie a Unity Catalogba.
  • Munkaterület-katalógus: Az összes új munkaterületen ez a katalógus alapértelmezés szerint létrejön Önnek. Általában a munkaterület nevével osztja meg a nevét. Ha ez a katalógus létezik, a munkaterület összes felhasználója (és csak a munkaterülete) alapértelmezés szerint hozzáfér hozzá, így a felhasználók kényelmesen kipróbálhatják az adatobjektumok létrehozásának és elérésének folyamatát a Unity Katalógusban. Lásd : 1. lépés: Győződjön meg arról, hogy a munkaterület engedélyezve van a Unity Katalógusban.

Alapértelmezett katalógus

Minden olyan munkaterülethez, amely engedélyezve van a Unity Cataloghoz, egy alapértelmezett katalógus van konfigurálva. Az alapértelmezett katalógus lehetővé teszi az adatműveletek elvégzését katalógus megadása nélkül. Ha adatműveletek végrehajtásakor kihagyja a legfelső szintű katalógus nevét, a rendszer feltételezi az alapértelmezett katalógust.

Ha a munkaterület automatikusan engedélyezve lett a Unity Cataloghoz, az előre kiosztott munkaterület-katalógus lesz az alapértelmezett katalógus. A munkaterület rendszergazdája szükség szerint módosíthatja az alapértelmezett katalógust.

További információ: Az alapértelmezett katalógus kezelése.

Munkaterület-katalógus kötése

Ha munkaterületekkel elkülöníti a felhasználói adatokhoz való hozzáférést, érdemes lehet munkaterület-katalógus kötéseket használnia. A munkaterület-katalógus kötései lehetővé teszik a katalógus hozzáférésének munkaterülethatárok szerinti korlátozását. Biztosíthatja például, hogy a munkaterület rendszergazdái és a felhasználók csak éles munkaterületi környezetből prod_catalog férhessenek hozzá az éles adatokhoz. prod_workspace A katalógusok meg vannak osztva az aktuális metaadattárhoz csatolt összes munkaterülettel, hacsak nem ad meg kötést. Lásd: Az adatok rendszerezése és a katalógus hozzáférésének korlátozása adott munkaterületekhez.

Ha a munkaterület automatikusan engedélyezve lett a Unity Cataloghoz, az előre kiépített munkaterület-katalógus alapértelmezés szerint a munkaterülethez van kötve.

További információ