Delen via


Problemen met de Azure Data Lake Storage-connectors in Azure Data Factory en Azure Synapse oplossen

VAN TOEPASSING OP: Azure Data Factory Azure Synapse Analytics

Tip

Probeer Data Factory uit in Microsoft Fabric, een alles-in-één analyseoplossing voor ondernemingen. Microsoft Fabric omvat alles, van gegevensverplaatsing tot gegevenswetenschap, realtime analyses, business intelligence en rapportage. Meer informatie over het gratis starten van een nieuwe proefversie .

Dit artikel bevat suggesties voor het oplossen van veelvoorkomende problemen met de Azure Data Lake Storage Gen1- en Gen2-connectors in Azure Data Factory en Azure Synapse.

Azure Data Lake Storage Gen1

Foutbericht: De onderliggende verbinding is gesloten: kan geen vertrouwensrelatie tot stand brengen voor het beveiligde SSL/TLS-kanaal.

  • Symptomen: Copy-activiteit mislukt met de volgende fout:

    Message: ErrorCode = UserErrorFailedFileOperation, Error Message = The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel.

  • Oorzaak: De certificaatvalidatie is mislukt tijdens de TLS-handshake.

  • Oplossing: Gebruik de gefaseerde kopie als tijdelijke oplossing om de TLS-validatie (Transport Layer Security) voor Azure Data Lake Storage Gen1 over te slaan. U moet dit probleem reproduceren en de netwerkmonitortracering (netmon) verzamelen en vervolgens contact opnemen met uw netwerkteam om de lokale netwerkconfiguratie te controleren.

    Diagram van Azure Data Lake Storage Gen1-verbindingen voor het oplossen van problemen.

