Video: Fjärde statsmakten nr 18 med Lars Bern om SVT Agenda Fake News. 2024
HBase är en distribuerad, icke-relativ (kolumnär) databas som använder HDFS som sin persistensbutik för stora dataprojekt. Den modelleras efter Google BigTable och kan ta emot mycket stora tabeller (miljarder kolumner / rader) eftersom den är lagrad på Hadoop-kluster av råvara.
HBase tillhandahåller slumpmässig, realtid läs / skrivåtkomst till stora data. HBase är mycket konfigurerbar, vilket ger stor flexibilitet för att hantera enorma mängder data effektivt. Ta en titt på hur HBase kan hjälpa till att hantera dina stora datautmaningar.
HBase är en kolumnar databas, så all data lagras i tabeller med rader och kolumner som liknar relationsdatabashanteringssystem (RDBMSs). Korsningen av en rad och en kolumn kallas en cell. En viktig skillnad mellan HBase-tabeller och RDBMS-tabeller är versionering.
Varje cellvärde innehåller ett "version" -attribut, vilket är inget annat än en tidsstämpel som unikt identifierar cellen. Versioning spår ändras i cellen och gör det möjligt att hämta någon version av innehållet om det blir nödvändigt. HBase lagrar data i celler i minskande ordning (med tidsstämpel), så en läsning kommer alltid att hitta de senaste värdena först.
Kolonner i HBase tillhör en kolonnfamilj. Kolonnens efternamn används som ett prefix för att identifiera medlemmar i sin familj. Till exempel, frukter: äpple och frukter: banan är medlemmar av frukter kolumn familjen. HBase-implementeringar är inställda på kolumnfamiljenivå, så det är viktigt att vara uppmärksam på hur du ska komma åt data och hur stor du förväntar dig att kolumnerna ska vara.
Raderna i HBas-tabeller har också en nyckel som är associerad med dem. Nyckelens struktur är mycket flexibel. Det kan vara ett beräknat värde, en sträng eller till och med en annan datastruktur. Nyckeln används för att kontrollera åtkomst till cellerna i raden, och de lagras i ordning från lågt värde till högt värde.
Alla dessa funktioner utgör tillsammans schemat. Schemat definieras och skapas innan någon data kan lagras. Ändå kan tabeller ändras och nya kolumnfamiljer kan läggas till efter att databasen är igång. Denna sträckbarhet är extremt användbar när du hanterar stora data eftersom du inte alltid vet om olika dataströmmar.