Gunakan curl untuk memuat data ke HDFS di SQL Server Kluster Big Data
Berlaku untuk: SQL Server 2019 (15.x)
Artikel ini menjelaskan cara menggunakan curl untuk memuat data ke HDFS di SQL Server 2019 Kluster Big Data.
Penting
Add-on Kluster Big Data Microsoft SQL Server 2019 akan dihentikan. Dukungan untuk SQL Server 2019 Kluster Big Data akan berakhir pada 28 Februari 2025. Semua pengguna SQL Server 2019 yang ada dengan Jaminan Perangkat Lunak akan didukung sepenuhnya pada platform dan perangkat lunak akan terus dipertahankan melalui pembaruan kumulatif SQL Server hingga saat itu. Untuk informasi selengkapnya, lihat posting blog pengumuman dan Opsi big data di platform Microsoft SQL Server.
Prasyarat
Mendapatkan IP eksternal layanan
WebHDFS dimulai ketika penyebaran selesai, dan aksesnya melewati Knox. Titik akhir Knox diekspos melalui layanan Kubernetes yang disebut gateway-svc-external. Untuk membuat URL WebHDFS yang diperlukan untuk mengunggah/mengunduh file, Anda memerlukan alamat IP eksternal layanan eksternal gateway-svc-dan nama kluster big data Anda. Anda bisa mendapatkan alamat IP eksternal layanan gateway-svc-external dengan menjalankan perintah berikut:
kubectl get service gateway-svc-external -n <big data cluster name> -o json | jq -r .status.loadBalancer.ingress[0].ip
Catatan
Berikut <big data cluster name>
adalah nama kluster yang Anda tentukan dalam file konfigurasi penyebaran. Nama defaultnya adalah mssql-cluster
.
Membuat URL untuk mengakses WebHDFS
Sekarang, Anda dapat membuat URL untuk mengakses WebHDFS sebagai berikut:
https://<gateway-svc-external service external IP address>:30443/gateway/default/webhdfs/v1/
Misalnya:
https://13.66.190.205:30443/gateway/default/webhdfs/v1/
Autentikasi dengan Direktori Aktif
Untuk penyebaran dengan Direktori Aktif, gunakan parameter autentikasi dengan curl
autentikasi Negosiasi.
Untuk menggunakan curl
dengan autentikasi Direktori Aktif, jalankan perintah ini:
kinit <username>
Perintah menghasilkan token Kerberos untuk curl
digunakan. Perintah yang ditunjukkan di bagian berikutnya menentukan --anyauth
parameter untuk curl
. Untuk URL yang memerlukan autentikasi Negosiasi, curl
secara otomatis mendeteksi dan menggunakan token Kerberos yang dihasilkan alih-alih nama pengguna dan kata sandi untuk mengautentikasi ke URL.
Mencantumkan file
Untuk mencantumkan file di bawah hdfs:///product_review_data, gunakan perintah curl berikut:
curl -i -k --anyauth -u root:<AZDATA_PASSWORD> -X GET 'https://<gateway-svc-external IP external address>:30443/gateway/default/webhdfs/v1/product_review_data/?op=liststatus'
Dimulai dengan SQL Server 2019 (15.x) CU 5, saat Anda menyebarkan kluster baru dengan autentikasi dasar semua titik akhir termasuk penggunaan AZDATA_USERNAME
gateway dan AZDATA_PASSWORD
. Titik akhir pada kluster yang ditingkatkan ke CU 5 terus digunakan root
sebagai nama pengguna untuk menyambungkan ke titik akhir gateway. Perubahan ini tidak berlaku untuk penyebaran menggunakan autentikasi Direktori Aktif. Lihat Kredensial untuk mengakses layanan melalui titik akhir gateway dalam catatan rilis.
Untuk titik akhir yang tidak menggunakan root, gunakan perintah curl berikut:
curl -i -k --anyauth -u <AZDATA_USERNAME>:<AZDATA_PASSWORD> -X GET 'https://<gateway-svc-external IP external address>:30443/gateway/default/webhdfs/v1/product_review_data/?op=liststatus'
Masukkan file lokal ke dalam HDFS
Untuk menempatkan file baru test.csv dari direktori lokal ke direktori product_review_data, gunakan perintah curl berikut ( parameter Tipe Konten diperlukan):
curl -i -L -k --anyauth -u root:<AZDATA_PASSWORD> -X PUT 'https://<gateway-svc-external IP external address>:30443/gateway/default/webhdfs/v1/product_review_data/test.csv?op=create' -H 'Content-Type: application/octet-stream' -T 'test.csv'
Dimulai dengan SQL Server 2019 (15.x) CU 5, saat Anda menyebarkan kluster baru dengan autentikasi dasar semua titik akhir termasuk penggunaan AZDATA_USERNAME
gateway dan AZDATA_PASSWORD
. Titik akhir pada kluster yang ditingkatkan ke CU 5 terus digunakan root
sebagai nama pengguna untuk menyambungkan ke titik akhir gateway. Perubahan ini tidak berlaku untuk penyebaran menggunakan autentikasi Direktori Aktif. Lihat Kredensial untuk mengakses layanan melalui titik akhir gateway dalam catatan rilis.
Untuk titik akhir yang tidak menggunakan root, gunakan perintah curl berikut:
curl -i -L -k --anyauth -u <AZDATA_USERNAME>:<AZDATA_PASSWORD> -X PUT 'https://<gateway-svc-external IP external address>:30443/gateway/default/webhdfs/v1/product_review_data/test.csv?op=create' -H 'Content-Type: application/octet-stream' -T 'test.csv'
Membuat direktori
Untuk membuat pengujian direktori di bawah hdfs:///
, gunakan perintah berikut:
curl -i -L -k --anyauth -u root:<AZDATA_PASSWORD> -X PUT 'https://<gateway-svc-external IP external address>:30443/gateway/default/webhdfs/v1/test?op=MKDIRS'
Dimulai dengan SQL Server 2019 (15.x) CU 5, saat Anda menyebarkan kluster baru dengan autentikasi dasar semua titik akhir termasuk penggunaan AZDATA_USERNAME
gateway dan AZDATA_PASSWORD
. Titik akhir pada kluster yang ditingkatkan ke CU 5 terus digunakan root
sebagai nama pengguna untuk menyambungkan ke titik akhir gateway. Perubahan ini tidak berlaku untuk penyebaran menggunakan autentikasi Direktori Aktif. Lihat Kredensial untuk mengakses layanan melalui titik akhir gateway dalam catatan rilis.
Untuk titik akhir yang tidak menggunakan root, gunakan perintah curl berikut:
curl -i -L -k --anyauth -u <AZDATA_USERNAME>:<AZDATA_PASSWORD> -X PUT 'https://<gateway-svc-external IP external address>:30443/gateway/default/webhdfs/v1/test?op=MKDIRS'
Langkah berikutnya
Untuk informasi selengkapnya, lihat Memperkenalkan Kluster Big Data SQL Server.
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk