What is Apache HBase and when should you use it?

Преглед: Apache HBase can be defined as the Hadoop database. It is a distributed, non-relational and open source database written in Java. It is developed based on the Google BigTable framework and runs on HDFS (Hadoop distributed file system). Apache HBase се користи кога имате потреба од случајни,,en,реално време пристап до вашиот голем обем на податоци,,en,HBase е соодветен кандидат кога ќе имаат стотици милиони или милијарди редови и доволно хардвер за да го поддржат,,en,Како HBase е врз основа на HDFS и HDFS врши добро кога има минимум,,en,јазли на податоци,,en,Значи во кратки,,en,HBase е "складиште на податоци,,en,рамка тип кој се дистрибуира и погоден за обработка на голем обем на податоци,,en,Во оваа статија јас ќе се објасни деталите со архитектонски концепти,,en,Apache HBase е колона ориентиран систем за управување со база на податоци NoSQL која работи на врвот на HDFS,,en,HBase не поддржува структурирани јазик за пребарување како SQL,,en,HBase апликации се сите MapReduce задачи и напишани во Јава,,en,HBase поддржува апликации напишани во ОДМОР,,en,Штедливост и Avro,,en, real time access to your large volume of data. HBase is a suitable candidate when you have hundreds of millions or billions of rows and enough hardware to support it. As HBase is based on HDFS and HDFS performs well when there is minimum 5 data nodes. So in short, HBase is a ‘data warehouse’ type framework which is distributed and suitable for processing large volume of data.

In this article I will explain the details with architectural concepts.

Вовед: Apache HBase is a NoSQL column oriented database management system which runs on top of HDFS. HBase does not support structured query language like SQL. HBase applications are all MapReduce tasks and written in Java. HBase supports applications written in REST, Thrift and Avro. Некои од поважните карактеристики во HBase се наведени подолу,,en,• HBase поддржува автоматско sharding,,en,• HBase поддржува HDFS како свој дистрибуирани складирање,,en,• HBase поддржува MapReduce за паралелно процесирање на огромниот обем на податоци,,en,• HBase има поддршка за Java клиентот API-јата,,en,• HBase поддржува силно согласност читаат и пишуваат операции,,en,Таа е погодна за брз контра агрегација,,en,Разликата меѓу HBase и HDFS,,en,Што ги опишавме дека HBase се базира на врвот на HDFS,,en,Па можеби ќе треба забуна дека HDFS и HBase слични,,en,Но, вие треба да се запамети дека HDFS не е едноставна датотечниот систем,,en,а тоа е дистрибуирани складирање погоден за чување на голем обем на податоци,,en,HDFS не поддржува брзо рекорд гледам нагоре за голем обем на податоци,,en.

• HBase supports automatic sharding.
• HBase supports HDFS as its distributed storage.
• HBase supports MapReduce for parallel processing of huge volume of data.
• HBase has support for Java client APIs.
• HBase supports strongly consistent read and write operations. It is suitable for high speed counter aggregation.

Difference between HBase and HDFS: We have described that HBase is based on top of HDFS. So you might have confusion that HDFS and HBase similar. But you need to remember that HDFS is not a simple file system, rather it is a distributed storage suitable for storing large volume of data. HDFS does not support fast record look up for large volume of data. Но HBase работи на врвот на HDFS и обезбедува брзо се погледне нагоре и ажурирање,,en,Кога треба да се користи HBase,,en,HBase е типичен NoSQL и колонообразен чување на податоци,,en,Избор на база на податоци NoSQL и Базе зависи од барањето на апликацијата,,en,Значи прво,,en,ние треба да се разбере на барањата јасно, а потоа изберете база на податоци,,en,Ако само изберете NoSQL ДБ без соодветна анализа, тогаш тоа може да предизвика проблеми за вас,,en,И тоа, исто така, ќе бидат злоупотреба на технологија и ресурси,,en,Следниве се некои точки кои треба да се смета за избор на NoSQL ДБ како HBase,,en,Волумен,,en,Обемот на податоци е првиот критериум за избор на NoSQL ДБ,,en,Вие треба да имаат бескрајна податоци,,en,милиони или милијарди редови,,en,процес и чување,,en.

When should you use HBase?
HBase is a typical NoSQL and columnar data store. Selection of a NoSQL database and RDBMS depends upon the requirement of the application. So first, we should understand the requirement clearly and then select the database. If you just select a NoSQL DB without proper analysis then it might cause trouble for you. And it will also be a misuse of technology and resources. Following are some points which should be considered for selecting a NoSQL DB like HBase.

