Gunakan penyimpanan metadata eksternal di Azure HDInsight

Penting

Metastore default menyediakan Azure SQL Database tingkat dasar hanya dengan ukuran maksimum data 5 DTU dan 2 GB (TIDAK DAPAT DITINGKATKAN)! Gunakan ini hanya untuk QA dan tujuan pengujian. Untuk beban kerja besar atau produksi, kami menyarankan migrasi ke metastore eksternal!

HDInsight memungkinkan Anda untuk mengontrol data dan metadata Anda dengan penyimpanan data eksternal. Fitur ini tersedia untuk metastore Apache Hive, metastore Apache Oozie, dan database Apache Ambari.

Metastore Apache Hive di HDInsight adalah bagian penting dari arsitektur Apache Hadoop. Sebuah metastore adalah repositori skema pusat. Metastore digunakan oleh alat akses big data lainnya seperti Apache Spark, Interactive Query (LLAP), Presto, atau Apache Pig. HDInsight menggunakan Azure SQL Database sebagai metastore Apache Hive.

HDInsight Hive Metadata Store Architecture.

Ada dua cara Anda dapat mengatur metastore untuk kluster HDInsight Anda:

Metastore default

Secara default, HDInsight membuat metastore dengan setiap jenis kluster. Sebagai gantinya, Anda dapat menentukan metastore kustom. Metastore default mencakup pertimbangan berikut:

  • Sumber daya yang terbatas. Lihat pemberitahuan pada bagian atas halaman.

  • Tanpa biaya tambahan. HDInsight membuat metastore dengan setiap jenis kluster tanpa biaya tambahan untuk Anda.

  • Setiap metastore default merupakan bagian dari siklus hidup kluster. Saat Anda menghapus kluster, metastore dan metadata yang sesuai juga akan dihapus.

  • Metastore default direkomendasikan hanya bagi beban kerja sederhana. Beban kerja yang tidak memerlukan beberapa kluster dan tidak memerlukan metadata yang dipertahankan di luar siklus hidup kluster.

  • Metastore default tidak bisa dibagikan dengan kluster lain.

Metastore kustom

HDInsight juga mendukung metastores kustom, yang direkomendasikan untuk kluster produksi:

  • Anda menentukan Azure SQL Database Anda sendiri sebagai metastore.

  • Siklus hidup metastore tidak terikat dengan siklus hidup kluster, sehingga Anda dapat membuat dan menghapus kluster tanpa kehilangan metadata. Metadata seperti skema Apache Hive Anda akan tetap ada bahkan setelah Anda menghapus dan membuat ulang kluster HDInsight.

  • Sebuah metastore kustom memungkinkan Anda melampirkan beberapa kluster dan jenis kluster ke metastore tersebut. Misalnya, satu metastore dapat dibagikan di seluruh kluster Interactive Query, Apache Hive, dan Spark di HDInsight.

  • Anda membayar biaya metastore (Azure SQL Database) sesuai dengan tingkat kinerja yang Anda pilih.

  • Anda dapat meningkatkan skala metastore sesuai kebutuhan.

  • Kluster dan metastore eksternal harus dihosting di wilayah yang sama.

HDInsight Hive Metadata Store Use Case.

Buat dan konfigurasikan Azure SQL Database untuk metastore kustom

Buat atau miliki Azure SQL Database yang sudah ada sebelum menyiapkan metastore Apache Hive kustom untuk kluster HDInsight. Untuk informasi selengkapnya, lihat Mulai cepat: Membuat database tunggal di Azure SQL Database.

Saat membuat kluster, layanan HDInsight perlu terhubung ke metastore eksternal dan memverifikasi info masuk Anda. Konfigurasikan aturan firewall Azure SQL Database untuk memungkinkan layanan dan sumber daya Azure mengakses server. Aktifkan opsi ini di portal Microsoft Azure dengan memilih Atur firewall server. Lalu pilih Tidak di bawah Tolak akses jaringan publik, dan Ya di bawah Izinkan layanan dan sumber daya Azure untuk mengakses server ini untuk Azure SQL Database. Untuk informasi selengkapnya, lihat Buat dan kelola aturan firewall IP

Titik akhir privat untuk penyimpanan SQL hanya didukung pada kluster yang dibuat dengan outbound ResourceProviderConnection. Untuk mempelajari selengkapnya, lihat dokumentasi.

set server firewall button.

allow azure services access.

Pilih metastore kustom selama pembuatan kluster

Anda dapat mengarahkan kluster ke Azure SQL Database yang dibuat sebelumnya kapan saja. Untuk pembuatan kluster melalui portal, opsinya ditentukan dari Penyimpanan > pengaturan Metastore.

HDInsight Hive Metadata Store Azure portal.

Panduan metastore Apache Hive

Catatan

