Hjem Personlig finansiering Overførsel fra en RDBMS-model til HBase-dummies

Overførsel fra en RDBMS-model til HBase-dummies

Video: Overførsel af filer fra iPhone til computer (Windows) 2024

Video: Overførsel af filer fra iPhone til computer (Windows) 2024
Anonim

Hvis du står over for designfasen til din ansøgning, og du mener, at HBase ville være en god form, så udformes din rækkenøgler og skema til at passe til HBase-datamodellen og arkitekturen. ret tilgang. Men nogle gange giver det mening at flytte en database oprindeligt designet til en RDBMS til HBase.

Et fælles scenario, hvor denne tilgang giver mening er en MySQL database instans, der har nået sine grænser for skalerbarhed. Der findes teknikker til horisontal skalering af en MySQL-instans ( sharding, med andre ord), men denne proces er normalt besværlig og problematisk, fordi MySQL simpelthen ikke oprindeligt var designet til sharding.

Overgang fra relationsmodellen til HBase-modellen er en forholdsvis ny disciplin. Imidlertid er der opstået visse etablerede tankegange, der er sammenfaldende med tre centrale principper, der skal følges, når man nærmer sig en overgang. Disse principper er denormalisering, dobbeltarbejde, og intelligente nøgler (DDI) .

  • Denormalisering: Relationsdatabasemodellen afhænger af a) et normaliseret databaseskema og b) forbinder mellem tabeller for at reagere på SQL-operationer. Database normalisering er en teknik, der beskytter mod tab af data, redundans og andre uregelmæssigheder, da data opdateres og hentes.

    Der er en række regler, som eksperterne følger for at nå frem til et normaliseret databaseskema (og database normalisering er en hel undersøgelse selv), men processen indebærer normalt at dele større tabeller i mindre tabeller og definere relationer mellem dem. Database denormalisering er modsat af normalisering, hvor mindre, mere specifikke tabeller er sammenføjet i større, mere generelle tabeller.

    Dette er et almindeligt mønster, når du overfører til HBase, fordi tilslutninger ikke findes på tværs af tabeller, og sammenføjninger kan være langsomme, da de involverer dyre diskoperationer. Overvågning af opdateringen og hentning af anomalier er nu jobbet i din HBase-klientprogram, da de beskyttelser, der ydes ved normalisering, er ugyldige.

  • Duplikering: Når du deformaliserer dit databaseskema, vil du sandsynligvis ende med at duplikere dataene, fordi det kan hjælpe dig med at undgå dyre læseoperationer på tværs af flere tabeller. Vær ikke bekymret for den ekstra opbevaring (inden for grund selvfølgelig); du kan bruge den automatiske skalerbarhed af HBase til din fordel.

    Vær opmærksom på, at dit klientprogram vil kræve ekstra arbejde for at duplikere dataene og huske, at HBase kun leverer rodeniveau atomoperationer ikke tværgående rækker (med undtagelse beskrevet i HBASE-5229 JIRA) eller kryds bord.

  • Intelligente nøgler: Da de data, der er lagret i HBase, er ordnet med radnøgle, og radnøglen er det eneste native indeks, der leveres af systemet, kan en omhyggelig intelligent konstruktion af radnøglen gøre en enorm forskel. For eksempel kan din radnøgle være en kombination af et servicekontonummer og kundens id-nummer, der placerede serviceordren.

    Dette række nøgle design giver dig mulighed for at slå op data relateret til serviceordren eller slå op data relateret til kunden ved hjælp af samme rad nøgle i samme tabel. Denne teknik vil være hurtigere for nogle forespørgsler og undgå dyre bordtilslutninger.

For at afklare disse særlige tankemønstre skal du tage en tabel med kundekontaktoplysninger og placere den inden for rammerne af en typisk serviceordningsdatabase. Figuren viser dig, hvad en normaliseret serviceordningsdatabaseskema kan se ud.

I overensstemmelse med reglerne for RDBMS-normalisering skal du oprette stikprøven Kontaktoplysninger for kunden, så den er adskilt fra serviceordetabellen for at undgå at miste kundedata, når serviceordrer lukkes og eventuelt slettes. Tag den samme fremgangsmåde for produkttabellen, hvilket betyder, at nye produkter kan tilføjes til den fiktive virksomhedsdatabase uafhængigt af serviceordrer.

Ved at stole på RDBMS-tilslutningsoperationer understøtter dette skema forespørgsler, der viser antallet af serviceordrer, der åbnes mod et bestemt produkt sammen med kundens sted, hvor produktet er i brug.

Det er alt fint og dandy, men det er et skema, du vil bruge med RDBM. Hvordan overfører du dette skema til et HBase-skema? Den næste figur illustrerer en mulig HBase-ordning - en der følger DDI-mønsteret.

Kundekontaktinformationstabellen er blevet denormaliseret ved at inkludere kundens navn og kontaktoplysninger i stedet for de fremmede nøgler, der tidligere blev anvendt. Dataene duplikeres også ved at holde tabellen Customer Contact Information som det er. Nu tilslutter sig Service Order-tabellen, og der er ikke behov for kundekontaktoplysninger.

Derudover er der anvendt et intelligent række nøgle design, der kombinerer produktnummeret med kundenummeret for at danne serviceordrenummeret (f.eks. A100 | 00001). Ved hjælp af denne intelligente nøgle kan serviceordetabellen give vigtige rapporter om produktmangler og kunder, der i øjeblikket oplever produktproblemer.

