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


Mik azok a Unity Catalog-kötetek?

A kötetek Unity Catalog-objektumok, amelyek lehetővé teszik a nem táblázatos adathalmazok szabályozását. A kötetek egy felhőalapú objektumtárhelyen lévő logikai tárterületet jelölnek. A kötetek lehetővé teszik a fájlok elérését, tárolását, szabályozását és rendszerezését.

Míg a táblák táblázatos adathalmazok szabályozását biztosítják, a kötetek szabályozást adnak a nem táblázatos adathalmazokhoz. Kötetekkel bármilyen formátumban tárolhatja és elérheti a fájlokat, beleértve a strukturált, félig strukturált és strukturálatlan adatokat is.

A Databricks kötetek használatát javasolja a nem táblázatos adatokhoz való hozzáférés szabályozásához. A táblákhoz hasonlóan a kötetek is felügyelhetők vagy külsők.

Fontos

A kötetek nem használhatók táblák helyének. A kötetek csak útvonalalapú adathozzáférésre szolgálnak. Táblázatokat akkor használjon, ha táblázatos adatokkal szeretne dolgozni a Unity Catalogban.

Az alábbi cikkek további információt nyújtanak a kötetek használatával kapcsolatban:

Feljegyzés

Kötetek használatakor sql-raktárat vagy Databricks Runtime 13.3 LTS-t vagy újabb verziót futtató fürtöt kell használnia, kivéve, ha Azure Databricks felhasználói felületeket használ, például a Catalog Explorert.

Mi az a felügyelt kötet?

A felügyelt kötet egy Unity-katalógus által szabályozott tárolókötet, amely a tárolóséma felügyelt tárolási helyén jön létre. Lásd: Felügyelt tárhely megadása a Unity Katalógusban.

A felügyelt kötetek lehetővé teszik a szabályozott tárterület létrehozását a fájlok külső helyek és a tár hitelesítő adatainak többletterhelése nélkül történő használatához. A felügyelt kötetek létrehozásakor nem kell helyet megadnia, és a felügyelt kötetekben lévő adatokhoz való összes fájlhozzáférés a Unity Catalog által kezelt útvonalakon keresztül történik.

Mi az a külső kötet?

A külső kötet egy unitykatalógus által szabályozott tárolókötet, amely egy külső helyen lévő címtárban van regisztrálva a Unity Katalógus által szabályozott tárolási hitelesítő adatokkal.

A Unity Catalog nem kezeli a külső kötetekben lévő fájlok életciklusát és elrendezését. Külső kötet elvetésekor a Unity Catalog nem törli a mögöttes adatokat.

Milyen elérési utat használ a kötet fájljainak eléréséhez?

A kötetek a Unity Catalog háromszintű névterénekcatalog.schema.volume harmadik szintjén ():

Unity Catalog objektummodell-diagram, kötetre összpontosítva

A kötetek elérésének elérési útja ugyanaz, akár Apache Sparkot, SQL-t, Pythont vagy más nyelveket és kódtárakat használ. Ez eltér az Azure Databricks-munkaterülethez kötött objektumtárolóban lévő fájlok régi hozzáférési mintáitól.

A kötetekben lévő fájlok elérésének elérési útja a következő formátumot használja:

/Volumes/<catalog>/<schema>/<volume>/<path>/<file-name>

Az Azure Databricks egy opcionális dbfs:/ sémát is támogat az Apache Spark használatakor, így az alábbi elérési út is működik:

dbfs:/Volumes/<catalog>/<schema>/<volume>/<path>/<file-name>

Az elérési út sorrendje /<catalog>/<schema>/<volume> a fájlhoz társított három Unity Catalog-objektumnévnek felel meg. Ezek az elérésiút-elemek írásvédettek, és nem írhatók közvetlenül a felhasználók számára, ami azt jelenti, hogy fájlrendszerműveletekkel nem lehet létrehozni vagy törölni ezeket a könyvtárakat. A rendszer automatikusan felügyeli őket, és szinkronban tartja őket a megfelelő Unity Catalog-entitásokkal.

Feljegyzés

A külső kötetek adataihoz felhőalapú tárolási URI-k használatával is hozzáférhet.

Példajegyzetfüzet: Kötetek létrehozása és használata

Az alábbi jegyzetfüzet bemutatja a Unity Catalog-kötetek létrehozásához és használatához használt alapvető SQL-szintaxist.

Oktatóanyag: Unity Catalog-kötetek jegyzetfüzete

Jegyzetfüzet beszerzése

Fenntartott elérési utak kötetekhez

