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


OneLake és Azure Data Lake Storage (ADLS) Gen2 API paritás

A OneLake ugyanazokat az API-kat támogatja, mint az Azure Data Lake Storage (ADLS) Gen2, így a felhasználók a oneLake-ben olvashatják, írhatják és kezelhetik az adataikat a ma már használt eszközökkel. Mivel a OneLake egy felügyelt, logikai adattó, egyes funkciók kezelése másként történik, mint az Azure Storage-ban, és nem minden viselkedés támogatott a OneLake-en keresztül. Ez a lap részletesen ismerteti ezeket a különbségeket, beleértve a OneLake által felügyelt mappákat, az API-különbségeket és a nyílt forráskód kompatibilitást.

Felügyelt OneLake-mappák

A Fabric-bérlő munkaterületei és adatelemei határozzák meg a OneLake struktúráját. A munkaterületek és elemek kezelése a Fabric-szolgáltatásokon keresztül történik – a OneLake nem támogatja munkaterületek vagy elemek létrehozását, frissítését vagy törlését az ADLS Gen2 API-kkal. A OneLake csak a munkaterület (tároló) és a bérlő (fiók) szintjén engedélyezi a HEAD-hívásokat, mivel módosítania kell a bérlőt és a munkaterületeket a Háló felügyeleti portálján.

A OneLake emellett a Fabric-elemek mappastruktúráját is kikényszeríti, így védi az elemeket és a felügyelt almappákat az ADLS Gen2 API-kkal való létrehozástól, törléstől vagy átnevezéstől. A hálóval felügyelt mappák közé tartozik egy elem legfelső szintű mappája (például /MyLakehouse.lakehouse) és a benne lévő mappák első szintje (például /MyLakehouse.lakehouse/Files és /MyLakehouse.lakehouse/Tables).

A CRUD-műveleteket az ezekben a felügyelt mappákban létrehozott bármely mappán vagy fájlon végrehajthatja, és írásvédett műveleteket hajthat végre a munkaterületen és az elemmappákon.

Nem támogatott kérelemfejlécek és paraméterek

A OneLake még a felhasználó által létrehozott fájlokban és mappákban is korlátozza a Fabric felügyeleti műveleteit az ADLS Gen2 API-kkal. Az engedélyek frissítéséhez vagy az elemek és munkaterületek szerkesztéséhez Fabric-szolgáltatásokat kell használnia, a Fabric pedig más beállításokat, például hozzáférési szinteket kezel.

A OneLake szinte az összes fejlécet elfogadja, mint az ADLS Gen2, figyelmen kívül hagyva csak néhány fejlécet, amelyek a OneLake nem engedélyezett műveleteihez kapcsolódnak. Mivel ezek az élőfejek nem változtatják meg a teljes hívás viselkedését, a OneLake figyelmen kívül hagyja a tiltott fejléceket, visszaadja őket egy új "x-ms-rejected-headers" válaszfejlécben, és engedélyezi a hívás többi részét. A OneLake például figyelmen kívül hagyja az "x-ms-owner" paramétert egy PUT-hívásban, mivel a Fabric és a OneLake nem ugyanazzal a koncepcióval rendelkezik, mint az Azure Storage.

A OneLake elutasítja a nem engedélyezett lekérdezési paramétereket tartalmazó kérelmeket, mivel a lekérdezési paraméterek megváltoztatják a teljes hívás viselkedését. Például a setAccessControl paraméterrel rendelkező UPDATE-hívások le vannak tiltva, mivel a OneLake soha nem támogatja a hozzáférés-vezérlés beállítását az Azure Storage API-kkal.

A OneLake nem engedélyezi a következő viselkedéseket, valamint a hozzájuk tartozó kérésfejléceket és URI-paramétereket:

  • Hozzáférés-vezérlés beállítása
    • URI-paraméter:
      • művelet: setAccessControl (Elutasított kérelem)
      • művelet: setAccessControlRecursive (Elutasított kérelem)
    • Kérelemfejlécek:
      • x-ms-owner (a fejléc figyelmen kívül hagyva)
      • x-ms-group (a fejléc figyelmen kívül hagyva)
      • x-ms-permissions (Fejléc figyelmen kívül hagyva)
      • x-ms-group (a fejléc figyelmen kívül hagyva)
      • x-ms-acls (Fejléc figyelmen kívül hagyva)
  • Titkosítási hatókör beállítása
    • Kérelemfejlécek:
      • x-ms-encryption-key (Fejléc figyelmen kívül hagyva)
      • x-ms-encryption-key (Fejléc figyelmen kívül hagyva)
      • x-ms-encryption-algorithm:AES256 (Fejléc figyelmen kívül hagyva)
  • Hozzáférési szint beállítása
    • Kérelemfejlécek:
      • x-ms-access-tier (Fejléc figyelmen kívül hagyva)

Válaszfejléc eltérései

Mivel a OneLake az ADLS Gen2-től eltérő engedélymodellt használ, az engedélyekhez kapcsolódó válaszfejlécek kezelése eltérő:

  • Az "x-ms-owner" és az "x-ms-group" mindig a "$superuser" értéket adja vissza, mivel a OneLake nem rendelkezik tulajdonos felhasználók vagy csoportok
  • Az "x-ms-permissions" mindig "---------" értéket ad vissza, mivel a OneLake nem rendelkezik felhasználói, csoport- vagy nyilvános hozzáférési engedélyekkel
  • Az "x-ms-acl" a POSIX hozzáférés-vezérlési listává (ACL) konvertált hívó felhasználó hálóengedélyeit adja vissza "rwx" formátumban

Nyílt forráskódú integráció

Mivel a OneLake ugyanazokat az API-kat támogatja, mint az ADLS Gen2, sok nyílt forráskód az ADLS Gen2-vel kompatibilis kódtárak és csomagok zökkenőmentesen működnek a OneLake-vel. Más kódtárak kis frissítéseket igényelhetnek a OneLake-végpontok vagy más kompatibilitási problémák megoldásához. A legutóbbi módosítások miatt a következő kódtárak kompatibilisek lesznek a OneLake-lel. Ez a lista nem teljes:

Példák

Elemek listázása egy munkaterületen belül

GET https://onelake.dfs.fabric.microsoft.com/myWorkspace?resource=filesystem&recursive=false

Mappa létrehozása egy tóházban

PUT https://onelake.dfs.fabric.microsoft.com/myWorkspace/myLakehouse.Lakehouse/Files/newFolder/?resource=directory