Volume: The volume of data is the first criteria for selecting a NoSQL DB. You should have endless data (millions or billions of rows) to process and store. Ако имате само неколку илјади или милиони на редови тогаш традиционалниот Базе е најдобро одговара,,en,Но, ако го изберете HBase за мала количина на податоци, тогаш на податоци ќе се акумулира во еден јазол и други јазли во кластерот ќе седат без работа,,en,хардвер поддршка,,en,HDFS врши ефикасно кога ќе се појават најмалку,,en,Како знаеме дека HBase е врз основа на HDFS,,en,па затоа треба да имаат доволно хардверска поддршка за спроведување на HBase ДБ,,en,Нема потреба за Базе карактеристики,,en,Бидете сигурни дека вашата апликација не бара дополнителни функции предвидени со типичен Базе,,en,На напредни функции како трансакција,,en,комплекс пребарување,,en,предизвикувачи не се поддржани од страна на HBase,,en,Значи ова е уште еден важен критериум за избор,,en,HBase Дизајн Концепти,,en,дизајн концепти зад HBase се слични на HDFS и MapReduce рамка,,en. But if you select HBase for a small amount of data then the data will accumulate in a single node and the other nodes in the cluster will sit idle.

Hardware support: HDFS performs efficiently when there are at least 5 data nodes. As we know that HBase is based on HDFS, so you should have sufficient hardware support for implementing HBase DB.

No need for RDBMS features: Make sure that your application does not require extra features provided by typical RDBMS. The advanced features like transaction, complex query, triggers are not supported by HBase. So this is another important criterion for selection.

HBase Design Concepts:
The design concepts behind HBase are similar to HDFS and MapReduce framework. Како што сите работи во дистрибуирана околина,,en,општата дизајн се базира на ремек-роб архитектура,,en,HDFS работи на NameNode и роб јазли,,en,MapReduce работи на JobTracker и TaskTracker робови,,en,Слично на HBase има следниве господар роб архитектура,,en,Господар јазол успева кластерот,,en,продавници податоци маса и да работат регионот серверите на податоците,,en,Како господар јазол е главниот контролор,,en,HBase е многу чувствителна на загубата на својот господар јазол,,en,HBase Видено,,en,HBase е да се има табеларен преглед за чување на податоци,,en,Главниот концепт се базира на колона семејство,,en,Табелата HBase е направен на редови,,en,столбови и секоја колона припаѓа на семејството колона,,en,Копчето табелата е примарен клуч за пристап маса,,en,копчето за спорот може да биде ништо и редови се подредени по клучните ред,,en, the general design is based on master-slave architecture. HDFS works on NameNode and slave nodes, MapReduce works on JobTracker and TaskTracker slaves. Similarly HBase has the following master slave architecture.

  • Master node manages the cluster.
  • Region servers’ stores table data and work on the data.

As the master node is the main controller, HBase is very sensitive to the loss of its master node.

HBase Views: HBase is having a tabular view for storing data. The main concept is based on column family. The HBase table is made of rows, columns and each column belongs to a column family. The table row key is the primary key for table access. The row key can be anything and the rows are sorted by row key. Ова се две гледишта кои го опишуваат концептите,,en,концептуална Види,,en,Во овој дел ќе ви ги објасни концептуални преглед со преземање на пример,,en,Tабелата содржи колона семејства и семејства колона содржи колони,,en,Конвенцијата е дека колона е направен од три дела,,en,презиме колона,,en,префикс и колона име,,en,карактер на дебелото црево,,en,delimits семејството на колоната и колона,,en,Дозволете ми да се земе еден пример,,en,името на маса е "hbasetable,,en,има colfamily1 две колона семејства,,en,и 'colfamily2',,en,На "colfamily1,,en,има име на две колони ",,en,и 'адреса',,en,На "colfamily2,,en,има една колона 'telno',,en,Значи структура ќе биде како што е прикажано подолу,,en,Табела,,en,"hbasetable,,st,colfamily1,,ht,Рикардо,,en,адреса =,,en,colfamily2,,ht,telno =,,ru,Табеларниот преглед ќе изгледа како подолу,,en,Клучни ред,,en,време на поштански марки,,en,ColumnFamily,,en.

Conceptual View: In this section I will explain the conceptual view by taking an example. The table contains column families and column families contain columns. The convention is that a column is made of three parts – column family name, prefix and column name. The colon character (:) delimits the column family and column. Let me take one example, the table name is ‘hbasetable’ having two column families ‘colfamily1’ and ‘colfamily2’. The ‘colfamily1’ has two columns ‘name’ and ‘address’. The ‘colfamily2’ has one column ‘telno’. So the structure would be as shown below.

Table ‘hbasetable’

colfamily1: name = “Ricardo”

colfamily1: address = “MA, САД”

colfamily2: telno = “2235678”

The tabular view will look like below.

