Hjem Personlig finansiering ACID versus BASE Data Stores - dummies

ACID versus BASE Data Stores - dummies

Video: SQL vs. Hadoop: Acid vs. Base 2025

Video: SQL vs. Hadoop: Acid vs. Base 2025
Anonim

Et kjennetegn ved relationsdatabasesystemer er noe kjent som ACID-overholdelse. Som du kanskje har gjettet, er ACID en akronym - de individuelle bokstaver, som er ment å beskrive en karakteristikk for individuelle databasetransaksjoner, kan utvides som beskrevet i denne listen:

  • Atomicity: Databasetransaksjonen må fullstendig lykkes eller helt mislykkes. Delvis suksess er ikke tillatt.

  • Konsistens: Under databasetransaksjonen går RDBMS fra en gyldig tilstand til en annen. Staten er aldri ugyldig.

  • Isolering: Klientens databasetransaksjon må forekomme isolert fra andre klienter som forsøker å transaksere med RDBMS.

  • Holdbarhet: Datoperasjonen som var en del av transaksjonen, må gjenspeiles i ikke-flyktig lagring (dataminne som kan hente lagret informasjon, selv om den ikke er drevet - som en harddisk) og fortsetter etter Transaksjonen fullføres vellykket. Transaksjonsfeil kan ikke overlate dataene i en delvis forpliktet tilstand.

Visse brukstilfeller for RDBMSer, som for eksempel online transaksjonsbehandling, avhenger av ACID-kompatible transaksjoner mellom klienten og RDBMS for at systemet skal fungere skikkelig. Et godt eksempel på en ACID-kompatibel transaksjon er en overføring av midler fra en bankkonto til en annen.

Dette brytes ned i to databasetransaksjoner, hvor den opprinnelige kontoen viser en tilbaketrekning, og destinasjonskontoen viser et innskudd. Åpenbart må disse to transaksjonene knyttes sammen for å være gyldig, slik at hvis en av dem feiler, må hele operasjonen mislykkes for å sikre at begge saldoene forblir gyldige.

Hadoop selv har ikke noe konsept for transaksjoner (eller til og med poster, for den saks skyld), så det er tydeligvis ikke et system med syre. Tenker mer spesifikt om datalagring og prosessprosjekter i hele Hadoop-økosystemet, ingen av dem er også helt syre-kompatible. Men de gjør gjenspeiler egenskaper som du ofte ser i NoSQL datalager, så det er noen presedens for Hadoop-tilnærmingen.

Et nøkkelbegrep bak NoSQL datalager er at ikke alle applikasjoner trenger virkelig ACID-kompatible transaksjoner. Avslappende på visse ACID-egenskaper (og beveger seg vekk fra relasjonsmodellen) har åpnet et vell av muligheter, noe som har gjort det mulig for noen NoSQL datalager å oppnå massiv skalerbarhet og ytelse for sine niseprogrammer.

Mens ACID definerer nøkkelegenskapene som kreves for pålitelig transaksjonsbehandling, krever NoSQL verden forskjellige egenskaper for å muliggjøre fleksibilitet og skalerbarhet.Disse motstridende egenskapene er smart innfanget i akronymet BASE:

  • B asically A tilgjengelig: Systemet er garantert tilgjengelig for forespørsel fra alle brukere. (Ingen isolasjon her.)

  • S ofte Stat: Verdiene som er lagret i systemet, kan endres på grunn av den eventuelle konsistensmodellen, som beskrevet i neste kule.

  • E ventuelt konsistent: Når data legges til systemet, blir systemets tilstand gradvis kopiert på tvers av alle noder. For eksempel, i Hadoop, når en fil er skrevet til HDFS, blir replikene til datablokker opprettet i forskjellige datodenoder etter at de opprinnelige datablokkene er skrevet. I den korte perioden før blokkene blir replisert, er tilstanden til filsystemet ikke konsistent.

Akronymet BASE er litt opptatt, ettersom de fleste NoSQL-datalager ikke helt forlater alle ACID-egenskapene - det er egentlig ikke det polære motsatte konseptet som navnet tilsier, med andre ord. Også den myke tilstanden og til slutt konsistente egenskaper utgjør det samme, men poenget er at ved å slappe av konsistens, kan systemet horisontalt skala (mange noder) og sikre tilgjengelighet.

Ingen diskusjon om NoSQL vil være komplett uten å nevne CAP-ordningen, som representerer de tre typer garantier arkitekter har som mål å gi i sine systemer:

  • Konsistens: I likhet med C i ACID, alle nodene i systemet ville ha samme visning av dataene når som helst.

  • Tilgjengelighet: Systemet reagerer alltid på forespørsler.

  • Partisjonstoleranse: Systemet forblir online hvis nettverksproblemer oppstår mellom systemknutepunktene.

