全部产品
Search
文档中心

E-MapReduce:Gunakan OSS-HDFS sebagai backend penyimpanan HBase

更新时间:Jul 02, 2025

Alibaba Cloud E-MapReduce (EMR) memungkinkan Anda menyimpan data kluster DataServing di OSS-HDFS dan log WAL di Hadoop Distributed File System (HDFS). Topik ini menjelaskan cara menggunakan OSS-HDFS sebagai backend penyimpanan HBase.

Informasi latar belakang

OSS-HDFS adalah layanan penyimpanan danau data berbasis cloud-native. OSS-HDFS menyediakan kemampuan manajemen metadata terpadu dan sepenuhnya kompatibel dengan API HDFS. OSS-HDFS juga mendukung Portable Operating System Interface (POSIX). OSS-HDFS memungkinkan Anda mengelola data dalam berbagai skenario komputasi berbasis danau data di bidang data besar dan AI. Untuk informasi lebih lanjut, lihat Ikhtisar.

Batasan

Fitur ini hanya didukung oleh kluster DataServing di EMR V3.42, EMR V5.8.0, dan versi minor terbaru mereka.

Prosedur

  1. Aktifkan OSS-HDFS dan berikan izin akses. Untuk informasi lebih lanjut, lihat Aktifkan OSS-HDFS dan Berikan Izin Akses.

  2. Dapatkan titik akhir OSS-HDFS.

    Di halaman Overview bucket di konsol Object Storage Service (OSS), salin nama domain OSS-HDFS. Gunakan nama domain tersebut sebagai nilai parameter hbase.rootdir saat membuat kluster EMR HBase.HDFS Endpoint

  3. Gunakan OSS-HDFS.

    1. Buat kluster DataServing. Untuk informasi lebih lanjut, lihat Buat Kluster.

      HBase oldKonfigurasikan parameter berikut saat membuat kluster:

      • Optional Services (Select One At Least): Pilih semua opsi kecuali JindoData.

      • HBase Storage Mode: Pilih OSS-HDFS.

      • Root Directory: Masukkan direktori bucket OSS yang telah mengaktifkan OSS-HDFS. Direktori tersebut dalam format oss://${OSS-HDFS endpoint}/${dir}. Contoh: oss://test_bucket.cn-hangzhou.oss-dls.aliyuncs.com/hbase.

      Catatan

      Perhatikan hal-hal berikut dalam operasi sebenarnya:

      • Ganti ${OSS-HDFS endpoint} dengan titik akhir OSS-HDFS yang Anda peroleh di Langkah 2.

      • Ganti ${dir} dengan direktori root HBase.

    2. Buat tabel HBase.

      1. Masuk ke kluster DataServing. Untuk informasi lebih lanjut, lihat Masuk ke Kluster.

      2. Jalankan perintah berikut untuk mengakses HBase Shell:

        hbase shell
      3. Jalankan perintah berikut untuk membuat tabel HBase bernama bar yang memiliki keluarga kolom bernama f:

        create 'bar','f'

        Jalankan perintah list untuk melihat informasi tentang tabel HBase.

        Informasi berikut dikembalikan:

        TABLE
        bar
        1 row(s)
        Took 0.0138 seconds
    3. Keluar dari HBase shell dan jalankan perintah berikut untuk memverifikasi data di tabel HBase.

      Sintaks:

      hadoop fs -ls oss://${OSS-HDFS endpoint}/{dir}

      Contoh:

      hadoop fs -ls oss://test_bucket.cn-hangzhou.oss-dls.aliyuncs.com/hbase/data/default

      Jika informasi serupa dengan output berikut dikembalikan, tabel HBase dibuat di OSS-HDFS.

      Found 1 items
      drwxrwxrwx   - hbase supergroup          0 2022-07-28 14:45 oss://test_bucket.cn-hangzhou.oss-dls.aliyuncs.com/hbase/data/default/bar
  4. Opsional:Hapus kluster EMR HBase dan buat kluster baru.

    Setelah data kluster EMR HBase disimpan di OSS-HDFS, kluster tersebut dapat dihapus dan kluster baru dapat dibuat di direktori bucket OSS yang telah mengaktifkan OSS-HDFS.

    Penting
    • Versi HBase dari kluster yang dihapus dan kluster baru harus sama. Jika tidak, masalah seperti ketidakcocokan mungkin terjadi di kluster baru, yang membuat kluster baru tidak tersedia.hbase version

    • Anda hanya dapat menggunakan satu kluster HBase di direktori pada saat yang sama. Jika Anda menulis data ke beberapa kluster HBase di direktori pada waktu yang sama, metadata atau data yang ditulis ke kluster mungkin berbeda dari yang asli, yang membuat kluster tidak tersedia.

    1. Masuk ke kluster DataServing. Untuk informasi lebih lanjut, lihat Masuk ke Kluster.

    2. Jalankan perintah berikut untuk mengakses HBase Shell:

      hbase shell
    3. Jalankan perintah berikut untuk melakukan operasi FLUSH. Ini memastikan bahwa data di semua tabel dalam memori diflush ke HFile.

      flush 'bar'
    4. Jalankan perintah berikut untuk menonaktifkan tabel terkait. Ini mencegah data baru ditulis ke tabel.

      disable 'bar'
    5. Buat kluster baru yang versi Hbasenya sama dengan kluster yang dihapus. Tentukan direktori yang sama untuk kluster baru menyimpan data.

      HBase new

      Setelah kluster baru dibuat, Anda dapat terus menggunakan data yang disimpan di OSS-HDFS.