Membuat objek koneksi
Untuk terhubung ke Bigtable menggunakan klien HBase Cloud Bigtable
untuk Java, Anda harus menetapkan properti konfigurasi, lalu membuat
objek Connection
. Membuat objek Connection
adalah
operasi berat, jadi buat objek ini sesedikit mungkin:
- Jika Anda menggunakan replikasi, atau jika Anda menggunakan profil
aplikasi untuk mengidentifikasi berbagai jenis traffic ke instance,
buat satu objek
Connection
per profil aplikasi dan bagikan objek di antara thread dalam aplikasi Anda. - Jika Anda tidak menggunakan replikasi atau profil aplikasi, buat satu objek
Connection
dan bagikan di antara thread dalam aplikasi Anda.
Ada beberapa cara untuk menentukan setelan konfigurasi untuk objek Connection
:
Sertakan setelan dalam kode Anda. Jika aplikasi Anda menggunakan beberapa profil aplikasi (misalnya, jika aplikasi tersebut menjalankan beberapa fungsi yang berbeda, dengan profil aplikasi terpisah untuk setiap fungsi), Anda harus menggunakan opsi ini.
Anda juga dapat menggunakan opsi ini jika memilih untuk menyimpan setelan konfigurasi dalam kode aplikasi, atau jika tidak praktis untuk menyertakan file konfigurasi eksternal sebagai resource dalam aplikasi Anda.
Gunakan file
hbase-site.xml
untuk menyimpan setelan. Gunakan opsi ini jika aplikasi Anda menggunakan HBase dan Bigtable, atau jika Anda lebih suka menyimpan setelan konfigurasi Bigtable dalam file mandiri.
Bagian berikut menjelaskan setiap cara untuk mengonfigurasi dan membuat objek Connection
.
Menyertakan setelan dalam kode Anda
Contoh berikut menunjukkan cara membuat objek Connection
di
aplikasi Anda sendiri. Ganti [VALUES_IN_BRACKETS]
dengan nilai yang benar untuk instance Anda:
package com.example.helloworld;
import com.google.cloud.bigtable.hbase.BigtableConfiguration;
import com.google.cloud.bigtable.hbase.BigtableOptionsFactory;
import java.io.IOException;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.client.Connection;
public class BigtableHelper {
private static final String PROJECT_ID = "[YOUR_PROJECT_ID]";
private static final String INSTANCE_ID = "[YOUR_INSTANCE_ID]";
// Include the following line if you are using app profiles.
// If you do not include the following line, the connection uses the
// default app profile.
private static final STRING APP_PROFILE_ID = "[YOUR_APP_PROFILE_ID]";
private static Connection connection = null;
public static void connect() throws IOException {
Configuration config = BigtableConfiguration.configure(PROJECT_ID, INSTANCE_ID);
// Include the following line if you are using app profiles.
// If you do not include the following line, the connection uses the
// default app profile.
config.set(BigtableOptionsFactory.APP_PROFILE_ID_KEY, APP_PROFILE_ID);
connection = BigtableConfiguration.connect(config);
}
}
Menggunakan file hbase-site.xml
Bagian ini menjelaskan cara membuat objek Connection
dengan menyertakan
setelan konfigurasi dalam file hbase-site.xml
.
Kode contoh
Contoh berikut menunjukkan cara mengonfigurasi dan membuat objek Connection
di aplikasi Anda sendiri:
package com.example.helloworld;
import java.io.IOException;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.client.Connection;
import org.apache.hadoop.hbase.client.ConnectionFactory;
public class BigtableHelper {
private static Connection connection = null;
public static void connect() throws IOException {
Configuration config = HBaseConfiguration.create();
connection = ConnectionFactory.createConnection(config);
}
}
File hbase-site.xml
terpisah disertakan dalam resource file JAR. Saat
Anda membuat objek Configuration
, klien HBase Cloud Bigtable
untuk Java akan otomatis membaca setelan dari file hbase-site.xml
.
Bagian berikut menjelaskan cara menerapkan metode ini di aplikasi Anda.
Membuat file hbase-site.xml
Di direktori src/main/resources
project Anda, buat file bernama
hbase-site.xml
. File harus berisi semua properti yang ditampilkan dalam
contoh berikut. Ganti [VALUES_IN_BRACKETS]
dengan nilai yang benar untuk
instance Anda:
<configuration>
<property>
<name>hbase.client.connection.impl</name>
<value>com.google.cloud.bigtable.hbase1_x.BigtableConnection</value>
</property>
<property>
<name>google.bigtable.project.id</name>
<value>[YOUR_PROJECT_ID]</value>
</property>
<property>
<name>google.bigtable.instance.id</name>
<value>[YOUR_INSTANCE_ID]</value>
</property>
<!--
Include the following property if you are using app profiles.
If you do not include the following property, the connection uses the
default app profile.
-->
<property>
<name>google.bigtable.app_profile.id</name>
<value>[YOUR_APP_PROFILE_ID]</value>
</property>
</configuration>
Menambahkan hbase-site.xml ke file JAR
Setelah membuat file hbase-site.xml
, Anda harus mengupdate skrip
build untuk menyertakan direktori src/main/resources
dalam file JAR project Anda.
Jika Anda menggunakan Maven, edit elemen <build>
dari file pom.xml
untuk
menyalin resource ke file JAR:
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>
Membuat objek Koneksi
Sekarang Anda dapat memperbarui kode untuk membuat objek Configuration
. Saat Anda membuat
objek ini, klien HBase Cloud Bigtable untuk Java akan otomatis
membaca setelan dari file hbase-site.xml
. Kemudian, Anda dapat menggunakan setelan ini untuk membuat objek Connection
:
Configuration config = HBaseConfiguration.create();
connection = ConnectionFactory.createConnection(config);
Langkah selanjutnya
- Pelajari klien HBase untuk Java lebih lanjut.
- Lihat contoh "hello world".
- Cari tahu cara menggunakan library klien.