A kötetek a következő fenntartott elérési utakat vezetik be a kötetek eléréséhez:

  • dbfs:/Volumes
  • /Volumes

Feljegyzés

Az elérési utakat az Apache Spark API-kból származó lehetséges elírásokhoz is fenntartjuk, és dbutilsbeleértve /volumesazt is, /Volume/volumehogy megelőzi-e dbfs:/őket. Az elérési út /dbfs/Volumes szintén fenntartott, de nem használható kötetek eléréséhez.

A kötetek csak a Databricks Runtime 13.3 LTS-en és újabb verziókban támogatottak. A Databricks Runtime 12.2 LTS és újabb verziókban az elérési utakon végzett /Volumes műveletek sikeresek lehetnek, de a vártnak megfelelően adatokat írhatnak a számítási fürtökhöz csatlakoztatott rövid élettartamú tárolólemezekre ahelyett, hogy az adatokat a Unity Katalógus köteteibe tárolhatnák.

Fontos

Ha a DBFS-gyökér egy fenntartott elérési útján tárolja a meglévő adatokat, támogatási jegyet is beszúrhat, hogy ideiglenes hozzáférést kapjon ezekhez az adatokhoz, hogy áthelyezhesse őket egy másik helyre.

Korlátozások

A Unity Catalog-kötetek használatához unitykatalógus-kompatibilis számítást kell használnia. A kötetek nem támogatják az összes számítási feladatot.

Feljegyzés

A kötetek nem támogatják dbutils.fs a végrehajtóknak elosztott parancsokat.

A következő korlátozások érvényesek:

A Databricks Runtime 14.3 LTS-ben és újabb verziókban:

  • Egyfelhasználós fürtök esetén a Kötetek nem érhetők el a Scala szálaiból és alfolyamataiból.

A Databricks Runtime 14.2-ben és az alábbi verzióban:

  • Megosztott hozzáférési móddal konfigurált számítás esetén nem használhatja az UDF-eket a kötetek eléréséhez.
    • Mind a Python, mind a Scala hozzáfér a FUSE-hoz az illesztőprogramtól, a végrehajtóktól azonban nem.
    • Az I/O-műveleteket végrehajtó Scala-kód futtatható az illesztőprogramon, a végrehajtókon azonban nem.
  • Az egyfelhasználós hozzáférési móddal konfigurált számítás esetében a Scala nem támogatja a FUSE-t, a Scala IO-kódokat, amely kötetelérési útvonalakkal vagy Scala UDF-ekkel fér hozzá az adatokhoz. A Python UDF-ek egyfelhasználós hozzáférési módban támogatottak.

Az összes támogatott Databricks Runtime-verzión:

  • A Unity Catalog UDF-jei nem támogatják a kötetfájl elérési útjainak elérését.

  • RdD-kből nem lehet köteteket elérni.

  • A spark-submit nem használható kötetben tárolt JAR-ekkel.

  • Nem definiálhat függőségeket a keréken vagy JAR-fájlon belüli kötetútvonalakon keresztül elért más kódtárakhoz.

  • A Unity Catalog-objektumokat nem listázhatja a minták vagy /Volumes/<catalog-name>/<schema-name> minták /Volumes/<catalog-name> használatával. Olyan teljes elérési utat kell használnia, amely tartalmazza a kötet nevét.

  • A REST API DBFS-végpontja nem támogatja a kötetek elérési útját.

  • A kötetek ki vannak zárva a globális keresési eredményekből az Azure Databricks-munkaterületen.

  • A fürtnaplók kézbesítésének célhelyeként nem adhat meg köteteket.

  • %sh mv nem támogatott fájlok kötetek közötti áthelyezéséhez. Használja dbutils.fs.mv vagy %sh cp használja helyette.

  • Kötetekkel nem hozható létre egyéni Hadoop-fájlrendszer, ami azt jelenti, hogy az alábbiak nem támogatottak:

    import org.apache.hadoop.fs.Path
    val path =  new Path("dbfs:/Volumes/main/default/test-volume/file.txt")
    val fs = path.getFileSystem(sc.hadoopConfiguration)
    fs.listStatus(path)
    
  • A kötetek nem érhetők el az Azure Government-régiókban vagy a FedRAMP-megfelelőségtel rendelkező munkaterületeken.

  • Az elérési út formátumát egy sémával dbfs:/ kell használnia az Azure Data Factory-kódtár konfigurációs paneljén. Például: dbfs:/Volumes/<catalog-name>/<schema-name>/<volume-name>/file.