Zdieľať cez


Rovnosť rozhrania API OneLake a Azure Data Lake Storage (ADLS) Gen2

OneLake podporuje rovnaké rozhrania API ako Azure Data Lake Storage (ADLS) Gen2, čo používateľom umožňuje čítať, zapisovať a spravovať svoje údaje v službe OneLake s nástrojmi, ktoré už dnes používajú. Keďže OneLake je spravované, logické dátové jazero, niektoré funkcie sa spravujú inak ako v službe Azure Storage a niektoré správanie nie je podporované v službe OneLake. Na tejto stránke sú uvedené rozdiely vrátane spravovaných priečinkov OneLake, rozdielov medzi rozhraniami API a kompatibility open-source.

Spravované priečinky OneLake

Pracovné priestory a položky údajov v nájomníkovi služby Fabric definujú štruktúru služby OneLake. Spravovanie pracovných priestorov a položiek sa vykonáva prostredníctvom prostredí služby Fabric – služba OneLake nepodporuje vytváranie, aktualizáciu ani odstraňovanie pracovných priestorov či položiek prostredníctvom rozhraní ADLS Gen2 API. OneLake umožňuje len volania HEAD na úrovni pracovného priestoru (kontajnera) a na úrovni nájomníka (konta), pretože je potrebné vykonať zmeny v nájomníkovi a pracovných priestoroch na portáli na správu služby Fabric.

OneLake tiež vynucuje štruktúru priečinkov pre položky služby Fabric, pričom chráni položky a ich spravované podpriečinky pred vytvorením, odstránením alebo premenovaním prostredníctvom rozhraní ADLS Gen2 API. Spravované priečinky služby Fabric zahŕňajú priečinok najvyššej úrovne v položke (napríklad /MyLakehouse.lakehouse) a prvú úroveň priečinkov, ktoré obsahuje (napríklad /MyLakehouse.lakehouse/Files a /MyLakehouse.lakehouse/Tables).

Operácie CRUD môžete vykonávať s ľubovoľným priečinkom alebo súborom vytvoreným v týchto spravovaných priečinkoch a vykonávať operácie iba na čítanie v pracovnom priestore a priečinkoch položiek.

Nepodporované hlavičky a parametre požiadaviek

Dokonca aj v súboroch a priečinkoch vytvorených používateľom obmedzuje OneLake niektoré operácie správy služby Fabric prostredníctvom rozhraní ADLS Gen2 API. Prostredie služby Fabric je potrebné použiť na aktualizáciu povolení alebo úpravu položiek a pracovných priestorov a služba Fabric spravuje ďalšie možnosti, ako sú úrovne prístupu.

OneLake prijíma takmer všetky rovnaké hlavičky ako ADLS Gen2, pričom ignoruje iba niektoré hlavičky, ktoré sa týkajú nepovolených akcií v službe OneLake. Keďže tieto hlavičky nemenia správanie celého volania, funkcia OneLake ignoruje zakázané hlavičky, vráti ich v novej hlavičke odpovede x-ms-rejected-headers a povoľuje zvyšok volania. OneLake napríklad ignoruje parameter x-ms-owner v volaní PUT, pretože služby Fabric a OneLake nemajú rovnaký koncept vlastniť používateľov ako Azure Storage.

OneLake zamietne žiadosti obsahujúce nepovolené parametre dotazu, pretože parametre dotazu menia správanie celého volania. Napríklad volania UPDATE s parametrom setAccessControl sú zablokované, pretože OneLake nikdy nepodporuje nastavenie riadenia prístupu cez rozhrania API Azure Storage.

Služba OneLake nepovoľuje nasledujúce správanie a súvisiace hlavičky požiadaviek a parametre URI:

  • Nastavenie riadenia prístupu
    • Parameter URI:
      • akcia: setAccessControl (Žiadosť o zamietnutie)
      • akcia: setAccessControlRecursive (Žiadosť bola zamietnutá)
    • Hlavičky požiadavky:
      • x-ms-owner (hlavička sa ignoruje)
      • x-ms-group (Ignorovanie hlavičky)
      • x-ms-permissions (ignorujú sa hlavičky)
      • x-ms-group (Ignorovanie hlavičky)
      • x-ms-acls (ignorujú sa hlavičky)
  • Nastavenie rozsahu šifrovania
    • Hlavičky požiadavky:
      • x-ms-encryption-key (hlavička sa ignoruje)
      • x-ms-encryption-key (hlavička sa ignoruje)
      • x-ms-encryption-algorithm:AES256 (Hlavička sa ignoruje)
  • Nastavenie úrovne prístupu
    • Hlavičky požiadavky:
      • x-ms-access-tier (hlavička sa ignoruje)

Rozdiely v hlavičkách odpovede

Keďže oneLake používa iný model povolení ako ADLS Gen2, hlavičky odpovede týkajúce sa povolení sa spracovávajú inak:

  • x-ms-owner a x-ms-group vždy vrátia $superuser, pretože OneLake nevlastní používateľov ani skupiny
  • x-ms-permissions vždy vráti ---------, pretože OneLake nevlastní používateľov, skupiny ani povolenia na verejný prístup.
  • x-ms-acl vráti povolenia fabric pre volajúceho používateľa skonvertované na zoznam riadenia prístupu POSIX (ACL) vo forme rwx.

Integrácia s otvoreným zdrojom

Keďže OneLake podporuje rovnaké rozhrania API ako ADLS Gen2, mnohé knižnice a balíky open-source kompatibilné s ADLS Gen2 fungujú bez problémov s funkciou OneLake. Iné knižnice môžu vyžadovať malé aktualizácie pre koncové body OneLake alebo iné problémy s kompatibilitou. Pre posledné zmeny sú knižnice potvrdené, že sú kompatibilné s oneLakeom. Tento zoznam nie je úplný:

Príklady

Položky zoznamu v rámci pracovného priestoru

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

Vytvorenie priečinka v službe Lakehouse

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