Sdílet prostřednictvím


Operace systému souborů v Azure Data Lake Storage Gen1 s využitím rozhraní REST API

V tomto článku se dozvíte, jak pomocí rozhraní REST API WebHDFS a rozhraní REST API Data Lake Storage Gen1 provádět operace systému souborů ve službě Azure Data Lake Storage Gen1. Pokyny k provádění operací správy účtů ve službě Data Lake Storage Gen1 pomocí rozhraní REST API najdete v tématu Operace správy účtů ve službě Data Lake Storage Gen1 pomocí rozhraní REST API.

Požadavky

Jak se mohu ověřit pomocí Microsoft Entra ID?

K ověření pomocí ID Microsoft Entra můžete použít dva přístupy.

Vytváření složek

Tato operace je založená na volání rozhraní REST API WebHDFS, které je zde definováno.

Použijte následující příkaz cURL. Název vašeho úložiště> nahraďte< názvem vašeho účtu Data Lake Storage Gen1.

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

V předchozím příkazu nahraďte <REDACTED> autorizačním tokenem, který jste získali dříve. Tento příkaz vytvoří adresář mytempdir pod kořenovou složkou vašeho účtu Data Lake Storage Gen1.

Pokud se operace úspěšně dokončí, měla by se zobrazit odpověď podobná následujícímu fragmentu kódu:

{"boolean":true}

Seznam složek

Tato operace je založená na volání rozhraní REST API WebHDFS, které je zde definováno.

Použijte následující příkaz cURL. Název vašeho úložiště> nahraďte< názvem vašeho účtu Data Lake Storage Gen1.

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

V předchozím příkazu nahraďte <REDACTED> autorizačním tokenem, který jste získali dříve.

Pokud se operace úspěšně dokončí, měla by se zobrazit odpověď podobná následujícímu fragmentu kódu:

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

Nahrání dat

Tato operace je založená na volání rozhraní REST API WebHDFS, které je zde definováno.

Použijte následující příkaz cURL. Název vašeho úložiště> nahraďte< názvem vašeho účtu Data Lake Storage Gen1.

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'

V předchozí syntaxi parametr -T je umístění souboru, který nahráváte.

Výstup je podobný následujícímu fragmentu kódu:

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
...

Čtení dat

Tato operace je založená na volání rozhraní REST API WebHDFS, které je zde definováno.

Čtení dat z účtu Data Lake Storage Gen1 je dvoustupňový proces.

  • Nejprve odešlete požadavek GET na koncový bod https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/myinputfile.txt?op=OPEN. Toto volání vrátí umístění pro odeslání dalšího požadavku GET.
  • Pak odešlete požadavek GET na koncový bod https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/myinputfile.txt?op=OPEN&read=true. Toto volání zobrazí obsah souboru.

Vzhledem k tomu, že mezi prvním a druhým krokem není žádný rozdíl ve vstupních parametrech, můžete k odeslání prvního požadavku použít parametr -L. -L volba v podstatě kombinuje dva požadavky do jednoho a přiměje cURL znovu provést požadavek na novém umístění. Nakonec se zobrazí výstup ze všech volání požadavků, jak je znázorněno v následujícím fragmentu kódu. Název vašeho úložiště> nahraďte< názvem vašeho účtu Data Lake Storage Gen1.

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

Měl by se zobrazit výstup podobný následujícímu fragmentu kódu:

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!

Přejmenování souboru

Tato operace je založená na volání rozhraní REST API WebHDFS, které je zde definováno.

K přejmenování souboru použijte následující příkaz cURL. Název vašeho úložiště> nahraďte< názvem vašeho účtu Data Lake Storage Gen1.

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

Měl by se zobrazit výstup podobný následujícímu fragmentu kódu:

HTTP/1.1 200 OK
...

{"boolean":true}

Odstranění souboru

Tato operace je založená na volání rozhraní REST API WebHDFS, které je zde definováno.

K odstranění souboru použijte následující příkaz cURL. Název vašeho úložiště> nahraďte< názvem vašeho účtu Data Lake Storage Gen1.

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

Zobrazený výstup by měl vypadat asi takto:

HTTP/1.1 200 OK
...

{"boolean":true}

Další kroky

Viz také