DEV Community

Pascal Helbig
Pascal Helbig

Posted on

4 1

Learning the concepts of HBase

Last week I started working with HBase. As someone who has worked almost exclusively with relational databases so far, it was not easy for me to understand the concepts behind HBase.

There are several tutorials for HBase on the internet, but very few of them helped me to understand it. In this blog post I want to gather the links that have been useful to me:

Post by Jim Wilson

https://dzone.com/articles/understanding-hbase-and-bigtab
This blog post is also linked in the official documentation. Jim explains with JSON how the data is structured in HBase. I found this explanation particularly descriptive.

Article by Amandeep

http://0b4af6cdc2f0c5998459-c0245c5c937c5dedcca3f1764ecc9b2f.r43.cf2.rackcdn.com/9353-login1210_khurana.pdf
At the beginning, Amandeep explains the structure of HBase. In the second part, he then uses an example to show how HBase is applied. He compares different solution approaches and indicates their advantages and disadvantages. Especially the second part helped me to design my own HBase schema.

The official Documentation

https://hbase.apache.org/book.html#datamodel
To be honest, I have not read the complete HBase documentation. It is far too extensive to understand the fundamentals. But the chapter Data Model gives a good impression of how HBase is structured.

Playing with HBase shell

To play around a bit with HBase, I used the following git repository: https://github.com/big-data-europe/docker-hbase/
I should mention that for performance reasons HBase should not be used with Docker in production. To learn HBase, however, Docker is perfectly sufficient.

I used the docker-compose-standalone.yml file. After a docker-compose up, I logged in with docker exec -it hbase bash on the container. With hbase shell on the container, I was connected with a working HBase environment.

I play around with the HBase Shell commands I found here: https://sparkbyexamples.com/hbase/hbase-shell-commands-cheat-sheet

Image of Timescale

Timescale – the developer's data platform for modern apps, built on PostgreSQL

Timescale Cloud is PostgreSQL optimized for speed, scale, and performance. Over 3 million IoT, AI, crypto, and dev tool apps are powered by Timescale. Try it free today! No credit card required.

Try free

Top comments (0)

AWS Security LIVE!

Tune in for AWS Security LIVE!

Join AWS Security LIVE! for expert insights and actionable tips to protect your organization and keep security teams prepared.

Learn More

👋 Kindness is contagious

Explore a sea of insights with this enlightening post, highly esteemed within the nurturing DEV Community. Coders of all stripes are invited to participate and contribute to our shared knowledge.

Expressing gratitude with a simple "thank you" can make a big impact. Leave your thanks in the comments!

On DEV, exchanging ideas smooths our way and strengthens our community bonds. Found this useful? A quick note of thanks to the author can mean a lot.

Okay