Video: 3 Ways Pi Can Explain Practically Everything 2025
Så hvornår skal du overveje at bruge HBase? Selvom svaret på dette spørgsmål ikke nødvendigvis er ligetil for alle, skal du for det første klart have et stort datakrav og tilstrækkelige hardwareressourcer.
-
Et stort datakrav: Terabytes til petabytes - ellers har du mange ledige servere i dine racks.
-
Tilstrækkelige hardware ressourcer: Fem servere er et godt udgangspunkt.
Overvejer andre ruter, der skal tages - HBase versus RDBMS - andre krav som transaktionssupport, rige datatyper, indekser og spørgesprogstøtte - selv om disse faktorer ikke er så sort og hvide som de foregående to kugler. Rige datatyper, indekser og spørgesprogssupport kan tilføjes via andre teknologier, såsom Hive eller kommercielle produkter.
"Hvad med transaktioner? " du spørger.
Visse anvendelsessager til RDBMS'er, som online transaktionsbehandling, afhænger af ACID-kompatible transaktioner mellem klienten og RDBMS for at systemet kan fungere korrekt. (ACID - A tomicitet, C uafhængighed, I solering og D brugervenlighed)
I sammenligning med en RDBMS, HBase betragtes ikke som en ACID-kompatibel database som af denne skrivning. HBase understøtter ikke ACID-kompatible transaktioner over flere rækker eller på tværs af tabeller. Men HBase garanterer følgende aspekter:
-
Atomisk: Alle rækkeniveauoperationer inden for en tabel er atomiske. Denne garanti opretholdes, selvom der er mere end en kolonnefamilie i en række.
-
Konsistens: Scan-operationer giver en ensartet visning af dataene, der er lagret i HBase, på et tidspunkt tidligere. Samtidig klientinteraktion kan opdatere en række under en multi-rad-scanning, men alle rækker, der returneres af en scanningsoperation, indeholder altid gyldige data fra et tidspunkt tidligere.
-
Holdbarhed: Eventuelle data, der kan hentes fra HBase, er også lavet holdbar til disk (vedvarende til HDFS, med andre ord).
En af de spændende aspekter ved HBase og andre open source Apache-projekter er, at nogen i samfundet altid er innovative og forsøger at forbedre teknologien. HBase understøtter multi-row-transaktioner, hvis rækkerne er på samme RegionServer. Denne funktion, som kræver yderligere kodning, blev introduceret i HBase version 0. 94. 0. (Hvis du er nysgerrig, fokuserer den ekstra kodning på HBase's split-politik.)
Når ACID-egenskaber kræves af HBase-klienter, skal du designe HBase-skema, således at der ikke kræves tværgående eller tværbordsdataoperationer.At holde data i træk giver atomicitet.