OneLake og Azure Data Lake Storage (ADLS) Gen2 API-paritet

OneLake støtter de samme API-ene som Azure Data Lake Storage (ADLS) Gen2, slik at brukere kan lese, skrive og administrere dataene sine i OneLake med verktøyene de allerede bruker i dag. Fordi OneLake er en administrert, logisk datainnsjø, administreres noen funksjoner på en annen måte enn i Azure Storage, og ikke alle virkemåter støttes over OneLake. Denne siden beskriver disse forskjellene, inkludert OneLake-administrerte mapper, API-forskjeller og åpen kilde kompatibilitet.

Administrerte OneLake-mapper

Arbeidsområdene og dataelementene i Fabric-leieren definerer strukturen til OneLake. Administrasjon av arbeidsområder og elementer utføres gjennom Fabric-opplevelser – OneLake støtter ikke oppretting, oppdatering eller sletting av arbeidsområder eller elementer gjennom ADLS Gen2 API-er. OneLake tillater bare HEAD-anrop på arbeidsområdenivå (beholdernivå) og leiernivå (konto), da du må gjøre endringer i tenanten og arbeidsområdene i administrasjonsportalen for Fabric.

OneLake håndhever også en mappestruktur for Fabric-elementer, som beskytter elementer og deres administrerte undermapper mot oppretting, sletting eller endring av nytt navn gjennom ADLS Gen2-API-er. Stoffadministrerte mapper inkluderer mappen på øverste nivå i et element (for eksempel /MyLakehouse.lakehouse) og det første nivået av mapper i den (for eksempel /MyLakehouse.lakehouse/Files and /MyLakehouse.lakehouse/Tables).

Du kan utføre CRUD-operasjoner på en hvilken som helst mappe eller fil som er opprettet i disse administrerte mappene, og utføre skrivebeskyttede operasjoner på arbeidsområder og elementmapper.

Forespørselshoder og parametere som ikke støttes

Selv i brukeropprettede filer og mapper begrenser OneLake noen stoffbehandlingsoperasjoner gjennom ADLS Gen2 API-er. Du må bruke stoffopplevelser til å oppdatere tillatelser eller redigere elementer og arbeidsområder, og Fabric administrerer andre alternativer, for eksempel tilgangsnivåer.

OneLake godtar nesten alle de samme overskriftene som ADLS Gen2, og ignorerer bare noen overskrifter som er relatert til ulovlige handlinger på OneLake. Siden disse overskriftene ikke endrer virkemåten til hele samtalen, ignorerer OneLake de forbudte overskriftene, returnerer dem i et nytt svarhode for x-ms-rejected-headers og tillater resten av samtalen. OneLake ignorerer for eksempel parameteren x-ms-owner i et PUT-anrop, siden Fabric og OneLake ikke har samme konsept som å eie brukere som Azure Storage.

OneLake avviser forespørsler som inneholder ikke-tillatte spørringsparametere siden spørringsparametere endrer virkemåten til hele samtalen. UPDATE-kall med setAccessControl-parameteren blokkeres for eksempel fordi OneLake aldri støtter innstilling av tilgangskontroll via Azure Storage-API-er.

OneLake tillater ikke følgende virkemåter og tilhørende forespørselsoverskrifter og URI-parametere:

  • Angi tilgangskontroll
    • URI-parameter:
      • handling: setAccessControl (forespørsel avvist)
      • handling: setAccessControlRecursive (forespørsel avvist)
    • Forespørselshoder:
      • x-ms-eier (topptekst ignorert)
      • x-ms-group (topptekst ignorert)
      • x-ms-tillatelser (topptekst ignorert)
      • x-ms-group (topptekst ignorert)
      • x-ms-acls (topptekst ignorert)
  • Angi krypteringsomfang
    • Forespørselshoder:
      • x-ms-encryption-key (topptekst ignorert)
      • x-ms-encryption-key (topptekst ignorert)
      • x-ms-encryption-algorithm:AES256 (Topptekst ignorert)
  • Angi tilgangsnivå
    • Forespørselshoder:
      • x-ms-access-tier (topptekst ignorert)

Forskjeller i svarhode

Siden OneLake bruker en annen tillatelsesmodell enn ADLS Gen2, håndteres svaroverskrifter relatert til tillatelser på en annen måte:

  • X-ms-owner og x-ms-group returnerer alltid $superuser fordi OneLake ikke har egne brukere eller grupper
  • X-ms-tillatelser returnerer alltid --------- fordi OneLake ikke har tillatelser til å eie brukere, grupper eller offentlig tilgang
  • X-ms-acl returnerer Stoff-tillatelsene for anropsbrukeren som er konvertert til en POSIX-tilgangskontrolliste (ACL), i skjemaet rwx

Integrering av åpen kildekode

Siden OneLake støtter de samme API-ene som ADLS Gen2, fungerer mange åpen kilde biblioteker og pakker som er kompatible med ADLS Gen2 sømløst med OneLake. Andre biblioteker kan kreve små oppdateringer for å imøtekomme OneLake-endepunkter eller andre kompatibilitetsproblemer. Følgende biblioteker er bekreftet å være kompatible med OneLake på grunn av nylige endringer. Denne listen er ikke uttømmende:

Eksempler

Listeelementer i et arbeidsområde

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

Opprette en mappe i et lakehouse

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