OSS-HDFS etkinleştirilmiş bir paket üzerinde nesne yükleme, indirme ve silme gibi işlemleri CLI aracılığıyla yapmak istiyorsanız Hadoop Shell komutlarını kullanabilirsiniz.
Ortam hazırlığı
OSS-HDFS'ye erişmek için aşağıdaki yöntemlerden birini kullanabilirsiniz:
OSS-HDFS'ye Alibaba Cloud EMR kümesi üzerinden erişmek istiyorsanız sürümü 3.46.2 veya üzeri ya da 5.12.2 veya üzeri olan bir EMR kümesi oluşturduğunuzdan emin olun. Sürüm gereksinimlerini karşılayan EMR kümeleri, OSS-HDFS ile varsayılan olarak entegredir. Daha fazla bilgi için bkz. Küme oluşturma.
OSS-HDFS'ye erişmek için Alibaba Cloud EMR kümesi kullanmak istemiyorsanız JindoSDK 4.6.x veya sonraki bir sürümün yüklendiğinden ve dağıtıldığından emin olun. Daha fazla bilgi için bkz. EMR dışı bir ortamda JindoSDK'yı dağıtma.
Komutlar ve örnekler
Aşağıdaki bölümde, OSS-HDFS'ye erişmek için Hadoop Shell komutlarının nasıl kullanılacağına ilişkin örnekler yer almaktadır.
-
Yerel bir dosya yükleyin
Yerel kök dizindeki examplefile.txt adlı dosyayı examplebucket adlı pakete yüklemek için aşağıdaki komutu çalıştırın:
hdfs dfs -put examplefile.txt oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/ -
Dizin oluşturun
examplebucket adlı pakette dir/ adlı bir dizin oluşturmak için aşağıdaki komutu çalıştırın:
hdfs dfs -mkdir oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/dir/ -
Nesneleri veya dizinleri sorgulayın
examplebucket adlı paketteki nesneleri veya dizinleri listelemek için aşağıdaki komutu çalıştırın:
hdfs dfs -ls oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/ -
Nesnelerin veya dizinlerin boyutunu sorgulayın
examplebucket adlı paketteki tüm nesnelerin veya dizinlerin boyutunu öğrenmek için aşağıdaki komutu çalıştırın:
hdfs dfs -du oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/ -
Bir nesnenin içeriğini sorgulayın
examplebucket adlı paketteki localfile.txt adlı nesnenin içeriğini görüntülemek için aşağıdaki komutu çalıştırın:
hdfs dfs -cat oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/localfile.txtÖnemliSorgulanan nesnenin içeriği ekranda düz metin olarak görüntülenir. İçerik kodlanmışsa Java için HDFS API'sini kullanarak içeriği okuyun ve kodunu çözün.
-
Bir nesneyi veya dizini kopyalayın
examplebucket adlı paketteki subdir1 adlı kök dizini aynı paketteki subdir2 adlı dizine kopyalamak için aşağıdaki komutu çalıştırın. Bu işlem sırasında subdir1 kök dizininin konumu, subdir1 kök dizinindeki nesneler ve subdir1 kök dizinindeki alt dizinlerin yapısı ile içeriği değişmez.
hdfs dfs -cp oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/subdir1 oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/subdir2/subdir1 -
Bir nesneyi veya dizini taşıyın
examplebucket adlı paketteki srcdir adlı kök dizini ve bu kök dizindeki nesneler ile alt dizinleri destdir adlı başka bir kök dizine taşımak için aşağıdaki komutu çalıştırın:
hdfs dfs -mv oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/srcdir oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/destdir -
Bir nesne indirin
examplebucket adlı paketten exampleobject.txt adlı nesneyi bilgisayarınızdaki /tmp adlı kök dizine indirmek için aşağıdaki komutu çalıştırın:
hdfs dfs -get oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/exampleobject.txt /tmp/ -
Nesneleri veya dizinleri silin
examplebucket adlı paketten destfolder/ adlı dizini ve bu dizindeki tüm nesneleri silmek için aşağıdaki komutu çalıştırın:
hdfs dfs -rm -r oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/destfolder/