Gunakan metastore kustom jika memungkinkan, untuk membantu memisahkan sumber daya komputasi (kluster anda yang sedang berjalan) dan metadata (disimpan di metastore). Mulailah dengan tingkat S2, yang menyediakan 50 DTU dan penyimpanan sebesar 250 GB. Jika melihat penyempitan, Anda dapat meningkatkan skala database.

  • Jika Anda ingin beberapa kluster HDInsight untuk mengakses data terpisah, gunakan database terpisah untuk metastore pada setiap kluster. Jika Anda berbagi metastore di beberapa kluster HDInsight, itu berarti bahwa kluster-kluster tersebut menggunakan metadata yang sama dan file data pengguna yang mendasarinya.

  • Cadangkan metastore kustom Anda secara berkala. Azure SQL Database menghasilkan file cadangan secara otomatis, tetapi kerangka waktu retensi cadangan bervariasi. Untuk informasi selengkapnya, lihat Mempelajari tentang pencadangan SQL Database otomatis.

  • Simpan metastore dan kluster HDInsight Anda di wilayah yang sama. Konfigurasi ini akan menghasilkan kinerja tertinggi dan biaya keluar jaringan terendah.

  • Pantau performa dan ketersediaan metastore Anda menggunakan alat Pemantauan Azure SQL Database, atau log Azure Monitor.

  • Ketika versi Azure HDInsight baru yang lebih tinggi dibuat melawan database metastore kustom yang ada, sistem meningkatkan skema metastore. Peningkatan tersebut tidak dapat diubah tanpa memulihkan database dari cadangan.

  • Jika Anda berbagi metastore di beberapa kluster, pastikan semua kluster memiliki versi HDInsight yang sama. Versi Apache Hive yang berbeda menggunakan skema database metastore yang berbeda. Misalnya, Anda tidak dapat berbagi metastore di seluruh kluster versi Apache Hive 2.1 dan Apache Hive 3.1.

  • Pada Microsoft Azure HDInsight 4.0, Spark dan Apache Hive menggunakan katalog independen untuk mengakses tabel Hive atau SparkSQL. Tabel yang dibuat oleh Spark lives di katalog Spark. Tabel yang dibuat oleh Apache Hive di katalog Apache Hive. Perilaku ini berbeda dari Microsoft Azure HDInsight 3.6 di mana Apache Hive dan Spark berbagi katalog yang sama. Integrasi Apache Hive dan Spark di Microsoft Azure HDInsight 4.0 mengandalkan Hive Warehouse Connector (HWC). HWC bekerja sebagai jembatan antara Spark dan Apache Hive. Pelajari tentang Apache Hive Warehouse Connector.

  • Pada Microsoft Azure HDInsight 4.0 jika Anda ingin Berbagi metastore antara Apache Hive dan Spark, Anda dapat melakukannya dengan mengubah default katalog metastore properti ke hive di kluster Spark Anda. Anda dapat menemukan properti ini di Ambari spark2-hive-site-override Tingkat Lanjut. Penting untuk dipahami bahwa berbagi metastore hanya berfungsi untuk tabel hive eksternal, ini tidak akan berfungsi jika Anda memiliki tabel hive internal/terkelola atau tabel ACID.

Memperbarui kata sandi metastore Apache Hive kustom

Saat menggunakan database metastore Apache Hive kustom, Anda memiliki kemampuan untuk mengubah kata sandi DB SQL. Jika Anda mengubah kata sandi untuk metastore kustom, layanan Apache Hive tidak akan berfungsi sampai Anda memperbarui kata sandi di kluster HDInsight.

Untuk memperbarui kata sandi metastore Apache Hive:

  1. Buka antarmuka pengguna Ambari.
  2. Klik Layanan --> Apache Hive --> Konfigurasi --> Database.
  3. Perbarui bidang Kata Sandi Database dengan kata sandi database server SQL baru.
  4. Klik tombol Uji Koneksi untuk memastikan kata sandi baru berfungsi.
  5. Klik tombol Simpan.
  6. Ikuti perintah Ambari untuk menyimpan konfigurasi dan Memulai Ulang layanan yang diperlukan.

Metastore Apache Oozie

Apache Oozie adalah sistem koordinasi alur kerja yang mengelola pekerjaan Hadoop. Oozie mendukung pekerjaan Hadoop untuk Apache MapReduce, Pig, Hive, dan lainnya. Oozie menggunakan metastore untuk menyimpan detail tentang alur kerja. Untuk meningkatkan kinerja saat menggunakan Oozie, Anda dapat menggunakan Azure SQL Database sebagai metastore kustom. Metastore tersebut menyediakan akses ke data pekerjaan Oozie setelah Anda menghapus kluster Anda.

Untuk instruksi tentang membuat metastore Oozie dengan Azure SQL Database, lihat Gunakan Apache Oozie untuk alur kerja.

Memperbarui kata sandi metastore Oozie kustom

Saat menggunakan database metastore Oozie kustom, Anda memiliki kemampuan untuk mengubah kata sandi DB SQL. Jika Anda mengubah kata sandi untuk metastore kustom, layanan Oozie tidak akan berfungsi sampai Anda memperbarui kata sandi di kluster HDInsight.

Untuk memperbarui kata sandi metastore Oozie:

  1. Buka antarmuka pengguna Ambari.
  2. Klik Layanan --> Oozie --> Konfigurasi --> Database.
  3. Perbarui bidang Kata Sandi Database dengan kata sandi database server SQL baru.
  4. Klik tombol Uji Koneksi untuk memastikan kata sandi baru berfungsi.
  5. Klik tombol Simpan.
  6. Ikuti perintah Ambari untuk menyimpan konfigurasi dan Memulai Ulang layanan yang diperlukan.

Ambari DB Kustom

Untuk menggunakan database eksternal Anda sendiri dengan Apache Ambari di HDInsight, lihat Database Apache Ambari Kustom.

Langkah berikutnya