List
ist der Befehl, dass ist verwendung zu Liste aller Tabellen in HBase. Da unten ist die Syntax von List Befehls.
hbase(main):001:0 > list
Wenn Sie typ diesen Befehl und hinrichten in HBase Aufforderung,wird es Anzeige die Liste aller Tabellen in HBase,wie unten dargestellt.
hbase(main):001:0> list TABLE emp
Hier Sie kann observieren eine Tabelle mit dem Namen emp.
Führen Sie die unten gegebenen Schritte, um die Liste der Tabellen von HBase bekommen mit Hilfe von Java-API.
Sie haben eine Methode namens listTables() in der Klasse HBaseAdmin zu die Liste aller Tabellen in HBase bekommen. Diese Methode gibt ein Array von HTableDescriptor Objekte.
//creating a configuration object Configuration conf = HBaseConfiguration.create(); //Creating HBaseAdmin object HBaseAdmin admin = new HBaseAdmin(conf); //Getting all the list of tables using HBaseAdmin object HTableDescriptor[] tableDescriptor =admin.listTables();
Sie können bekommen die Länge des HTableDescriptor [] Array mit Hilfe die Länge variabel von der HTableDescriptor Klasse. Holen Sie sich den Namen der Tabellen von diesem Objekt mit Hilfe getNameAsString () Methode. laufen Sie die "für" Schleife mit Hilfe diese und erhalten die Liste der Tabellen in HBase.
Da unten wird das Programm zur Liste alle Tabellen in HBase mit Java-API.
import java.io.IOException; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.HBaseConfiguration; import org.apache.hadoop.hbase.HTableDescriptor; import org.apache.hadoop.hbase.MasterNotRunningException; import org.apache.hadoop.hbase.client.HBaseAdmin; public class ListTables { public static void main(String args[])throws MasterNotRunningException, IOException{ // Instantiating a configuration class Configuration conf = HBaseConfiguration.create(); // Instantiating HBaseAdmin class HBaseAdmin admin = new HBaseAdmin(conf); // Getting all the list of tables using HBaseAdmin object HTableDescriptor[] tableDescriptor =admin.listTables(); // printing all the table names. for (int i=0; i<tableDescriptor.length;i++ ){ System.out.println(tableDescriptor[i].getNameAsString()); } } }
Kompilieren Sie und führen Sie das obige Programm wie unten gezeigt.
$javac ListTables.java $java ListTables
Folgendes sollte der Ausgang sein:
User emp