Fitur konektivitas jaringan memungkinkan Anda menetapkan koneksi antara EMR Serverless Spark dan virtual private cloud (VPC) Anda. Koneksi ini memungkinkan akses ke sumber data dan server atau pemanggilan layanan lain dalam VPC. Topik ini memberikan contoh cara menghubungkan pekerjaan Spark SQL dan Application JAR ke Hive Metastore (HMS) di VPC Anda melalui konfigurasi konektivitas jaringan.
Prasyarat
Sumber data harus disiapkan. Topik ini menggunakan kluster DataLake sebagai contoh. Kluster tersebut harus dibuat pada halaman EMR on ECS, menyertakan layanan Hive, dan menggunakan database Built-in MySQL untuk Metadata. Untuk informasi selengkapnya, lihat Buat kluster.
Batasan
Saat ini, Anda hanya dapat menggunakan vSwitch di zona berikut.
Langkah 1: Tambahkan koneksi jaringan
Buka halaman Konektivitas Jaringan.
Masuk ke Konsol EMR.
Pada panel navigasi sebelah kiri, pilih .
Pada halaman Spark, klik nama ruang kerja yang dituju.
Pada halaman EMR Serverless Spark, klik Network Connectivity di panel navigasi sebelah kiri.
Pada halaman Network Connectivity, klik Add Network Connection.
Pada kotak dialog Add Network Connection, konfigurasikan parameter dan klik OK.
Parameter
Deskripsi
Connection Name
Masukkan nama untuk koneksi baru.
VPC
Pilih VPC yang sama dengan kluster EMR Anda.
Jika tidak tersedia VPC, klik Create VPC untuk membuka Konsol VPC dan membuatnya. Untuk informasi selengkapnya, lihat VPC dan vSwitch.
CatatanJika Serverless Spark Anda perlu mengakses Internet, pastikan koneksi jaringan memiliki akses jaringan publik. Misalnya, Anda dapat menerapkan Gateway NAT Internet di VPC. Hal ini memungkinkan instans Serverless Spark mengakses Internet melalui gerbang tersebut. Untuk informasi selengkapnya, lihat Gunakan fitur SNAT Gateway NAT Internet untuk mengakses Internet.
VSwitch
Pilih vSwitch dalam VPC yang sama dengan kluster EMR.
Jika tidak tersedia vSwitch di zona saat ini, klik Virtual Switch untuk membuka Konsol VPC dan membuatnya. Untuk informasi selengkapnya, lihat Buat dan kelola vSwitch.
PentingAnda hanya dapat memilih vSwitch di zona tertentu. Untuk informasi selengkapnya, lihat Batasan.
Koneksi jaringan ditambahkan ketika Status-nya berubah menjadi Successful.

Langkah 2: Tambahkan aturan grup keamanan untuk kluster EMR
Dapatkan blok CIDR dari vSwitch yang ditentukan dalam koneksi jaringan.
Anda dapat masuk ke Konsol VPC dan buka halaman VSwitches untuk mendapatkan blok CIDR vSwitch tersebut.

