REST API kullanarak Azure Data Lake Storage 1. Nesil'de dosya sistemi işlemleri

Bu makalede, Azure Data Lake Storage 1. Nesil'de dosya sistemi işlemlerini gerçekleştirmek için WebHDFS REST API'lerini ve Data Lake Storage 1. Nesil REST API'lerini kullanmayı öğreneceksiniz. REST API kullanarak Data Lake Storage 1. Nesil hesap yönetimi işlemlerini gerçekleştirme yönergeleri için bkz. REST API kullanarak Data Lake Storage 1. Nesil üzerinde hesap yönetimi işlemleri.

Önkoşullar

Microsoft Entra ID kullanarak kimlik doğrulaması Nasıl yaparım??

Microsoft Entra ID kullanarak kimlik doğrulaması yapmak için iki yaklaşım kullanabilirsiniz.

Klasör oluşturma

Bu işlem, burada tanımlanan WebHDFS REST API çağrısını temel alır.

Aşağıdaki cURL komutunu kullanın. yourstorename değerini Data Lake Storage 1. Nesil hesap adınızla değiştirin<.>

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

Yukarıdaki komutta, <REDACTED> öğesini daha önce aldığınız yetkilendirme belirteciyle değiştirin. Bu komut, Data Lake Storage 1. Nesil hesabınızın kök klasörünün altında mytempdir adlı bir dizin oluşturur.

İşlem başarıyla tamamlanırsa aşağıdaki kod parçacığına benzer bir yanıt görmeniz gerekir:

{"boolean":true}

Klasörleri listeleme

Bu işlem, burada tanımlanan WebHDFS REST API çağrısını temel alır.

Aşağıdaki cURL komutunu kullanın. yourstorename değerini Data Lake Storage 1. Nesil hesap adınızla değiştirin<.>

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

Yukarıdaki komutta, <REDACTED> öğesini daha önce aldığınız yetkilendirme belirteciyle değiştirin.

İşlem başarıyla tamamlanırsa aşağıdaki kod parçacığına benzer bir yanıt görmeniz gerekir:

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

Verileri karşıya yükleme

Bu işlem, burada tanımlanan WebHDFS REST API çağrısını temel alır.

Aşağıdaki cURL komutunu kullanın. yourstorename değerini Data Lake Storage 1. Nesil hesap adınızla değiştirin<.>

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'

Yukarıdaki söz diziminde -T parametresi karşıya yüklediğiniz dosyanın konumudur.

Çıkış aşağıdaki kod parçacığına benzer:

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

Verileri okuma

Bu işlem, burada tanımlanan WebHDFS REST API çağrısını temel alır.

Data Lake Storage 1. Nesil hesabından veri okumak iki adımlı bir işlemdir.

  • İlk olarak https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/myinputfile.txt?op=OPEN uç noktası için bir GET isteği gönderirsiniz. Bu çağrı, sonraki GET isteğini göndermek için bir konum döndürür.
  • Ardından https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/myinputfile.txt?op=OPEN&read=true uç noktası için GET isteğini gönderirsiniz. Bu çağrı, dosyanın içeriğini görüntüler.

Ancak giriş parametrelerinde birinci ve ikinci adım arasında fark olmadığından, ilk isteği göndermek için -L parametresini kullanabilirsiniz. -L seçeneği, temelde iki isteği tek istekte birleştirir ve cURL'nin isteği yeni konumda yeniden gerçekleştirmesini sağlar. Son olarak, aşağıdaki kod parçacığında gösterildiği gibi, tüm istek çağrılarının çıktısı görüntülenir. yourstorename değerini Data Lake Storage 1. Nesil hesap adınızla değiştirin<.>

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

Aşağıdaki kod parçacığına benzer bir çıktı görmeniz gerekir:

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!

Dosyayı yeniden adlandırma

Bu işlem, burada tanımlanan WebHDFS REST API çağrısını temel alır.

Bir dosyayı yeniden adlandırmak için aşağıdaki cURL komutunu kullanın. yourstorename değerini Data Lake Storage 1. Nesil hesap adınızla değiştirin<.>

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

Aşağıdaki kod parçacığına benzer bir çıktı görmeniz gerekir:

HTTP/1.1 200 OK
...

{"boolean":true}

Dosyayı silme

Bu işlem, burada tanımlanan WebHDFS REST API çağrısını temel alır.

Bir dosyayı silmek için aşağıdaki cURL komutunu kullanın. yourstorename değerini Data Lake Storage 1. Nesil hesap adınızla değiştirin<.>

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

Aşağıdaki gibi bir çıktı görmeniz gerekir:

HTTP/1.1 200 OK
...

{"boolean":true}

Sonraki adımlar

Ayrıca bkz.