Tambahkan pustaka Apache Hive kustom saat membuat kluster HDInsight Anda

Pelajari cara melakukan pra-pemuatan pustaka Apache Hive di HDInsight. Dokumen ini berisi informasi tentang penggunaan Script Action untuk melakukan pra-pemuatan pustaka selama pembuatan kluster. Pustaka yang ditambahkan menggunakan langkah-langkah dalam dokumen ini tersedia secara global di Apache Hive - tidak perlu menggunakan TAMBAHKAN JAR untuk memuatnya.

Cara kerjanya

Saat membuat kluster, Anda dapat menggunakan Script Action untuk memodifikasi node kluster saat dibuat. Skrip dalam dokumen ini menerima satu parameter, yang merupakan lokasi pustaka. Lokasi ini harus berada di Akun Azure Storage, dan pustaka harus disimpan sebagai file jar.

Selama pembuatan kluster, skrip menghitung file, menyalinnya ke /usr/lib/customhivelibs/ direktori pada node kepala dan pekerja, lalu menambahkannya ke hive.aux.jars.path properti dalam file core-site.xml. Pada kluster berbasis Linux, itu juga memperbarui hive-env.sh file dengan lokasi file.

Menggunakan tindakan skrip dalam artikel ini membuat pustaka tersedia saat menggunakan klien Apache Hive untuk WebHCat, dan HiveServer2.

Skrip

Lokasi skrip

https://hdiconfigactions.blob.core.windows.net/setupcustomhivelibsv01/setup-customhivelibs-v01.ps1

Persyaratan

  • Skrip harus diterapkan ke node Kepala dan node Pekerja.

  • Jar yang ingin Anda pasang harus disimpan di Azure Blob Storage dalam satu wadah.

  • Akun penyimpanan yang berisi pustaka file jar harus ditautkan ke kluster HDInsight selama pembuatan. Ini harus berupa akun penyimpanan default, atau akun yang ditambahkan melalui Pengaturan Akun Penyimpanan.

  • Jalur WASB ke kontainer harus ditentukan sebagai parameter untuk Script Action. Misalnya, jika jar disimpan dalam kontainer bernama libs pada akun penyimpanan bernama mystorage, parameternya adalah wasbs://libs@mystorage.blob.core.windows.net/.

    Catatan

    Dokumen ini mengasumsikan bahwa Anda telah membuat akun penyimpanan, kontainer blob, dan mengunggah file ke dalamnya.

    Jika Anda belum membuat akun penyimpanan, Anda dapat melakukannya melalui portal Microsoft Azure. Anda kemudian dapat menggunakan utilitas seperti Azure Storage Explorer untuk membuat kontainer di akun dan mengunggah file ke dalamnya.

Buat kluster menggunakan skrip

  1. Mulai provisi kluster dengan menggunakan langkah-langkah dalam Provision kluster HDInsight di Linux, tetapi jangan selesaikan provisi. Anda juga dapat menggunakan Azure PowerShell atau HDInsight .NET SDK untuk membuat kluster menggunakan skrip ini. Untuk informasi selengkapnya tentang penggunaan metode ini, lihat Kustomisasi kluster HDInsight dengan Script Actions. Untuk portal Microsoft Azure, dari tab Konfigurasi + harga, pilih + Tambahkan tindakan skrip.

  2. Untuk Storage, jika akun penyimpanan yang berisi pustaka file jar akan berbeda dari akun yang digunakan untuk kluster, lengkapi Akun penyimpanan tambahan.

  3. Untuk Script Actions, berikan informasi berikut:

    Properti Nilai
    Jenis skrip - Kustom
    Nama Pustaka
    URI skrip bash https://hdiconfigactions.blob.core.windows.net/linuxsetupcustomhivelibsv01/setup-customhivelibs-v01.sh
    Jenis node Kepala, Pekerja
    Parameter Masukkan alamat WASB ke kontainer dan akun penyimpanan yang berisi jar. Contohnya:wasbs://libs@mystorage.blob.core.windows.net/

    Catatan

    Untuk Apache Spark 2.1, gunakan URI skrip bash ini: https://hdiconfigactions.blob.core.windows.net/linuxsetupcustomhivelibsv01/setup-customhivelibs-v00.sh.

  4. Lanjutkan provisi kluster seperti yang dijelaskan dalam kluster Provision HDInsight di Linux.

Setelah pembuatan kluster selesai, Anda dapat menggunakan jar yang ditambahkan melalui skrip ini dari Apache Hive tanpa harus menggunakan pernyataan ADD JAR.

Langkah berikutnya

Untuk informasi selengkapnya tentang bekerja dengan Apache Hive, lihat Menggunakan Apache Hive dengan HDInsight