Tambahkan aturan grup keamanan.
Masuk ke Konsol EMR on ECS.
Pada halaman EMR on ECS, klik ID kluster yang dituju.
Pada tab Basic Information, di bagian Security, klik tautan di samping Cluster Security Group.
Pada halaman Security Group Details, di bagian Access Rules, klik Add Rule. Konfigurasikan parameter berikut dan klik OK.
Parameter
Deskripsi
Protocol
Tentukan protokol komunikasi jaringan yang diizinkan. Nilai default adalah TCP.
CatatanJika koneksi jaringan Anda digunakan untuk otentikasi Kerberos, pilih protokol UDP dan buka port 88. Untuk informasi selengkapnya tentang otentikasi Kerberos, lihat Aktifkan otentikasi Kerberos.
Source
Masukkan blok CIDR vSwitch yang Anda peroleh pada langkah sebelumnya.
PentingUntuk mencegah risiko keamanan akibat serangan eksternal, jangan mengatur Otorisasi Objek menjadi 0.0.0.0/0.
Destination (This Instance)
Tentukan port tujuan yang akan diizinkan aksesnya. Misalnya, 9083.
(Opsional) Langkah 3: Sambungkan ke layanan Hive dan kueri data tabel
Anda dapat melewatkan langkah ini jika sudah membuat dan mengonfigurasi tabel Hive.
Gunakan Secure Shell (SSH) untuk masuk ke node master kluster. Untuk informasi selengkapnya, lihat Masuk ke kluster.
Jalankan perintah berikut untuk masuk ke baris perintah Hive:
hiveJalankan perintah berikut untuk membuat tabel:
CREATE TABLE my_table (id INT,name STRING);Jalankan perintah berikut untuk memasukkan data ke dalam tabel:
INSERT INTO my_table VALUES (1, 'John'); INSERT INTO my_table VALUES (2, 'Jane');Jalankan perintah berikut untuk mengkueri data:
SELECT * FROM my_table;
(Opsional) Langkah 4: Siapkan dan unggah file sumber daya
Jika Anda berencana menggunakan pekerjaan JAR, Anda harus menyiapkan file sumber daya. Anda dapat melewatkan langkah ini jika berencana menggunakan jenis pekerjaan SparkSQL.
Buat proyek Maven baru di mesin lokal Anda.
Jalankan perintah
mvn package. Setelah proyek dikompilasi dan dipaketkan, file sparkDataFrame-1.0-SNAPSHOT.jar akan dihasilkan.Pada halaman EMR Serverless Spark untuk ruang kerja yang dituju, klik File Management di panel navigasi sebelah kiri.
Pada halaman File Management, klik Upload File.
Unggah file
sparkDataFrame-1.0-SNAPSHOT.jar.
Langkah 5: Buat dan jalankan pekerjaan
Pekerjaan JAR
Pada halaman EMR Serverless Spark, klik Data Development di panel navigasi sebelah kiri.
Klik Create.
Masukkan nama, pilih sebagai jenis pekerjaan, lalu klik OK.
Pada tab pengembangan pekerjaan baru, konfigurasikan parameter berikut, biarkan parameter lain pada pengaturan default-nya, lalu klik Run.
Parameter
Deskripsi
Main JAR Resource
Pilih file sumber daya yang Anda unggah pada langkah sebelumnya. Misalnya, sparkDataFrame-1.0-SNAPSHOT.jar.
Main Class
Kelas utama yang ditentukan saat Anda mengirimkan pekerjaan Spark. Contoh ini menggunakan com.example.DataFrameExample.
Network Connection
Pilih nama koneksi jaringan yang Anda tambahkan pada Langkah 1.
Spark Configuration
Konfigurasikan parameter berikut.
spark.hadoop.hive.metastore.uris thrift://*.*.*.*:9083 spark.hadoop.hive.imetastoreclient.factory.class org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClientFactoryPada parameter ini,
*.*.*.*adalah Alamat IP pribadi layanan HMS. Gantilah dengan alamat IP yang sebenarnya. Contoh ini menggunakan Alamat IP pribadi node master kluster EMR. Anda dapat menemukan alamat IP ini pada halaman Node Management kluster EMR. Klik ikon
di samping grup node emr-master untuk melihat alamat IP tersebut.Setelah pekerjaan dijalankan, buka bagian Run History di bagian bawah halaman dan klik Log Details di kolom Tindakan.
Pada tab Log Details, Anda dapat melihat log tersebut.
Pekerjaan SparkSQL
Buat dan mulai sesi SQL. Untuk informasi selengkapnya, lihat Kelola sesi SQL.
Network Connection: Pilih koneksi jaringan yang Anda tambahkan pada Langkah 1.
Spark Configuration: Konfigurasikan parameter berikut.
spark.hadoop.hive.metastore.uris thrift://*.*.*.*:9083 spark.hadoop.hive.imetastoreclient.factory.class org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClientFactoryPada kode ini,
*.*.*.*merepresentasikan alamat IP internal layanan HSM. Gantilah dengan alamat IP yang sebenarnya. Contoh ini menggunakan alamat IP internal node master kluster EMR. Anda dapat memperoleh alamat IP ini pada halaman Node Management kluster EMR dengan mengklik ikon
di samping grup node emr-master.
Pada halaman EMR Serverless Spark, klik Data Development di panel navigasi sebelah kiri.
Pada tab Development, klik ikon
.Pada kotak dialog Create, masukkan nama, misalnya users_task, biarkan jenis tetap sebagai SparkSQL default, lalu klik OK.
Pada tab pengembangan pekerjaan baru, pilih katalog, database, dan instans sesi SQL yang sedang berjalan. Kemudian, masukkan perintah berikut dan klik Run.
SELECT * FROM default.my_table;CatatanSaat menerapkan kode SQL berdasarkan metastore eksternal ke alur kerja, pastikan pernyataan SQL Anda menentukan nama tabel dalam format
db.table_name. Anda juga harus memilih database default dari opsi Katalog di pojok kanan atas. Formatnya haruscatalog_id.default.Informasi yang dikembalikan ditampilkan di bagian Run Result di bagian bawah halaman.
