HBase - Tabelle erstellen
Erstellen einer Tabelle mit HBase Shell
Sie können eine Tabelle mit dem erstellen createBefehl, hier müssen Sie den Tabellennamen und den Namen der Spaltenfamilie angeben. Dassyntax Das Erstellen einer Tabelle in der HBase-Shell wird unten gezeigt.
create ‘<table name>’,’<column family>’
Beispiel
Im Folgenden finden Sie ein Beispielschema einer Tabelle mit dem Namen emp. Es gibt zwei Spaltenfamilien: "personenbezogene Daten" und "berufliche Daten".
Zeilenschlüssel | persönliche Daten | professionelle Daten |
---|---|---|
Sie können diese Tabelle in der HBase-Shell wie unten gezeigt erstellen.
hbase(main):002:0> create 'emp', 'personal data', 'professional data'
Und es gibt Ihnen die folgende Ausgabe.
0 row(s) in 1.1300 seconds
=> Hbase::Table - emp
Überprüfung
Sie können überprüfen, ob die Tabelle mit dem erstellt wurde listBefehl wie unten gezeigt. Hier können Sie die erstellte emp-Tabelle beobachten.
hbase(main):002:0> list
TABLE
emp
2 row(s) in 0.0340 seconds
Erstellen einer Tabelle mit der Java-API
Sie können eine Tabelle in HBase mit dem erstellen createTable() Methode von HBaseAdminKlasse. Diese Klasse gehört zurorg.apache.hadoop.hbase.clientPaket. Im Folgenden werden die Schritte zum Erstellen einer Tabelle in HBase mithilfe der Java-API aufgeführt.
Schritt 1: Instanziieren Sie HBaseAdmin
Diese Klasse benötigt das Konfigurationsobjekt als Parameter. Instanziieren Sie daher zunächst die Konfigurationsklasse und übergeben Sie diese Instanz an HBaseAdmin.
Configuration conf = HBaseConfiguration.create();
HBaseAdmin admin = new HBaseAdmin(conf);
Schritt 2: Erstellen Sie TableDescriptor
HTableDescriptor ist eine Klasse, die zur gehört org.apache.hadoop.hbaseKlasse. Diese Klasse ist wie ein Container mit Tabellennamen und Spaltenfamilien.
//creating table descriptor
HTableDescriptor table = new HTableDescriptor(toBytes("Table name"));
//creating column family descriptor
HColumnDescriptor family = new HColumnDescriptor(toBytes("column family"));
//adding coloumn family to HTable
table.addFamily(family);
Schritt 3: Durch Admin ausführen
Verwendung der createTable() Methode von HBaseAdmin Klasse können Sie die erstellte Tabelle im Admin-Modus ausführen.
admin.createTable(table);
Im Folgenden finden Sie das vollständige Programm zum Erstellen einer Tabelle über den Administrator.
import java.io.IOException;
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;
import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.conf.Configuration;
public class CreateTable {
public static void main(String[] args) throws IOException {
// Instantiating configuration class
Configuration con = HBaseConfiguration.create();
// Instantiating HbaseAdmin class
HBaseAdmin admin = new HBaseAdmin(con);
// Instantiating table descriptor class
HTableDescriptor tableDescriptor = new
HTableDescriptor(TableName.valueOf("emp"));
// Adding column families to table descriptor
tableDescriptor.addFamily(new HColumnDescriptor("personal"));
tableDescriptor.addFamily(new HColumnDescriptor("professional"));
// Execute the table through admin
admin.createTable(tableDescriptor);
System.out.println(" Table created ");
}
}
Kompilieren Sie das obige Programm und führen Sie es wie unten gezeigt aus.
$javac CreateTable.java
$java CreateTable
Folgendes sollte die Ausgabe sein:
Table created