CAP-ordningen sier at i distribuerte nettverkssystemer må arkitekter velge to av disse tre garantiene - du kan ikke love dine brukere alle tre. Det gir deg de tre mulighetene som vises:

  • Systemer som bruker tradisjonelle relasjonelle teknologier er normalt ikke partisjonstolerante, slik at de kan garantere konsistens og tilgjengelighet. Kort sagt, hvis en del av disse tradisjonelle relasjonelle teknologisystemene er frakoblet, er hele systemet offline.

  • Systemer hvor partisjonstoleranse og tilgjengelighet er av største betydning kan ikke garantere konsistens, fordi oppdateringer (som ødelegger av konsistens) kan gjøres på hver side av partisjonen. Nøkkelverdien lagrer Dynamo og CouchDB, og kolonnebutikken Cassandra er populære eksempler på partisjonstolerant / tilgjengelighet (PA) -systemer.

  • Systemer hvor partisjonstoleranse og konsistens er av største betydning kan ikke garantere tilgjengelighet fordi systemene returnerer feil til partisjonert tilstand er løst.

    Hadoopbaserte datalager betraktes som CP-systemer ( c onsistent og p artisjon tolerant). Med data lagret redundantly over mange slave noder, kan utbrudd til store deler (partisjoner) av en Hadoop-klynge tolereres. Hadoop anses å være konsistent fordi den har en sentral metadata-butikk (NameNode) som opprettholder en enkelt, konsistent visning av data lagret i klyngen.

ACID versus BASE Data Stores - dummies

Redaktørens valg

Hvordan du samler ressurser i Minecraft - dummies

Hvordan du samler ressurser i Minecraft - dummies

Du kan samle ressurser på flere måter for Minecraft-strukturen - noen er mer effektiv enn andre. Her finner du noen forskjellige måter å samle materialer på for din struktur. Du har et par forskjellige alternativer når det gjelder gruvedrift. Hver har sine fordeler og ulemper, så det er opp til ...

Hvordan bygge Minecraft-kretser og -maskiner med Minecart-spor - dummier

Hvordan bygge Minecraft-kretser og -maskiner med Minecart-spor - dummier

Minecart og skinner er Minecraft-funksjoner ofte brukt til å transportere spillere. Men de kan også utføre mange mekaniske egenskaper bedre enn de vanlige redstone-elementene. Minecarts er enheter som kan rulle raskt langs minecartskinner. De kan svinge, gå opp og ned skråninger, og til og med spore (selv om de lider mye ...

Hvordan bygge din første Minecraft Garden - dummies

Hvordan bygge din første Minecraft Garden - dummies

Se hvordan du oppretter en vakker hage i Minecraft ved å planlegge riktig layout, få en rekke unike planter, og organisere plass.

Redaktørens valg

Markedet ditt mobilnettsted til media - dummies

Markedet ditt mobilnettsted til media - dummies

IPhone og iPad er varme emner i media i disse dager. Når du er ferdig med å designe nettstedet ditt for disse nye medieenhetene, ikke glem å markedsføre dem til tradisjonelle medier. Tiltrekke medieoppmerksomhet til mobilwebområdet ditt er ikke i motsetning til å tiltrekke det til noen annen virksomhet. Trikset er å fortelle et godt ...

Gjør skannede dokumenter søkbare og redigerbare - dummies

Gjør skannede dokumenter søkbare og redigerbare - dummies

Når du skanner et dokument direkte til en PDF-fil, Acrobat fanger all tekst og grafikk på hver side som om de alle var bare ett stort grafisk bilde. Dette er bra så langt det går, bortsett fra at det ikke går veldig langt fordi du ikke kan redigere eller søke i PDF-dokumentet ...

Markedet med SMS-meldinger - dummies

Markedet med SMS-meldinger - dummies

Lengden på SMS- begrenset til 160 tegn, så reklamemeldingen din må være kort og søt. Disse meldingene kan inneholde lenker til nettsteder eller klikk for å ringe meldinger: Du klikker på SMS, slik at telefonen ringer. SMS-kampanjer er mye enklere å håndtere enn ...

Redaktørens valg

Rediger, endre farge eller fjern Photoshop Shape Layers - dummies

Rediger, endre farge eller fjern Photoshop Shape Layers - dummies

Bruk formlag i Photoshop Creative Suite 5 når målet med designet ditt er å integrere vektormodeller og pikseldata sømløst. Når du har opprettet et formlag, kan du redigere formen, endre fargen eller fjerne laget helt. Rediger en form Som Adobe Illustrator, gir Photoshop både et valg av sti ...

Oppdag Photoshops malerverktøy - dummies

Oppdag Photoshops malerverktøy - dummies

Ingenting i Photoshop CC gir deg mer presis kontroll over fargen i bildet ditt enn ved bruk av blyantpenningen verktøy med en 1-piks pensel. Husk at bildet ditt består av mange småfargede firkanter (piksler), og at fargen på de enkelte firkantene er det som gir utseendet til et tre eller et ...

Forbedre portretter i Photoshop CC - dummier

Forbedre portretter i Photoshop CC - dummier

Forbedre detaljer som å avklare motivets briller i Photoshop CC kan hjelpe bildene dine og portretter ser det mye bedre ut. Whitening tennene er et annet godt triks for å lyse opp bildene dine. Deklarende briller i Photoshop Eyeglasses kan være fotografens mareritt! Refleksjonene fra glass er vanligvis spekulative høydepunkter - det vil si områder av ren ...