Topik ini menjelaskan cara menggunakan perintah Shell Hadoop untuk mengakses Object Storage Service (OSS) atau OSS-HDFS.
Persiapan lingkungan
- Dalam lingkungan E-MapReduce (EMR), JindoSDK diinstal secara default dan dapat langsung digunakan. null Untuk mengakses OSS-HDFS, Anda harus membuat kluster EMR V3.42.0 atau versi minor lebih baru, atau EMR V5.8.0 atau versi minor lebih baru.
- Dalam lingkungan non-EMR, instal JindoSDK terlebih dahulu. Untuk informasi lebih lanjut, lihat Deploy JindoSDK in an environment other than EMR. null Untuk mengakses OSS-HDFS, Anda harus menginstal JindoSDK V4.X atau yang lebih baru.
Perintah dan contoh
Anda dapat menggunakan perintah Shell Hadoop untuk mengakses OSS dan OSS-HDFS dengan cara yang sama. Perbedaannya terletak pada titik akhir dalam jalur.
- Unggah FileJalankan perintah berikut untuk mengunggah file bernama examplefile.txt dari direktori root lokal ke bucket bernama examplebucket di OSS-HDFS:
hadoop fs -put examplefile.txt oss://examplebucket.cn-shanghai.oss-dls.aliyuncs.com/ - Buat DirektoriJalankan perintah berikut untuk membuat direktori bernama dir/ di bucket bernama examplebucket di OSS-HDFS:
hadoop fs -mkdir oss://examplebucket.cn-shanghai.oss-dls.aliyuncs.com/dir/ - Kueri File atau Direktori
Jalankan perintah berikut untuk menanyakan file dan direktori di bucket bernama examplebucket di OSS-HDFS:
hadoop fs -ls oss://examplebucket.cn-shanghai.oss-dls.aliyuncs.com/ - Kueri Ukuran File atau DirektoriJalankan perintah berikut untuk menanyakan ukuran semua file dan direktori di bucket bernama examplebucket di OSS-HDFS:
hadoop fs -du oss://examplebucket.cn-shanghai.oss-dls.aliyuncs.com/ - Kueri Isi FileJalankan perintah berikut untuk menanyakan isi file bernama localfile.txt di bucket bernama examplebucket di OSS-HDFS:
hadoop fs -cat oss://examplebucket.cn-shanghai.oss-dls.aliyuncs.com/localfile.txtnull Isi file yang dikueri ditampilkan dalam teks biasa. Jika isinya dienkripsi, gunakan API HDFS untuk Java untuk membaca dan mendekode isi tersebut. - Salin File atau DirektoriJalankan perintah berikut untuk menyalin direktori root bernama subdir1 ke direktori bernama subdir2 di bucket bernama examplebucket di OSS-HDFS. Lokasi direktori subdir1, file di direktori subdir1, serta struktur dan isi subdirektori di direktori subdir1 tetap tidak berubah.
hadoop fs -cp oss://examplebucket.cn-shanghai.oss-dls.aliyuncs.com/subdir1 oss://examplebucket.cn-shanghai.oss-dls.aliyuncs.com/subdir2/subdir1 - Pindahkan File atau DirektoriJalankan perintah berikut untuk memindahkan direktori root bernama srcdir di bucket bernama examplebucket dan file serta subdirektori di direktori root tersebut ke direktori root lain bernama destdir di OSS-HDFS:
hadoop fs -mv oss://examplebucket.cn-shanghai.oss-dls.aliyuncs.com/srcdir oss://examplebucket.cn-shanghai.oss-dls.aliyuncs.com/destdir - Unduh FileJalankan perintah berikut untuk mengunduh file bernama exampleobject.txt dari bucket bernama examplebucket di OSS-HDFS ke direktori bernama /tmp di direktori root komputer Anda:
hadoop fs -get oss://examplebucket.cn-shanghai.oss-dls.aliyuncs.com/exampleobject.txt /tmp/ - Hapus File atau DirektoriJalankan perintah berikut untuk menghapus direktori bernama destfolder/ dan semua file di direktori tersebut dari bucket bernama examplebucket di OSS-HDFS:
hadoop fs -rm oss://examplebucket.cn-shanghai.oss-dls.aliyuncs.com/destfolder/