Membuat cluster Hadoop
Anda dapat menggunakan Managed Service untuk Apache Spark untuk membuat satu atau beberapa instance Compute Engine yang dapat terhubung ke instance Bigtable dan menjalankan tugas Hadoop. Halaman ini menjelaskan cara menggunakan Managed Service untuk Apache Spark untuk mengotomatiskan tugas berikut:
- Menginstal Hadoop dan klien HBase untuk Java
- Mengonfigurasi Hadoop dan Bigtable
- Menetapkan cakupan otorisasi yang benar untuk Bigtable
Setelah membuat cluster Managed Service untuk Apache Spark, Anda dapat menggunakan cluster tersebut untuk menjalankan tugas Hadoop yang membaca dan menulis data ke dan dari Bigtable.
Halaman ini mengasumsikan bahwa Anda sudah memahami Hadoop. Untuk mengetahui informasi tambahan tentang Managed Service untuk Apache Spark, lihat dokumentasi Managed Service untuk Apache Spark.
Sebelum memulai
Sebelum memulai, Anda harus menyelesaikan tugas berikut:
- Membuat instance Bigtable. Pastikan untuk mencatat ID project dan ID instance Bigtable.
-
Mengaktifkan Cloud Bigtable API, Cloud Bigtable Admin API, Managed Service untuk Apache Spark, dan Cloud Storage JSON API.
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan izin
serviceusage.services.enable. Jika Anda membuat project, kemungkinan Anda sudah memiliki izin ini melalui peran Pemilik (roles/owner). Jika tidak, Anda bisa mendapatkan izin ini melalui peran Admin Penggunaan Layanan (roles/serviceusage.serviceUsageAdmin). Pelajari cara memberikan peran. - Pastikan akun pengguna Anda memiliki peran yang mencakup izin
storage.objects.get.Buka halaman IAM di Google Cloud konsol.
- Instal Google Cloud CLI. Lihat petunjuk penyiapan gcloud CLI untuk mengetahui detailnya.
-
Instal Apache Maven, yang digunakan untuk menjalankan tugas Hadoop contoh.
Di Debian GNU/Linux atau Ubuntu, jalankan perintah berikut:
sudo apt-get install maven
Di RedHat Enterprise Linux atau CentOS, jalankan perintah berikut:
sudo yum install maven
Di macOS, instal Homebrew, lalu jalankan perintah berikut:
brew install maven
- Clone repositori GitHub
GoogleCloudPlatform/cloud-bigtable-examples,
yang berisi contoh tugas Hadoop yang menggunakan Bigtable:
git clone https://github.com/GoogleCloudPlatform/cloud-bigtable-examples.git
Membuat bucket Cloud Storage
Managed Service untuk Apache Spark menggunakan bucket Cloud Storage untuk menyimpan file sementara. Untuk mencegah konflik penamaan file, buat bucket baru untuk Managed Service untuk Apache Spark.
Nama bucket Cloud Storage harus unik secara global di semua bucket. Pilih nama bucket yang kemungkinan tersedia, seperti nama yang menggabungkan nama project Anda Google Cloud .
Setelah memilih nama, gunakan perintah berikut untuk membuat bucket baru, dengan mengganti nilai dalam tanda kurung dengan nilai yang sesuai:
gcloud storage buckets create gs://[BUCKET_NAME] --project=[PROJECT_ID]
Membuat cluster Managed Service untuk Apache Spark
Jalankan perintah berikut untuk membuat cluster Managed Service untuk Apache Spark dengan empat node pekerja, dengan mengganti nilai dalam tanda kurung dengan nilai yang sesuai:
gcloud dataproc clusters create [DATAPROC_CLUSTER_NAME] --bucket [BUCKET_NAME] \
--region [region] --num-workers 4 --master-machine-type n1-standard-4 \
--worker-machine-type n1-standard-4
Lihat dokumentasi gcloud dataproc clusters create
untuk mengetahui setelan tambahan yang dapat Anda konfigurasi. Jika Anda mendapatkan pesan error yang
menyertakan teks Insufficient 'CPUS' quota, coba tetapkan flag --num-workers
ke nilai yang lebih rendah.
Menguji cluster Managed Service untuk Apache Spark
Setelah menyiapkan cluster Managed Service untuk Apache Spark, Anda dapat menguji cluster dengan menjalankan tugas Hadoop contoh yang menghitung jumlah kemunculan kata dalam file teks. Tugas contoh menggunakan Bigtable untuk menyimpan hasil operasi. Anda dapat menggunakan tugas contoh ini sebagai referensi saat menyiapkan tugas Hadoop Anda sendiri.
Menjalankan tugas Hadoop contoh
- Di direktori tempat Anda meng-clone repositori GitHub, ubah ke direktori
java/dataproc-wordcount. Jalankan perintah berikut untuk mem-build project, dengan mengganti nilai dalam tanda kurung dengan nilai yang sesuai:
mvn clean package -Dbigtable.projectID=[PROJECT_ID] \ -Dbigtable.instanceID=[BIGTABLE_INSTANCE_ID]Jalankan perintah berikut untuk memulai tugas Hadoop, dengan mengganti nilai dalam tanda kurung dengan nilai yang sesuai:
./cluster.sh start [DATAPROC_CLUSTER_NAME]
Setelah selesai, tugas akan menampilkan nama tabel output, yaitu kata WordCount diikuti tanda hubung dan angka unik:
Output table is: WordCount-1234567890
Memverifikasi hasil tugas Hadoop
Secara opsional, setelah menjalankan tugas Hadoop, Anda dapat menggunakan
cbt CLI
untuk
memverifikasi bahwa tugas berhasil dijalankan:
-
Buka jendela terminal di Cloud Shell.
- Instal
cbtCLI :gcloud components updategcloud components install cbt - Pindai tabel output untuk melihat hasil tugas Hadoop, dengan mengganti
[TABLE_NAME]dengan nama tabel output Anda:cbt -instance [BIGTABLE_INSTANCE_ID] read [TABLE_NAME]
Setelah memverifikasi bahwa cluster telah disiapkan dengan benar, Anda dapat menggunakannya untuk menjalankan tugas Hadoop Anda sendiri.
Menghapus cluster Managed Service untuk Apache Spark
Setelah selesai menggunakan cluster Managed Service untuk Apache Spark, jalankan perintah berikut untuk mematikan dan menghapus cluster, dengan mengganti [DATAPROC_CLUSTER_NAME] dengan nama cluster Managed Service untuk Apache Spark Anda:
gcloud dataproc clusters delete [DATAPROC_CLUSTER_NAME]
Langkah berikutnya
- Pelajari lebih lanjut Managed Service untuk Apache Spark.
- Mulai gunakan klien HBase untuk Java.