• Articles
  • Tutorials
  • Interview Questions

Operations using HBase Shell

Starting with HBase Shell Commands

2.1 HBase shell commands
HBase shell provide the commands which are used to communicate with hbase.

General Commands

  • whoami: It gives the information about the user.
hbase> whoami
  • status: It gives the status of HBase. Its syntax is as follows:
hbase> status
  • table_help: It gives help for table-reference commands. Its syntax is as follows:-
hbase> table_help
  • version: It gives  the version of HBase being used. Its syntax is as follows:
hbase> version

Data Definition Language
These are the commands that operate on the tables in HBase.

  • create– It is used to creates a table.
create ‘<table name>’,’<column family>’
  • disable– It is used to disables a table.
Hbase>disable ‘table name’
  • is_disabled– It verifies that  whether a table is disabled.
hbase> is_disabled 'table name'
  • list– It is used to lists all the table.
hbase> list
  • enable–It is used to enables a table.
hbase>enable ‘table name’
  • is_enabled– It verifies that whether a table is enabled.
hbase> is_enabled 'table name'
  • exit – It is used to exit the shell.
hbase>exit
  • alter– This command is used to alter the table
hbase>alter ‘table name’, 'conditions'
  • exists– It verifies that whether a table exists.
hbase>exists ‘table name’
  • describe– It gives the description of a table.
hbase> describe 'table name'
  • drop– It drops a table from HBase. Drop means complete deletion of table. For this first disable the table then drop it.
hbase> disable ‘table name’
hbase> drop ‘table name’
  • drop_all– It is used to drop the tables matching the ‘regex’ given in the command.
hbase>drop_all regex;

Regex is the term which specify the table name like if you want to delete those table which are start from f then regex will be f.*
Java Admin API– Java gives an Admin API to achieve DDL functionalities through programming. Package apache.hadoop.hbase.client contains two classes, HBaseAdmin and HTableDescriptor that provide DDL functionalities.

Certification in Bigdata Analytics

Data manipulation language

  • put– It is used to put a cell value at a specified column in a specified row in a particular table. Using this command, we can insert rows into a table. Its syntax is as follows:
hbase>put ’<table name>’,’row’,’<columnfamily:columnname>’,’<value>’
  • delete– It is used to delete a cell value in a table.
hbase>delete ‘<table name>’, ‘<row>’, ‘<column name >’, ‘<time_stamp>’
  • deleteall– It deletes all the cells in a given row.
hbase>deleteall ‘<table name>’, ‘<row>’
  • get– It is used to read the contents of row or a cell.
hbase>get ’<table name>’,’row’
  • count– It counts and returns the number of rows in a specified
hbase>count ‘<table name>’
  • scan– It is used to scan and  then return the table data.
hbase>scan ‘<table name>’
  • truncate– It is used to disables, drop, and recreate a specified table.
hbase>truncate 'table name'
  • Java client API-Java provides a client API to obtain DML functionalities. org.apache.hadoop.hbase.client package has HTable Put and Get are the classes which are used to perform CRUD(create, retrieve, update, delete) operation

If you want to know the Scope of Apache Certification, refer to this insightful blog!

2. 2 Commands for Security:-
Following commands are used to provide the security of the database from unauthorized access.

  • grant It is used to give specific rights such write, execute, read and admin on a table to a particular user.
hbase>grant <username> <permissions> [<tablename> [<column _family> [<column; qualifier>]]
  • user_permission It gives the list of all the permissions for a specified table.
hbase>user_permission ‘tablename’
  • revoke It is used to revoke a user’s access rights of a table. Its syntax is as follows:
hbase> revoke <user>

Enroll in HBase Course to become a professional in this field.

Course Schedule

Name Date Details
No Sql Course 23 Nov 2024(Sat-Sun) Weekend Batch View Details
30 Nov 2024(Sat-Sun) Weekend Batch
07 Dec 2024(Sat-Sun) Weekend Batch

About the Author

Data Engineer

As a skilled Data Engineer, Sahil excels in SQL, NoSQL databases, Business Intelligence, and database management. He has contributed immensely to projects at companies like Bajaj and Tata. With a strong expertise in data engineering, he has architected numerous solutions for data pipelines, analytics, and software integration, driving insights and innovation.