Video: Database Clustering Tutorial 1 - Intro to Database Clustering 2024
NoSQL-databases zijn zeer geschikt voor zeer grote datasets. Bigtable klonen zoals HBase zijn geen uitzondering. U zult waarschijnlijk meerdere goedkope commodity-servers in één cluster willen gebruiken in plaats van één zeer krachtige machine. Dit is omdat u over het algemeen betere prestaties per dollar kunt krijgen door veel commodity-servers te gebruiken, in plaats van een enorm duurdere enkele, krachtige server.
Naast het snel opschalen, kunnen goedkope basisservers uw databaseservice ook weerbaarder maken en zo hardwarefouten voorkomen. Dit komt omdat u andere servers hebt om de service over te nemen als het moederbord van een enkele server faalt. Dit is niet het geval met een enkele grote server.
De afbeelding toont een zeer beschikbare HBase-configuratie met een voorbeeld van gegevensverdeling tussen servers.
Het diagram toont twee knooppunten (HRegionServers) in een zeer beschikbare opstelling, die elk als back-up fungeren voor de ander.
In veel productie-opstellingen wilt u misschien ten minste drie knooppunten voor hoge beschikbaarheid om ervoor te zorgen dat twee serverstoringen die zich in de nabije toekomst bij elkaar bevinden, kunnen worden afgehandeld. Dit is niet zo zeldzaam als je zou denken! Advies varieert per Bigtable; HBase beveelt bijvoorbeeld minimaal vijf knooppunten aan voor een cluster:
-
Elke regioserver beheert zijn eigen set sleutels.
Het ontwerpen van een strategie voor rijtoewijzing is belangrijk omdat deze bepaalt hoe de belasting over het cluster wordt verdeeld.
-
| Elke regio behoudt zijn eigen schrijflogboek en geheugen in het geheugen.
In HBase worden alle gegevens weggeschreven naar een geheugen in het geheugen en later wordt deze winkel naar een schijf leeggemaakt. Op de harde schijf worden deze winkels opslagbestanden genoemd.
HBase interpreteert winkelbestanden als afzonderlijke bestanden, maar in werkelijkheid worden ze gedistribueerd in chunks via een gehydged Hadsel Distributed File System (HDFS). Dit zorgt voor een hoge opname- en ophaalsnelheid omdat alle grote I / O-bewerkingen over veel machines zijn verspreid.
Om de beschikbaarheid van gegevens te maximaliseren, onderhoudt Hadoop standaard drie exemplaren van elk gegevensbestand. Grote installaties hebben
-
Een primaire kopie
-
Een replica in hetzelfde rek
-
Een andere replica in een ander rek
Vóór Hadoop 2. 0 kon Namenodes niet hoog beschikbaar worden gemaakt. Deze onderhouden een lijst met alle actieve servers in het cluster. Ze waren daarom een enkel punt van mislukking. Sinds Hadoop 2. 0 bestaat deze limiet niet meer.