HBase is a database system that is built on top of HDFS. However the term ‘database’ might be a bit misleading. It is not a traditional SQL database that can be accessed by a traditional SQL type client, such as SQL developer.
HBase is a technique that falls in the area of no SQL, – Not Only SQL. This implies that other techniques must be used as we know from SQL type database.
One possible way to access this environment is via a shell. This shell can be invoked via “hbase shell”. If everything is set up correctly, one sees something like:
A command to see which tables are available is given via “list”:
hbase(main):004:0> list TABLE emp 1 row(s) in 0.1520 seconds => ["emp"]
Here, we see that a table “emp” exists. On may investigate the content via “scan ‘emp'”:
hbase(main):005:0> scan "emp" ROW COLUMN+CELL 1 column=naam:, timestamp=1528294868410, value=tom 1 column=naam:voornaam, timestamp=1528294898266, value=jan 1 column=nummer:, timestamp=1528294834043, value=1 2 column=naam:voornaam, timestamp=1528296099663, value=flip 2 row(s) in 0.0320 seconds hbase(main):006:0>
One may subsequently insert new data via a put command. In this command, we must mention the table (here emp), the row (here 2), the field (here naam:voornaam) and the actual value.
hbase(main):002:0> put 'emp',2,'naam:voornaam','flip' 0 row(s) in 0.0840 seconds