list — это команда, которая используется для вывода списка всех таблиц в HBase. Ниже приведен синтаксис команды list.
hbase(main):001:0 > list
Когда вы набираете эту команду и выполняете ее в приглашении HBase, она отобразит список всех таблиц в HBase, как показано ниже.
hbase(main):001:0> list TABLE emp
Здесь вы можете увидеть таблицу с именем emp.
Список таблиц с использованием Java API
Следуйте приведенным ниже инструкциям, чтобы получить список таблиц из HBase с использованием Java-API.
Шаг 1
У вас есть метод listTables () в классе HBaseAdmin, чтобы получить список всех таблиц в HBase. Этот метод возвращает массив объектов HTableDescriptor .
//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();
Шаг 2
Вы можете получить длину массива HTableDescriptor [], используя переменную длины класса HTableDescriptor . Получить имя таблицы из этого объекта, используя метод getNameAsString () . Запустите цикл ‘for’, используя их, и получите список таблиц в HBase.
Ниже приведена программа для вывода списка всех таблиц в HBase с использованием 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()); } } }
Скомпилируйте и выполните вышеуказанную программу, как показано ниже.
$javac ListTables.java $java ListTables
Следующее должно быть выводом: