Sie können eine Tabelle mit Hilfe dem Befehl create, hier Sie müssen spezifizieren den Namen der Tabelle und die Spalte Familiename. Die Syntax,um eine Tabelle in HBase Shell zu erstellen ist unten dargestellt.
create ‘<table name>’,’<column family>’
Da unten ist eine Probe Schema einer Tabelle namens emp. Es verfügt über zwei Spalten Familien: "personenbezogene Daten" und "professionelle Daten".
Zeilenschlüssel | personenbezogene Daten | professionelle Daten |
---|---|---|
Sie können erstellen diese Tabelle in HBase Shell wie unten gezeigt.
hbase(main):002:0> create 'emp', 'personal data', ’professional data’
Und es wird Ihnen die folgende Ausgabe.
0 row(s) in 1.1300 seconds => Hbase::Table - emp
Sie können verifizieren ob die Tabelle ist erstellte mitHilfe dem Liste Befehl wie unten dargestellt. Hier können Sie observieren die erstellte emp Tabelle.
hbase(main):002:0> list TABLE emp 2 row(s) in 0.0340 seconds
Sie können erstelle eine Tabelle in HBase mitHilfe dem createTable () Methode der HBaseAdmin Klasse. Diese Klasse gehört zu den org.apache.hadoop.hbase.client Paket. Da unten sind die Schritte, um eine Tabelle in HBase mit Java-API erstellen.
Diese Klasse erfordert die Configuration-Objekt als Parameter, daher zunächst instanziiert das Configuration-Klasse und übergeben Sie diese Instanz an HBaseAdmin.
Configuration conf = HBaseConfiguration.create(); HBaseAdmin admin = new HBaseAdmin(conf);
HTableDescriptor ist eine Klasse, mit dem org.apache.hadoop.hbase Klasse gehört. Diese Klasse ist wie ein Container der Tabellennamen und Spalten Familien.
//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);
MitHilfe der createTable () Methode der HBaseAdmin Klasse ,können Sie hinrichten die erstellte Tabelle in Admin-Modus.
admin.createTable(table);
Da unten ist das vollständige Programm, um eine Tabelle via Admin erstellen.
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 TableDescriptor(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 und führen Sie das obige Programm wie unten gezeigt.
$javac CreateTable.java $java CreateTable
Folgendes sollte werden die Ausgangs:
Table created