HBase ile Tablo Oluştur Java API ve Kabuk Örneği
⚡ Akıllı Özet
HBase verileri tablolarda saklar ve bu tabloları iki şekilde oluşturabilir ve yönetebilirsiniz: Java HTable ile APIDescriptveya HBaseAdmin üzerinden ya da doğrudan HBase kabuğunda create komutunu kullanarak.

HBase ile Tablo Nasıl Oluşturulur Java API
HBase'de tablolar iki şekilde oluşturulabilir: şu yollarla: Java API ve HBase kabuğu aracılığıyla. Bu bölüm şunları kapsar: Java API, bir uygulamanın daha büyük bir işlemin parçası olarak programatik bir şekilde tablolar oluşturmasına ve veri yüklemesine olanak tanır.
İçinden Java API, HBase'de tablolar oluşturabilir ve ayrıca kullanarak tablolara veri yükleyebiliriz. Java Kodlama. Burada kurduğumuz iki şey şunlardır:
- HBase ile bağlantı kurma Java API.
- kullanma Eclipse için Java Kodlama, hata ayıklama ve test etme.
HBase'de tablo oluşturma adımları aşağıdadır: Java API.
Adım 1) Oluşturun Java Proje Eclipse
Bu adımda bir oluşturacağız. Java projede Eclipse HBase bağlantısı için, adı “HbaseConnection” olan bağlantı.
Yeni Java Aşağıdaki proje iletişim kutusunda “HbaseConnection” projesinin kurulumu gösterilmektedir:
Yukarıdaki ekran görüntüsüne bakarsak:
- Proje adını bu kutuya yazın. Bizim örneğimizde proje adı "HbaseConnection".
- Kaydedilecek varsayılan konum için bu kutuyu işaretleyin. Burada /home/hduser/work/HbaseConnection yoludur.
- için kutuyu işaretleyin Java Buradaki ortam. Bu durumda JavaSE-1.7 Java baskı.
- Dosyayı nereye kaydetmek istediğinizi seçin. Bizim durumumuzda, ikinci seçenek olan "Kaynaklar ve sınıf dosyaları için ayrı bir klasör oluştur" seçeneğini seçtik.
- "Bitir" düğmesine tıklayın; bu işlem "HbaseConnection" projesini oluşturur. Eclipse ve açar Eclipse ana sayfa.
Adım 2) Derleme Yolunu Yapılandırın Eclipse
Üzerinde Eclipse Ana sayfada, derleme yolu yapılandırmasını açmak için şu adımları izleyin:
Right click on project -> Select Build Path -> Configure build path
Aşağıdaki ekran görüntüsü, derleme yolu yapılandırmasını açmak için kullanılan sağ tıklama menüsünü göstermektedir:
Yukarıdaki ekran görüntüsünden:
- Projeye sağ tıklayın.
- Yol Oluştur'u seçin.
- "Yapılandırma Yolunu Yapılandır" seçeneğini seçin.
"Yapılandırma Yolunu Yapılandır" seçeneğine tıkladıktan sonra, aşağıdaki ekran görüntüsünde gösterildiği gibi başka bir pencere açılır. "Kitaplıklar" sekmesi, HBase ve Hadoop JAR dosyalarının projeye eklendiği yerdir:
Bu adımda, ilgili HBase JAR dosyalarını ekliyoruz. Java ekran görüntüsünde gösterildiği gibi proje.
- Eklenmesi gereken önemli JAR dosyaları: hbase-0.94.8.jar ve hadoop-core-1.1.2.jar.
- Kütüphaneler sekmesine gelin.
- "Harici JAR'ları Ekle" seçeneğine basın.
- Gerekli önemli JAR dosyalarını seçin.
- Bu dosyaları “src” dizinine eklemek için Bitir düğmesine basın. Java Kütüphaneler bünyesindeki proje.
JAR dosyaları eklendikten sonra, aşağıdaki gibi projenin "src" konumunda görünürler:
Proje kapsamındaki tüm JAR dosyaları artık Hadoop ekosistemiyle kullanıma hazır.
Adım 3) HBase Bağlantısını Kurun
Bu adımda, HBaseConnection.java kullanılarak HBase bağlantısı kurulur. Java kodlama.
Üzerinde Eclipse üst menüyü çalıştırın Java Aşağıda gösterildiği gibi programı çalıştırın: Çalıştır -> Farklı Çalıştır -> Java Uygulama. Aşağıdaki menüde başlatılan program gösterilmektedir:
- Çalıştır'ı seçin.
- Çalıştır seçeneğini seçin. Java Uygulama.
- Bu kod, HBase ile bağlantı kurar. Java API.
- Bu kod çalıştırıldıktan sonra, HBase'de "guru99" tablosu "education" ve "projects" adında iki sütun ailesiyle oluşturulur. Şu anda HBase'de yalnızca boş şema oluşturulmaktadır.
Aşağıdaki kod parçası HTable'ı vurgulamaktadır.DescriptVeya tablo şemasını oluşturan addFamily çağrıları:
Yukarıdaki ekran görüntüsünden de görülebileceği gibi, aşağıdaki işlevleri gerçekleştiriyoruz:
- HTable'ı kullanmaDescriptYa da HBase'de "guru99" tablosunu oluşturabiliriz.
- `addFamily` yöntemini kullanarak, `guru99` tablosuna `education` ve `projects` sütun ailelerini ekliyoruz.
Aşağıdaki kod, HBase ile bağlantı kuracak ve iki sütun ailesi içeren "guru99" tablosunu oluşturacaktır. Bu kodu HBaseConnection.java dosyasının altına yerleştirin:
// Place this code inside Hbase connection import java.io.IOException; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.HBaseConfiguration; import org.apache.hadoop.hbase.HColumnDescriptor; import org.apache.hadoop.hbase.HTableDescriptor; Import org.apache.hadoop.hbase.client.HBaseAdmin; public class HBaseConnection { public static void main(String[] args) throws IOException { HBaseConfigurationhc = new HBaseConfiguration(new Configuration()); HTableDescriptorht = new HTableDescriptor("guru99"); ht.addFamily( new HColumnDescriptor("education")); ht.addFamily( new HColumnDescriptor("projects")); System.out.println( "connecting" ); HBaseAdminhba = new HBaseAdmin( hc ); System.out.println( "Creating Table" ); hba.createTable( ht ); System.out.println("Done......"); } }
Bu, çalıştırmadan önce HBaseConnection.java dosyasına eklemeniz gereken gerekli koddur. Java programı.
Bu program çalıştırıldıktan sonra, HBase ile bağlantı kurulur ve bunun sonucunda sütun adlarıyla bir tablo oluşturulur.
- Tablonun adı "guru99".
- Sütun aileleri "eğitim" ve "projeler"dir.
Adım 4) HBase'de Oluşturulan Tabloyu Kontrol Edin
HBase kabuk modunu kullanarak "list" komutuyla "guru99" tablosunun HBase'de iki sütun ailesiyle oluşturulup oluşturulmadığını kontrol edebiliriz. "list" komutu, HBase'de oluşturulan tüm tablolar hakkında bilgi verir.
HBase kabuğunda `list` komutunu çalıştırmak, aşağıda gösterildiği gibi yeni tabloyu doğrular:
- Code HBase kabuğunda "list" komutunu çalıştırarak kontrol edin.
- “list” komutunu çalıştırdığımızda, HBase'de oluşturulan tabloyu görüntüler. Bizim örneğimizde, “guru99” tablosunun oluşturulduğunu görebiliriz.
HBase Kabuk ile Tablo Oluştur
Ayrıca Java API aracılığıyla, HBase kabuğundan doğrudan tablo oluşturabilirsiniz; bu, hızlı testler için tablo oluşturmanın en hızlı yoludur. Kabuk kullanarak HBase'de tablo oluşturma sözdizimi şu şekildedir:
Syntax: create <tablename>, <columnfamilyname>
Örnek:-
hbase(main):001:0> create 'education' ,'guru99' 0 rows(s) in 0.312 seconds =>Hbase::Table – education
Yukarıdaki örnek, her sütun ailesi için belirtilen özelliklere göre verilen isimle HBase'de bir tablo oluşturmayı açıklamaktadır. Buna ek olarak, tabloya bazı tablo kapsamlı öznitelikler de aktarabiliriz.
create 'guru99', {NAME=>'Edu', VERSIONS=>213423443}
Burada {NAME=>'Edu', VERSIONS=>…} bloğu, "Edu" adında bir sütun ailesi ve saklayacağı hücre sürümü sayısını belirler. Büyük sayı sadece örnek amaçlıdır; pratikte VERSIONS, 3 veya 5 gibi küçük bir değerdir.
HBase Tablolarını Listeleme, Tanımlama ve Doğrulama
HBase'de tablo oluşturma, tablolarla çalışmanın yalnızca ilk adımıdır. "guru99" tablosu oluşturulduktan sonra, veri okuma, yazma veya değiştirme işlemlerinden önce durumunu incelemenize ve doğrulamanıza olanak tanıyan birkaç genel komut bulunur. Bunların tümünü çalıştırabilirsiniz. HBase kabuğu.
`list` komutu, HBase'deki tüm kullanıcı tablolarını döndürür:
hbase> list
`describe` komutu, bir tablonun yapısını, sütun ailelerini ve etkin olup olmadığını gösterir:
hbase> describe 'guru99'
`exists` komutu bir tablonun var olup olmadığını kontrol ederken, `is_enabled` komutu tablonun yazma işlemlerini kabul edip edemeyeceğini bildirir:
hbase> exists 'guru99' hbase> is_enabled 'guru99'
Bu salt okunur kontroller her zaman güvenle çalıştırılabilir. Bunlar, bir tablonun doğru şekilde oluşturulduğunu doğrulamak ve veri yüklemeden önce sütun ailelerini incelemek için en hızlı yoldur.
HBase Tablosunda Değişiklik Yapma
HBase tablosunun şeması oluşturulduktan sonra sabit kalmaz. `alter` komutu, tabloyu yeniden oluşturmadan sütun ailelerini ve tablo kapsamı özelliklerini değiştirir. HBase sürümünüze bağlı olarak, önce tabloyu devre dışı bırakmanız, ardından `alter` komutunu çalıştırmanız ve tekrar etkinleştirmeniz gerekebilir.
“guru99” tablosuna yeni bir sütun ailesi eklemek için:
hbase> alter 'guru99', {NAME => 'contact'}
Bir sütun ailesinin kaç sürümünü saklayacağını ayarlamak için:
hbase> alter 'guru99', NAME => 'education', VERSIONS => 5
Tablodan bir sütun ailesini silmek için:
hbase> alter 'guru99', {NAME => 'contact', METHOD => 'delete'}
Tablo kapsamı özelliklerini de değiştirebilirsiniz. Örneğin, tabloyu salt okunur olarak işaretleyebilir veya maksimum bölge dosya boyutunu 128 MB olarak ayarlayabilirsiniz:
hbase> alter 'guru99', READONLY hbase> alter 'guru99', MAX_FILESIZE => '134217728'
`alter` komutu şemayı yeniden yazdığı için, değişiklikleri üretim tablosunda dikkatlice planlayın ve sonucu daha sonra `describe` komutuyla doğrulayın.
HBase Tablolarını Devre Dışı Bırakma, Etkinleştirme ve Silme
Bir tabloyu kaldırmak veya belirli değişiklikler uygulamak için HBase, önce tabloyu devre dışı bırakmanızı gerektirir. Devre dışı bırakma işlemi, tabloyu çevrimdışı hale getirir, böylece hiçbir istemci tabloya okuma veya yazma işlemi yapamaz; bu da yapısal değişiklikleri güvenli hale getirir.
Bir tabloyu devre dışı bırakın ve durumunu is_disabled ile kontrol edin:
hbase> disable 'guru99' hbase> is_disabled 'guru99'
Okuma ve yazma işlemlerine devam etmek için tabloyu tekrar etkinleştirin:
hbase> enable 'guru99'
Bir tablo silinmeden önce devre dışı bırakılmalıdır. Silping Bu komut tabloyu ve içindeki tüm verileri kalıcı olarak siler, bu nedenle dikkatli kullanın:
hbase> disable 'guru99' hbase> drop 'guru99'
Birden fazla tabloyu aynı anda silmek için, `drop_all` komutu, adı normal bir ifadeyle eşleşen tüm tabloları siler. `create`, `alter`, `disable`, `enable` ve `drop` komutları birlikte, bir veritabanı sisteminin tüm yaşam döngüsünü kapsar. verileri işleme HBase tablolarında.






