Fájlrendszerműveletek Azure Data Lake Storage Gen1-en REST API használatával
Ebből a cikkből megtudhatja, hogyan hajthat végre fájlrendszerműveleteket Azure Data Lake Storage Gen1-en a WebHDFS REST API-k és Data Lake Storage Gen1 REST API-k használatával. A fiókkezelési műveletek REST API-val történő Data Lake Storage Gen1 történő végrehajtásával kapcsolatos utasításokért lásd: Fiókkezelési műveletek Data Lake Storage Gen1 REST API használatával.
Előfeltételek
Egy Azure-előfizetés. Lásd: Ingyenes Azure-fiók létrehozása.
Azure Data Lake Storage Gen1-fiók. Kövesse az Első lépések az Azure Data Lake Storage Gen1-ben a Azure Portal használatával című témakör utasításait.
cURL. Ez a cikk a cURL használatával mutatja be, hogyan indíthat REST API-hívásokat egy Data Lake Storage Gen1-fiókon.
Hogyan hitelesítést Microsoft Entra ID használatával?
Kétféleképpen végezhet hitelesítést Microsoft Entra ID használatával.
- Az alkalmazás végfelhasználói hitelesítésével (interaktív) kapcsolatban lásd: Végfelhasználói hitelesítés a .NET SDK használatával Data Lake Storage Gen1.
- Az alkalmazás szolgáltatásközi hitelesítéséről (nem interaktív) lásd: Szolgáltatásközi hitelesítés Data Lake Storage Gen1 a .NET SDK használatával.
Mappák létrehozása
Ez a művelet az itt definiált WebHDFS REST API-híváson alapul.
Használja a következő cURL-parancsot. Cserélje le< a sajátstorename> értékét a Data Lake Storage Gen1-fiók nevére.
curl -i -X PUT -H "Authorization: Bearer <REDACTED>" -d "" 'https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/?op=MKDIRS'
Az előző parancsban cserélje le a <REDACTED
> részt a korábban kapott hitelesítő jogkivonatra. Ez a parancs létrehoz egy mytempdir nevű könyvtárat a Data Lake Storage Gen1-fiók gyökérmappájában.
Ha a művelet sikeresen befejeződik, a következő kódrészlethez hasonló választ kell kapnia:
{"boolean":true}
Mappák listázása
Ez a művelet az itt definiált WebHDFS REST API-híváson alapul.
Használja a következő cURL-parancsot. Cserélje le< a sajátstorename> értékét a Data Lake Storage Gen1-fiók nevére.
curl -i -X GET -H "Authorization: Bearer <REDACTED>" 'https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/?op=LISTSTATUS'
Az előző parancsban cserélje le a <REDACTED
> részt a korábban kapott hitelesítő jogkivonatra.
Ha a művelet sikeresen befejeződik, a következő kódrészlethez hasonló választ kell kapnia:
{
"FileStatuses": {
"FileStatus": [{
"length": 0,
"pathSuffix": "mytempdir",
"type": "DIRECTORY",
"blockSize": 268435456,
"accessTime": 1458324719512,
"modificationTime": 1458324719512,
"replication": 0,
"permission": "777",
"owner": "<GUID>",
"group": "<GUID>"
}]
}
}
Adatok feltöltése
Ez a művelet az itt definiált WebHDFS REST API-híváson alapul.
Használja a következő cURL-parancsot. Cserélje le< a sajátstorename> értékét a Data Lake Storage Gen1-fiók nevére.
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'
Az előző szintaxisban a -T paraméter adja meg a feltöltendő fájl helyét.
A kimenet a következő kódrészlethez hasonló:
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
...
Adatok olvasása
Ez a művelet az itt definiált WebHDFS REST API-híváson alapul.
Az adatok Data Lake Storage Gen1-fiókból való beolvasása kétlépéses folyamat.
- Először küldenie kell egy GET kérelmet a
https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/myinputfile.txt?op=OPEN
végponthoz. Ez a hívás visszaadja azt a helyet, ahová a következő GET kérelmet kell küldenie. - Ezután küldenie kell egy GET kérelmet a
https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/myinputfile.txt?op=OPEN&read=true
végponthoz. Ez a hívás megjeleníti a fájl tartalmát.
Mivel azonban az első és második lépésben nincs különbség a bemeneti paraméterek között, az első kérelem elküldéséhez használhatja az -L
paramétert. A -L
kapcsoló lényegében egyesít két kérelmet, és megismételteti a kérelmet a cURL-paranccsal az új helyen. Végül megjelenik az összes kérelemhívás kimenete az alábbi kódrészletben látható módon. Cserélje le< a sajátstorename> értékét a Data Lake Storage Gen1-fiók nevére.
curl -i -L GET -H "Authorization: Bearer <REDACTED>" 'https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/myinputfile.txt?op=OPEN'
Az alábbi kódrészlethez hasonló kimenetnek kell megjelennie:
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!
Fájl átnevezése
Ez a művelet az itt definiált WebHDFS REST API-híváson alapul.
Fájl átnevezéséhez használja a következő cURL-parancsot. Cserélje le< a sajátstorename> értékét a Data Lake Storage Gen1-fiók nevére.
curl -i -X PUT -H "Authorization: Bearer <REDACTED>" -d "" 'https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/myinputfile.txt?op=RENAME&destination=/mytempdir/myinputfile1.txt'
Az alábbi kódrészlethez hasonló kimenetnek kell megjelennie:
HTTP/1.1 200 OK
...
{"boolean":true}
Fájl törlése
Ez a művelet az itt definiált WebHDFS REST API-híváson alapul.
Fájl törléséhez használja a következő cURL-parancsot. Cserélje le< a sajátstorename> értékét a Data Lake Storage Gen1-fiók nevére.
curl -i -X DELETE -H "Authorization: Bearer <REDACTED>" 'https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/myinputfile1.txt?op=DELETE'
A következőhöz hasonló kimenetnek kell megjelennie:
HTTP/1.1 200 OK
...
{"boolean":true}