Foutbericht: De externe server heeft een fout geretourneerd: (403) Verboden

  • Symptomen: Copy-activiteit mislukken met de volgende fout:

    Message: The remote server returned an error: (403) Forbidden. Response details: {"RemoteException":{"exception":"AccessControlException""message":"CREATE failed with error 0x83090aa2 (Forbidden. ACL verification failed. Either the resource does not exist or the user is not authorized to perform the requested operation.)....

  • Oorzaak: Een mogelijke oorzaak is dat de service-principal of beheerde identiteit die u gebruikt, geen toegang heeft tot bepaalde mappen of bestanden.

  • Oplossing: Verleen de juiste machtigingen aan alle mappen en submappen die u moet kopiëren. Zie Gegevens kopiëren naar of van Azure Data Lake Storage Gen1 voor meer informatie.

Foutbericht: Kan het toegangstoken niet ophalen met behulp van de service-principal. ADAL-fout: service_unavailable

  • Symptomen: Copy-activiteit mislukt met de volgende fout:

    Failed to get access token by using service principal. ADAL Error: service_unavailable, The remote server returned an error: (503) Server Unavailable.

  • Oorzaak: Wanneer de servicetokenserver (STS) die eigendom is van Microsoft Entra-id niet beschikbaar is, betekent dit dat het te druk is om aanvragen te verwerken en http-fout 503 retourneert.

  • Oplossing: voer de kopieeractiviteit na enkele minuten opnieuw uit.

Azure Data Lake Storage Gen2

Foutcode: ADLSGen2OperationFailed

  • Bericht: ADLS Gen2 operation failed for: %adlsGen2Message;.%exceptionData;.

  • Oorzaken en aanbevelingen: Verschillende oorzaken kunnen tot deze fout leiden. Bekijk de onderstaande lijst voor mogelijke oorzaakanalyse en gerelateerde aanbevelingen.

    Oorzaakanalyse Aanbeveling
    Als Azure Data Lake Storage Gen2 een fout genereert die aangeeft dat een bewerking is mislukt. Controleer het gedetailleerde foutbericht dat is gegenereerd door Azure Data Lake Storage Gen2. Als de fout een tijdelijke fout is, voert u de bewerking opnieuw uit. Neem voor meer hulp contact op met de ondersteuning van Azure Storage en geef de aanvraag-id op in het foutbericht.
    Als het foutbericht de tekenreeks 'Verboden' bevat, heeft de service-principal of beheerde identiteit die u gebruikt mogelijk niet voldoende machtigingen voor toegang tot Azure Data Lake Storage Gen2. Zie Gegevens kopiëren en transformeren in Azure Data Lake Storage Gen2 om deze fout op te lossen.
    Als het foutbericht de tekenreeks InternalServerError bevat, wordt de fout geretourneerd door Azure Data Lake Storage Gen2. De fout kan worden veroorzaakt door een tijdelijke fout. Als dat het geval is, voert u de bewerking opnieuw uit. Als het probleem zich blijft voordoen, neemt u contact op met de ondersteuning van Azure Storage en geeft u de aanvraag-id op uit het foutbericht.
    Als het foutbericht wordt weergegeven Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host, heeft uw Integration Runtime een netwerkprobleem bij het maken van verbinding met Azure Data Lake Storage Gen2. Zorg ervoor dat de IP-adressen van Azure Data Factory in de lijst met toegestane ip-adressen in de firewallregel van Azure Data Lake Storage Gen2 staan. Raadpleeg Firewalls en virtuele netwerken voor Azure Storage configureren voor meer informatie.
    Als het foutbericht wordt This endpoint does not support BlobStorageEvents or SoftDeleteweergegeven, gebruikt u een gekoppelde Azure Data Lake Storage Gen2-service om verbinding te maken met een Azure Blob Storage-account waarmee Blob Storage-gebeurtenissen of voorlopig verwijderen worden ingeschakeld. Probeer de volgende opties:
    1. Als u nog steeds een gekoppelde Azure Data Lake Storage Gen2-service wilt gebruiken, moet u uw Azure Blob Storage upgraden naar Azure Data Lake Storage Gen2. Zie Azure Blob Storage upgraden met de mogelijkheden van Azure Data Lake Storage Gen2 voor meer informatie.
    2. Schakel uw gekoppelde service over naar Azure Blob Storage.
    3. Schakel Blob Storage-gebeurtenissen of voorlopig verwijderen uit in uw Azure Blob Storage-account.

Aanvraag bij Azure Data Lake Storage Gen2-account heeft een time-outfout veroorzaakt

  • Bericht:

    • Foutcode = UserErrorFailedBlobFSOperation
    • Foutbericht = BlobFS operation failed for: A task was canceled.
  • Oorzaak: Het probleem wordt veroorzaakt door de time-outfout van de Azure Data Lake Storage Gen2-sink, die meestal optreedt op de zelf-hostende Ir-machine (Integration Runtime).

  • Aanbeveling:

    • Plaats indien mogelijk uw zelf-hostende IR-machine en richt u op het Azure Data Lake Storage Gen2-account in dezelfde regio. Dit kan helpen bij het voorkomen van een willekeurige time-outfout en betere prestaties te produceren.

    • Controleer of er een speciale netwerkinstelling is, zoals ExpressRoute, en zorg ervoor dat het netwerk voldoende bandbreedte heeft. U wordt aangeraden de instelling voor gelijktijdige zelf-hostende IR-taken te verlagen wanneer de totale bandbreedte laag is. Dit kan helpen bij het voorkomen van concurrentie van netwerkresources voor meerdere gelijktijdige taken.

    • Als de bestandsgrootte gemiddeld of klein is, gebruikt u een kleinere blokgrootte voor niet-binaire kopieën om een dergelijke time-outfout te beperken. Zie Blob Storage Put Block voor meer informatie.

      Als u de aangepaste blokgrootte wilt opgeven, bewerkt u de eigenschap in de JSON-bestandseditor, zoals hier wordt weergegeven:

      "sink": {
          "type": "DelimitedTextSink",
          "storeSettings": {
              "type": "AzureBlobFSWriteSettings",
              "blockSizeInMB": 8
          }
      }
      

De kopieeractiviteit kan geen bestanden kiezen uit Azure Data Lake Storage Gen2

  • Symptomen: De kopieeractiviteit kan geen bestanden kiezen uit Azure Data Lake Storage Gen2 wanneer de bestandsnaam 'Asset_Metadata' is. Het probleem treedt alleen op in de Gegevensset van het Parquet-type. Andere typen gegevenssets met dezelfde bestandsnaam werken correct.

  • Oorzaak: Voor de achterwaartse compatibiliteit wordt _metadata behandeld als een gereserveerde subtekenreeks in de bestandsnaam.

  • Aanbeveling: wijzig de bestandsnaam om de gereserveerde lijst voor Parquet hieronder te voorkomen:

    1. De bestandsnaam bevat _metadata.
    2. De bestandsnaam begint met . (punt).

Foutcode: ADLSGen2ForbiddenError

  • Bericht: ADLS Gen2 failed for forbidden: Storage operation % on % get failed with 'Operation returned an invalid status code 'Forbidden'.

  • Oorzaak: Er zijn twee mogelijke oorzaken:

    1. De Integration Runtime wordt geblokkeerd door netwerktoegang in de firewallinstellingen van het Azure-opslagaccount.
    2. De service-principal of beheerde identiteit heeft onvoldoende machtigingen voor toegang tot de gegevens.
  • Aanbeveling:

    1. Controleer de netwerkinstellingen van uw Azure-opslagaccount om te zien of de openbare netwerktoegang is uitgeschakeld. Als deze optie is uitgeschakeld, gebruikt u een beheerde runtime voor integratie van virtuele netwerken en maakt u een privé-eindpunt voor toegang. Zie Beheerd virtueel netwerk en een kopieerpijplijn bouwen met beheerde VNet- en privé-eindpunten voor meer informatie.

    2. Als u geselecteerde virtuele netwerken en IP-adressen hebt ingeschakeld in de netwerkinstelling van uw Azure-opslagaccount:

      1. Het is mogelijk omdat sommige IP-adresbereiken van uw Integration Runtime niet zijn toegestaan door de firewallinstellingen van uw opslagaccount. Voeg de IP-adressen van de Azure Integration Runtime of het zelf-hostende IP-adres van integration runtime toe aan de firewall van uw opslagaccount. Zie IP-adressen van Azure Integration Runtime voor IP-adressen voor Azure Integration Runtime en voor meer informatie over het toevoegen van IP-bereiken in de firewall van het opslagaccount, zie IP-netwerkregels beheren.

      2. Als u vertrouwde Azure-services toegang geeft tot dit opslagaccount in de firewall, moet u verificatie van beheerde identiteit gebruiken in kopieeractiviteit.

      Zie Azure Storage-firewalls en virtuele netwerken configureren voor meer informatie over de firewallinstellingen van het Azure-opslagaccount.

    3. Als u service-principal- of beheerde identiteitverificatie gebruikt, verleent u de juiste machtigingen voor de service-principal of beheerde identiteit om te kopiëren. Voor de bron moet u ten minste de rol Opslagblobgegevenslezer hebben . Voor sink is ten minste de rol Inzender voor opslagblobgegevens. Zie Gegevens kopiëren en transformeren in Azure Data Lake Storage Gen2 voor meer informatie.

Voor meer hulp bij het oplossen van problemen kunt u de volgende bronnen proberen: