Tüm Ürünler
Search
Belge Merkezi

Object Storage Service:JindoSDK kullanarak OSS-HDFS'ye erişin

Son Güncelleme:Oct 01, 2026

OSS-HDFS, veri gölleri için cloud-native bir depolama hizmetidir. Birleşik meta veri yönetimi sağlar ve HDFS API ile tam uyumludur; ayrıca kapsamlı POSIX desteği sunar. Bu özellikler, büyük veri ve yapay zeka iş yükleri için idealdir. Bu konuda, Hadoop kullanarak JindoSDK aracılığıyla OSS-HDFS'ye nasıl erişileceği açıklanmaktadır.

Ön koşullar

Bir paket için OSS-HDFS'yi etkinleştirmiş ve buna erişim yetkisi almış olmanız gerekir. Daha fazla bilgi için bkz. OSS-HDFS'yi etkinleştirme.

Genel bakış

OSS-HDFS, mevcut Hadoop ve Spark uygulamalarıyla değişiklik gerektirmeden çalışır. Temel yapılandırmadan sonra verileri yerel HDFS'deki gibi yönetirsiniz; ancak OSS'nin neredeyse sınırsız kapasite, esnek ölçeklendirme ve gelişmiş güvenlik, güvenilirlik ile kullanılabilirlik gibi ek avantajlarından da yararlanırsınız.

OSS-HDFS, terabayt düzeyinde aktarım hızıyla exabaytlarca veriyi ve milyarlarca dosyayı işler. Standart nesne depolamanın düz ad alanının ötesinde, nesneleri dizinlerde organize eden hiyerarşik bir ad alanı sunar ve birleşik meta veri yönetimi sayesinde otomatik ad alanı dönüştürme gerçekleştirir. Geleneksel HDFS'deki aktif-standby NameNode yedekliliği yerine, OSS-HDFS üstün dayanıklılık sağlayan çok düğümlü aktif-aktif yedeklilik kullanır. Hadoop kullanıcıları, çoğaltma veya dönüştürme işlemine gerek kalmadan verilere yerel HDFS'deki kadar verimli şekilde erişir; bu durum iş performansını artırır ve bakım maliyetlerini düşürür.

OSS-HDFS'nin kullanım senaryoları, hizmet özellikleri ve özellikleri hakkında daha fazla bilgi için bkz. OSS-HDFS nedir?

1. Adım: VPC oluşturun ve bir ECS örneği ekleyin

  1. OSS-HDFS'ye dahili ağ üzerinden erişime izin vermek için bir VPC oluşturun.

    1. VPC konsolu üzerinde oturum açın.

    2. VPC sayfasında Create VPC seçeneğine tıklayın.

      VPC'nin, OSS-HDFS'yi etkinleştirdiğiniz paketle aynı bölgede olduğundan emin olun. VPC oluşturma hakkında daha fazla bilgi için bkz. VPC ve vSwitch oluşturma.

  2. Bir ECS örneği ekleyin.

    1. Oluşturduğunuz VPC'nin ID'sine tıklayın ve ardından Resource Management sekmesine gidin.

    2. Cloud Resources bölümünde, ECS'nin yanındaki 序号 simgesine tıklayın.

    3. Instances sayfasında bir ECS örneği oluşturun.

      ECS örneği oluştururken, örneğin oluşturduğunuz VPC ile aynı bölgede olduğundan emin olun. ECS örneği oluşturma hakkında daha fazla bilgi için bkz. Örnek oluşturma.

