HBase - Auflisttabelle



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.

Listing Tabellen verwendung Java-API.

Führen Sie die unten gegebenen Schritte, um die Liste der Tabellen von HBase bekommen mit Hilfe von Java-API.

Schritt 1

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();

Schritt 2

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
Advertisements