Alle disse forespørgsler kan alle understøttes af HBase i en række atomatom for ansøgningen. Fordi du ved, at HBase ordrer række nøgler og sorterer dem på en leksikografisk måde, kan din ansøgning gøre visse uddannede gæt om datalokalitet, når du udsteder scanninger til rapportering. (Alle A * -serienummer bliver gemt sammen, for eksempel.)

Den serviceordningsdatabase, der repræsenteres af HBase-skemaet, er et relativt simpelt eksempel, men det illustrerer, hvordan HBase i visse tilfælde kan krydse med RDBMS-verdenen og give en betydelig værdi. Hvis den fiktive virksomhed har terabytes eller endda petabytes af serviceopkaldsdata, der skal gemmes, ville HBase gøre en enorm forskel hvad angår omkostninger, pålidelighed, ydeevne og målestok.

Du kan selvfølgelig designe din serviceordre HBase-skema på flere forskellige måder. Helt sikkert afhænger designet af de spørgsmål, der skal understøttes, men du har evnen til at overføre nogle relationelle databaser til meget kraftfulde HBase-applikationer til produktion, så længe du arbejder med en solid forståelse af HBase-arkitekturen og DDI-designmønsteret.

Dette eksempel har antaget, at forespørgsler blev udført af en Java-applikation, der udnytter HBase-klient-API'erne, eller måske via et andet sprog ved hjælp af Apache Thrift. Denne applikationsmodel kan tilpasse kravene helt fint og give nyttige præstationer og tilpasningsmuligheder til det fiktive servicevirksomhed.

Overførsel fra en RDBMS-model til HBase-dummies

Valg af editor

Hvad er nyt i Microsoft Word 2016? - dummies

Hvad er nyt i Microsoft Word 2016? - dummies

Udgivelsen af ​​Microsoft Word i 2016 er funktionel pakket og kan prale af evnen til at forenkle arbejdsgange og forene arbejdsgrupper. Hvad det betyder for dig er, at det er et meget lettere produkt at bruge i forhold til tidligere versioner. Med funktionelle ændringer, der er indbygget i knapper og faner af Word 2016s båndformede proceslinje, har den ...

Word 2010 Tastaturgenveje - Dummies

Word 2010 Tastaturgenveje - Dummies

Word 2010 tilbyder en række nyttige tastaturgenveje til hurtigt at udføre opgaver. Her er nogle genveje til almindelig Word-formatering, redigering og fil- og dokumentopgaver. Word 2010 Formatering Genveje Kommando Genvej Bånd Placering Fed Ctrl + B Startside Fane, Skrifttype Gruppe Kursiv Ctrl + I Startside, Skriftgruppe Understrege Ctrl + U Startside Fane, Skriftgruppe Center Ctrl + E ...

Word 2007 For Dummies Cheat Sheet - dummies

Word 2007 For Dummies Cheat Sheet - dummies

Word 2007 ser anderledes ud, men tilbyder stadig de praktiske Word hæfteklammer som f.eks. tastaturgenveje til at hjælpe dig med at oprette, formatere, indsætte ting i og flytte gennem dine Word-dokumenter. Og Word 2007 tilbyder også et par nye funktioner, der hjælper dig med at håndtere din tekstbehandling med lethed.

Valg af editor

ASVAB Montering af objekter Subtest: Shapes - dummies

ASVAB Montering af objekter Subtest: Shapes - dummies

Mange mennesker kan finde den anden type montering af objekter problem på ASVAB lettere end forbindelsesproblemerne. Denne type problem er meget som et puslespil, medmindre det ikke resulterer i et billede af Frihedsgudinden eller et kort over USA. Der er også en heck of a ...

ASVAB Aritmetisk Reasoning Subtest: Viser Sammenligninger med Ratioer - Dummies

ASVAB Aritmetisk Reasoning Subtest: Viser Sammenligninger med Ratioer - Dummies

Du skal vide, hvordan du arbejde med forhold for den aritmetiske begrundelse subtest af ASVAB. Et forhold viser et forhold mellem to ting. For eksempel, hvis Margaret investerede i hendes tatoveringslokale i forholdet 2: 1 (eller 2 til 1) til hendes forretningspartner Julie, satte Margaret $ 2 for hver ...

ASVAB Auto & Shop Information Undertest: Drilling, Punching og Gouging Tools - dummies

ASVAB Auto & Shop Information Undertest: Drilling, Punching og Gouging Tools - dummies

Nej, det handler ikke om hånd-til-hånd kamp træning fra grundlæggende træning. Imidlertid vil ASVAB teste din viden om, hvor praktisk du er med boring, stansning og gouging-værktøjer. Masters i butikskunst gør ofte huller i det materiale, de arbejder med for at opbygge det perfekte fuglehus (eller hvad de arbejder på). ...

Valg af editor

EMT-eksamen: Sådan arbejder du med et team under et nødsituation

EMT-eksamen: Sådan arbejder du med et team under et nødsituation

Arbejder helt alene som en EMT er ekstremt sjælden. Selv under disse omstændigheder vil du sandsynligvis interagere med andre sundhedspleje- og offentlige sikkerhedsudbydere på et eller andet tidspunkt under et opkald. Mere sandsynligt vil du fungere som medlem af et hold. Det kan være en enkelt partner, et brandmandsbesætningsmedlem eller endda en nødsituation ...

EMT-eksamen: Sådan dokumenterer du dine tilfælde - dummier

EMT-eksamen: Sådan dokumenterer du dine tilfælde - dummier

Til eksamen og i feltet EMT er forpligtet til at dokumentere, hvad du observerede om patienten og miljøet, de resultater, du vurderede, den omhu du gav, og eventuelle ændringer i patientens tilstand, mens du var i din pleje. Dokumentation kan ske enten på papirformularer eller elektronisk med en computer, bærbar computer, ...