2. Adım: Hadoop çalışma zamanı ortamını kurun

  1. Java ortamını yükleyin.

    1. Oluşturduğunuz ECS örneği için Actions sütunundaki Connect seçeneğine tıklayın.

      Bir ECS örneğine uzaktan bağlantı kurma hakkında daha fazla bilgi için bkz. Bağlantı yöntemleri.

    2. Java Development Kit (JDK) sürümünü kontrol edin.

      java -version
    3. İsteğe bağlı:Sürümü 1.8.0'dan eskiyse JDK'yı kaldırın.

      rpm -qa | grep java | xargs rpm -e --nodeps
    4. Java'yı yükleyin.

      sudo yum install java-1.8.0-openjdk* -y
    5. Profil yapılandırma dosyasını açmak için aşağıdaki komutu çalıştırın.

      vim /etc/profile
    6. Ortam değişkenlerini ekleyin.

      "path does not exist" hatası alırsanız /usr/lib/jvm/ dizinine giderek java-1.8.0-openjdk dosyasını bulun.

      export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
      export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jar
      export PATH=$PATH:$JAVA_HOME/bin
    7. Ortam değişkenlerini uygulayın.

      source /etc/profile
  2. SSH hizmetini etkinleştirin.

    1. SSH hizmetini yükleyin.

      sudo yum install -y openssh-clients openssh-server
    2. SSH hizmetini etkinleştirin ve başlatın.

      systemctl enable sshd && systemctl start sshd
    3. Bir SSH anahtarı oluşturun ve bunu yetkili anahtarlar listesine ekleyin.

      ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
      cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
      chmod 0600 ~/.ssh/authorized_keys
  3. Hadoop'u yükleyin.

    1. Hadoop kurulum paketini indirin.

      Bu örnekte Hadoop 3.4.0 kullanılmaktadır. Farklı bir sürüm kullanıyorsanız paket adını buna göre değiştirin. Hadoop kurulum paketlerini bulmak için Apache Hadoop releases sayfasına bakın.

      wget https://downloads.apache.org/hadoop/common/hadoop-3.4.0/hadoop-3.4.0.tar.gz
    2. Kurulum paketini çıkarın.

      tar xzf hadoop-3.4.0.tar.gz
    3. Paketi ortak bir konuma taşıyın.

      mv hadoop-3.4.0 /usr/local/hadoop
    4. Ortam değişkenlerini yapılandırın.

      1. Hadoop ortam değişkenlerini yapılandırın.

        vim /etc/profile
        export HADOOP_HOME=/usr/local/hadoop
        export PATH=$HADOOP_HOME/bin:$PATH
        source /etc/profile
      2. Hadoop yapılandırma dosyasındaki HADOOP_HOME değerini güncelleyin.

        cd $HADOOP_HOME
        vim etc/hadoop/hadoop-env.sh
      3. ${JAVA_HOME} ifadesini gerçek yol ile değiştirin.

        export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
    5. İsteğe bağlı:Dizin yoksa yeni ortam değişkenlerini uygulamak için aşağıdaki komutu çalıştırın.

      cd $HADOOP_HOME/etc/hadoop
    6. core-site.xml ve hdfs-site.xml yapılandırma dosyalarını güncelleyin.

      • Aşağıdaki özelliklerle core-site.xml dosyasını güncelleyin.

        <configuration>
          <!-- Specify the address of the NameNode in HDFS. -->
          <property>
              <name>fs.defaultFS</name>
              <!-- Replace the value with your hostname or localhost. -->
              <value>hdfs://localhost:9000</value>
          </property>
        
          <!-- Change the temporary directory of Hadoop to a custom directory. -->
          <property>
              <name>hadoop.tmp.dir</name>
              <!-- As the admin user, grant permissions to the directory by running sudo chown -R admin:admin /opt/module/hadoop-3.4.0 -->
              <value>/opt/module/hadoop-3.4.0/data/tmp</value>
          </property>
        </configuration>
      • Aşağıdaki özellikle hdfs-site.xml dosyasını güncelleyin.

        <configuration>
          <!-- Specify the number of HDFS replicas. -->
          <property>
              <name>dfs.replication</name>
              <value>1</value>
          </property>
        </configuration>
    7. NameNode'u biçimlendirin.

      hdfs namenode -format
    8. HDFS'yi başlatın.

      HDFS'yi başlatmak, NameNode, DataNode ve Secondary NameNode'u başlatmayı içerir.

      1. HDFS arka plan işlem hizmetlerini başlatın:

        cd /usr/local/hadoop/
        sbin/start-dfs.sh
      2. Çalışan Java işlemlerini kontrol edin.

        jps

        Aşağıdaki sonuç döndürülür:

        hdfs

        HDFS arka plan işlem hizmetleri artık çalışıyor. Ayrıntılı bilgileri görüntülemek için http://{ip}:9870 adresinden HDFS web UI'sine erişebilirsiniz.

  4. Hadoop kurulumunu doğrulayın.

    hadoop version komutunu çalıştırın. Sürüm bilgisi döndürülürse kurulum başarılı olmuştur.