Row Key Time Stamp ColumnFamily colfamily1 ColumnFamily colfamily2
"Rowkey1",,so,T1,,en,"Rowkey2",,so,T2,,mi,"Rowkey3",,ar,Т3,,ru,"Rowkey4",,so,T4,,ru,"Rowkey5",,so,T5,,ar,Табеларен преглед на 'hbasetable ",,en,физички изглед,,en,Ние веќе разговаравме за концептуални поглед на HBase маса и неговата содржина,,en,Но, физички изглед е малку поинаква,,en,физички,,en,табелите HBase се чуваат на база на семејството колона,,en,Значи новиот колони може да се додаде лесно без какви било претходно известување,,en,Оваа функција додава флексибилност на линеарна приспособливост кои имаме дискутирано и порано,,en,По се Табеларен преглед на две колона семејства,,en,table2,,st,Прикажани colfamily1,,en,Table3,,st,Прикажани colfamily2,,en,Ве молиме имајте во предвид дека на празни ќелии прикажани во концептуална поглед не се чуваат,,en,Чување е дозволено само за колона ориентирана структура за складирање,,en T1 colfamily2: telno = “2235678”
“Rowkey2” T2 colfamily2: telno = “9995678”
“Rowkey3” T3 colfamily2: telno = “8896578”
“Rowkey4” T4 colfamily1: name = “Ricardo”
“Rowkey5” T5 colfamily1: address = “MA, САД”

Table 1: Tabular view of ‘hbasetable’

Physical View: We have already discussed the conceptual view of HBase table and its contents. But the physical view is a bit different. Physically, the HBase tables are stored on a column family basis. So the new columns can be added easily without any prior notification. This feature adds the flexibility of linear scalability which we have discussed earlier.

Following are tabular view of two column families.

Row Key Time Stamp ColumnFamily colfamily1
“Rowkey4” T4 colfamily1: name = “Ricardo”
“Rowkey5” T5 colfamily1: address = “MA, САД”

Table2: Showing colfamily1

 

Row Key Time Stamp ColumnFamily colfamily2
"Rowkey1",,so,T1,,en,"Rowkey2",,so,T2,,mi,"Rowkey3",,ar,Т3,,ru,"Rowkey4",,so,T4,,ru,"Rowkey5",,so,T5,,ar,Табеларен преглед на 'hbasetable ",,en,физички изглед,,en,Ние веќе разговаравме за концептуални поглед на HBase маса и неговата содржина,,en,Но, физички изглед е малку поинаква,,en,физички,,en,табелите HBase се чуваат на база на семејството колона,,en,Значи новиот колони може да се додаде лесно без какви било претходно известување,,en,Оваа функција додава флексибилност на линеарна приспособливост кои имаме дискутирано и порано,,en,По се Табеларен преглед на две колона семејства,,en,table2,,st,Прикажани colfamily1,,en,Table3,,st,Прикажани colfamily2,,en,Ве молиме имајте во предвид дека на празни ќелии прикажани во концептуална поглед не се чуваат,,en,Чување е дозволено само за колона ориентирана структура за складирање,,en T1 colfamily2: telno = “2235678”
“Rowkey2” T2 colfamily2: telno = “9995678”
“Rowkey3” T3 colfamily2: telno = “8896578”

Table3: Showing colfamily2

Please note that the empty cells displayed in the conceptual view are not actually stored. The storing is only allowed for a column oriented storage structure. Значи, ако ние се пребарува некои податоци во одредени временски печат "T1,,en,од "colfamily1 ',,en,тогаш тоа ќе се врати ништо,,en,Истото тоа важи и за "colfamily2,,en,исто така,,,en,сите времето марки се чуваат во опаѓачки редослед,,en,Значи најновите вредност од одредена колона ќе бидат вратени ако нема време за печат се споменува во барањето,,en,Пред склучувањето на дискусија,,en,ние треба да имајте на ум дека HBase е со отворен код,,en,NoSQL дистрибуирани бази на податоци се погодни за чување и обработка на бескрајна количина на податоци,,en,Таа е развиена во рамките на проектот Apache Hadoop HDFS и врз основа на рамка,,en,HBase операции се MapReduce сите задачи кои ќе се одржуваат во паралелен начин,,en,Основниот концепт е иста како Bigtable на Google,,en,Изборот на база на податоци NoSQL треба да се направи внимателно,,en’ from ‘colfamily1’, then it would return nothing. The same it true for ‘colfamily2’ also, all time stamps are stored in a descending order. So most recent value from a particular column would be returned if no time stamp is mentioned in a query.

Заклучок: Before concluding the discussion, we should keep in mind that HBase is an open source, NoSQL distributed database suitable for storing and processing endless amount of data. It is developed under Apache Hadoop project and based on HDFS framework. HBase operations are all MapReduce tasks which run in a parallel way. The basic concept is same as Google’s BigTable. The selection of NoSQL database should be done carefully. Базе дизајн и NoSQL дизајн е сосема поинаква, па пренесување на податоци од Базе да HBase не е можно,,en,Целиот дизајн мора да се промени да се префрлат од Базе да NoSQL HBase,,en. The entire design has to be changed to shift from RDBMS to NoSQL HBase.

Tagged on:
============================================= ============================================== Buy best TechAlpine Books on Amazon
============================================== ---------------------------------------------------------------- electrician ct chestnutelectric
error

Enjoy this blog? Please spread the word :)

Follow by Email
LinkedIn
LinkedIn
Share