Delen via


Bestandssysteembewerkingen in Azure Data Lake Storage Gen1 via REST-API

In dit artikel leert u hoe u WebHDFS REST API's en Data Lake Storage Gen1 REST API's gebruikt om bestandssysteembewerkingen uit te voeren in Azure Data Lake Storage Gen1. Zie Accountbeheerbewerkingen in Data Lake Storage Gen1 met behulp van REST API voor instructies over het uitvoeren van accountbeheerbewerkingen in Data Lake Storage Gen1 met behulp van REST API.

Vereiste voorwaarden

Hoe kan ik verifiëren met behulp van Microsoft Entra-id?

U kunt twee methoden gebruiken om te verifiëren met behulp van Microsoft Entra-id.

Mappen maken

Deze bewerking is gebaseerd op de WebHDFS REST API-aanroep die hier is gedefinieerd.

Gebruik de volgende cURL-opdracht: Vervang <uwstorenaam> door de naam van uw Data Lake Storage Gen1-account.

curl -i -X PUT -H "Authorization: Bearer <REDACTED>" -d "" 'https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/?op=MKDIRS'

Vervang in de voorgaande opdracht door <REDACTED> het autorisatietoken dat u eerder hebt opgehaald. Met deze opdracht maakt u een map met de naam mytempdir onder de hoofdmap van uw Data Lake Storage Gen1-account.

Als de bewerking is voltooid, ziet u een antwoord zoals het volgende fragment:

{"boolean":true}

Mappen weergeven

Deze bewerking is gebaseerd op de WebHDFS REST API-aanroep die hier is gedefinieerd.

Gebruik de volgende cURL-opdracht: Vervang <uwstorenaam> door de naam van uw Data Lake Storage Gen1-account.

curl -i -X GET -H "Authorization: Bearer <REDACTED>" 'https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/?op=LISTSTATUS'

Vervang in de voorgaande opdracht door <REDACTED> het autorisatietoken dat u eerder hebt opgehaald.

Als de bewerking is voltooid, ziet u een antwoord zoals het volgende fragment:

{
"FileStatuses": {
    "FileStatus": [{
        "length": 0,
        "pathSuffix": "mytempdir",
        "type": "DIRECTORY",
        "blockSize": 268435456,
        "accessTime": 1458324719512,
        "modificationTime": 1458324719512,
        "replication": 0,
        "permission": "777",
        "owner": "<GUID>",
        "group": "<GUID>"
    }]
}
}

Gegevens uploaden

Deze bewerking is gebaseerd op de WebHDFS REST API-aanroep die hier is gedefinieerd.

Gebruik de volgende cURL-opdracht: Vervang <uwstorenaam> door de naam van uw Data Lake Storage Gen1-account.

curl -i -X PUT -L -T 'C:\temp\list.txt' -H "Authorization: Bearer <REDACTED>" 'https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/list.txt?op=CREATE'

In de voorgaande syntaxis is de parameter -T de locatie van het bestand dat u uploadt.

De uitvoer is vergelijkbaar met het volgende fragment:

HTTP/1.1 307 Temporary Redirect
...
Location: https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/list.txt?op=CREATE&write=true
...
Content-Length: 0

HTTP/1.1 100 Continue

HTTP/1.1 201 Created
...

Gegevens lezen

Deze bewerking is gebaseerd op de WebHDFS REST API-aanroep die hier is gedefinieerd.

Het lezen van gegevens uit een Data Lake Storage Gen1-account is een proces in twee stappen.

  • U dient eerst een GET-aanvraag in voor het eindpunt https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/myinputfile.txt?op=OPEN. Deze aanroep retourneert een locatie om de volgende GET-aanvraag naar te verzenden.
  • Vervolgens dient u de GET-aanvraag in tegen het eindpunt https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/myinputfile.txt?op=OPEN&read=true. Met deze aanroep wordt de inhoud van het bestand weergegeven.

Omdat er echter geen verschil is in de invoerparameters tussen de eerste en de tweede stap, kunt u de -L parameter gebruiken om de eerste aanvraag in te dienen. -L de optie combineert in wezen twee aanvragen in één en voert cURL de aanvraag opnieuw uit op de nieuwe locatie. Ten slotte wordt de uitvoer van alle aanvraagoproepen weergegeven, zoals weergegeven in het volgende fragment. Vervang <uwstorenaam> door de naam van uw Data Lake Storage Gen1-account.

curl -i -L GET -H "Authorization: Bearer <REDACTED>" 'https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/myinputfile.txt?op=OPEN'

U zou een uitvoer moeten zien die lijkt op het volgende fragment:

HTTP/1.1 307 Temporary Redirect
...
Location: https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/somerandomfile.txt?op=OPEN&read=true
...

HTTP/1.1 200 OK
...

Hello, Data Lake Store user!

De naam van een bestand wijzigen

Deze bewerking is gebaseerd op de WebHDFS REST API-aanroep die hier is gedefinieerd.

Gebruik de volgende cURL-opdracht om de naam van een bestand te wijzigen. Vervang <uwstorenaam> door de naam van uw Data Lake Storage Gen1-account.

curl -i -X PUT -H "Authorization: Bearer <REDACTED>" -d "" 'https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/myinputfile.txt?op=RENAME&destination=/mytempdir/myinputfile1.txt'

U zou een uitvoer moeten zien die lijkt op het volgende fragment:

HTTP/1.1 200 OK
...

{"boolean":true}

Een bestand verwijderen

Deze bewerking is gebaseerd op de WebHDFS REST API-aanroep die hier is gedefinieerd.

Gebruik de volgende cURL-opdracht om een bestand te verwijderen. Vervang <uwstorenaam> door de naam van uw Data Lake Storage Gen1-account.

curl -i -X DELETE -H "Authorization: Bearer <REDACTED>" 'https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/myinputfile1.txt?op=DELETE'

U zou een uitvoer als de volgende moeten zien:

HTTP/1.1 200 OK
...

{"boolean":true}

Volgende stappen

Zie ook