3. Adım: OSS-HDFS'ye erişmek için JindoSDK'yi yapılandırın

  1. JindoSDK JAR paketini indirin.

    1. Hedef dizine gidin.

      cd /usr/lib/
    2. JindoSDK JAR paketinin en son sürümünü indirin. İndirme bağlantıları için bkz. GitHub.

    3. JindoSDK JAR paketini çıkarın.

      tar zxvf jindosdk-x.x.x-linux.tar.gz
      Not
  2. Ortam değişkenlerini yapılandırın.

    1. Profil yapılandırma dosyasını düzenleyin.

      vim /etc/profile
    2. JINDOSDK_HOME ortam değişkenini ayarlayın.

      export JINDOSDK_HOME=/usr/lib/jindosdk-x.x.x-linux
    3. HADOOP_CLASSPATH'i yapılandırın.

      export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:${JINDOSDK_HOME}/lib/*
    4. Yeni yapılandırmayı uygulamak için aşağıdaki komutu çalıştırın.

      . /etc/profile
  3. JindoSDK uygulama sınıfını ve AccessKey'i yapılandırın.

    1. JindoSDK uygulama sınıfını Hadoop'un core-site.xml dosyasına ekleyin.

      <configuration>
          <property>
              <name>fs.AbstractFileSystem.oss.impl</name>
              <value>com.aliyun.jindodata.oss.JindoOSS</value>
          </property>
      
          <property>
              <name>fs.oss.impl</name>
              <value>com.aliyun.jindodata.oss.JindoOssFileSystem</value>
          </property>
      </configuration>
    2. OSS-HDFS etkinleştirilmiş paketiniz için AccessKey ID ve AccessKey secret değerlerini core-site.xml dosyasına ekleyin.

      <configuration>
          <property>
              <name>fs.oss.accessKeyId</name>
              <value>xxx</value>
          </property>
      
          <property>
              <name>fs.oss.accessKeySecret</name>
              <value>xxx</value>
          </property>
      </configuration>
  4. OSS-HDFS uç noktasını yapılandırın.

    OSS-HDFS'ye erişmek için bir uç nokta yapılandırmanız gerekir. Önerilen URI biçimi oss://<Bucket>.<Endpoint>/<Object> şeklindedir; örneğin oss://examplebucket.cn-shanghai.oss-dls.aliyuncs.com/exampleobject.txt. Yapılandırmadan sonra JindoSDK, uygun OSS-HDFS API'sini çağırmak için erişim yolundaki uç noktayı kullanır.

    OSS-HDFS uç noktasını başka yöntemlerle de yapılandırabilirsiniz. Daha fazla bilgi için bkz. Uç nokta yapılandırmanın diğer yöntemleri.

4. Adım: OSS-HDFS'ye erişin

  • Dizin oluşturma

    hdfs dfs -mkdir oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/dir/
  • Nesne yükleme

    hdfs dfs -put /root/workspace/examplefile.txt oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/examplefile.txt
  • Dizin bilgilerini görüntüleme

    hdfs dfs -ls oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/dir/
  • Nesne bilgilerini görüntüleme

    hdfs dfs -ls oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/examplefile.txt
  • Nesne içeriğini görüntüleme

    Önemli

    Bu komut nesne içeriğini düz metin olarak yazdırır. İçerik kodlanmışsa nesneyi okumak ve ardından kodunu çözmek için HDFS Java API'sini kullanın.

    hdfs dfs -cat oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/examplefile.txt
  • Dizin veya nesne kopyalama

    hdfs dfs -cp oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/subdir1/  oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/subdir2/subdir1/
  • Dizin veya nesne taşıma

    hdfs dfs -mv oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/srcdir/  oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/destdir/
  • Nesne indirme

    hdfs dfs -get oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/exampleobject.txt  /tmp/
  • Dizin veya nesne silme

    hdfs dfs -rm oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/destfolder/