Casa Finanza personale ACID rispetto a BASE Data Stores - dummies

ACID rispetto a BASE Data Stores - dummies

Video: Acid Grace — A MUST WATCH for Advanced Seekers!!! 2024

Video: Acid Grace — A MUST WATCH for Advanced Seekers!!! 2024
Anonim

Un segno distintivo dei sistemi di database relazionali è noto come conformità ACID. Come avrete intuito, ACID è un acronimo: le singole lettere, pensate per descrivere una caratteristica delle singole transazioni del database, possono essere espanse come descritto in questo elenco:

  • Atomicità: La transazione del database deve essere completamente avere successo o fallire completamente. Il successo parziale non è permesso.

  • Consistenza: Durante la transazione del database, l'RDBMS passa da uno stato valido a un altro. Lo stato non è mai valido.

  • Isolamento: La transazione del database del client deve avvenire separatamente dagli altri client che tentano di effettuare transazioni con RDBMS.

  • Durata: L'operazione di dati che faceva parte della transazione deve essere riflessa in memoria non volatile (memoria del computer in grado di recuperare le informazioni memorizzate anche quando non sono alimentate - come un disco rigido) e persistere dopo la transazione è stata completata con successo. Gli errori di transazione non possono lasciare i dati in uno stato parzialmente commesso.

Alcuni casi d'uso per RDBMS, come l'elaborazione delle transazioni online, dipendono da transazioni conformi a ACID tra il client e RDBMS affinché il sistema funzioni correttamente. Un ottimo esempio di transazione conforme ACID è un trasferimento di fondi da un conto bancario a un altro.

Si divide in due transazioni di database, in cui l'account di origine mostra un prelievo e l'account di destinazione mostra un deposito. Ovviamente, queste due transazioni devono essere legate insieme in modo da essere valide in modo che se uno di loro fallisce, l'intera operazione non deve garantire che entrambi i saldi rimangano validi.

Hadoop stesso non ha alcun concetto di transazioni (o anche di record, se è per questo), quindi chiaramente non è un sistema compatibile con ACID. Pensando in modo più specifico all'archiviazione dei dati e all'elaborazione dei progetti nell'intero ecosistema Hadoop, nessuno di questi è pienamente compatibile con ACID. Tuttavia, fanno riflettono le proprietà che si vedono spesso negli archivi dati NoSQL, quindi esistono alcuni precedenti all'approccio Hadoop.

Un concetto chiave alla base degli archivi dati NoSQL è che non tutte le applicazioni richiedono realmente transazioni conformi a ACID. Rilassarsi su alcune proprietà ACID (e allontanarsi dal modello relazionale) ha aperto una miriade di possibilità, che hanno consentito ad alcuni data store NoSQL di ottenere un'enorme scalabilità e prestazioni per le loro applicazioni di nicchia.

Mentre ACID definisce le caratteristiche chiave richieste per l'elaborazione affidabile delle transazioni, il mondo NoSQL richiede caratteristiche diverse per consentire flessibilità e scalabilità.Queste caratteristiche opposte vengono abilmente catturate nell'acronimo BASE:

  • B asalmente A vailable: Il sistema è garantito per essere interrogato da tutti gli utenti. (Nessun isolamento qui.)

  • S stato: I valori memorizzati nel sistema possono cambiare a causa del modello di consistenza finale, come descritto nel prossimo punto.

  • E ventualmente coerente: Man mano che i dati vengono aggiunti al sistema, lo stato del sistema viene gradualmente replicato su tutti i nodi. Ad esempio, in Hadoop, quando un file viene scritto su HDFS, le repliche dei blocchi di dati vengono create in diversi nodi di dati dopo che i blocchi di dati originali sono stati scritti. Per il breve periodo prima della replica dei blocchi, lo stato del file system non è coerente.

L'acronimo BASE è un po 'forzato, poiché la maggior parte dei data store NoSQL non abbandona completamente tutte le caratteristiche ACID - in altre parole, non è proprio il concetto opposto. Inoltre, le caratteristiche Soft State e Eventually Consistent equivalgono alla stessa cosa, ma il punto è che rilassando la coerenza, il sistema può scalare orizzontalmente (molti nodi) e garantire la disponibilità.

Nessuna discussione su NoSQL sarebbe completa senza menzionare il teorema CAP, che rappresenta i tre tipi di garanzie che gli architetti mirano a fornire nei loro sistemi:

  • Coerenza: Simile alla C in ACID, tutti i nodi in il sistema avrebbe la stessa visione dei dati in qualsiasi momento.

  • Disponibilità: Il sistema risponde sempre alle richieste.

  • Tolleranza partizione: Il sistema rimane online se si verificano problemi di rete tra i nodi di sistema.

Il teorema CAP afferma che nei sistemi distribuiti in rete, gli architetti devono scegliere due di queste tre garanzie: non è possibile promettere ai propri utenti tutti e tre. Ciò ti lascia con le tre possibilità mostrate:

  • I sistemi che utilizzano le tecnologie relazionali tradizionali normalmente non sono tolleranti alle partizioni, quindi possono garantire coerenza e disponibilità. In breve, se una parte di questi sistemi di tecnologie relazionali tradizionali è offline, l'intero sistema è offline.

  • I sistemi in cui la tolleranza e la disponibilità delle partizioni sono di importanza primaria non possono garantire la coerenza, poiché gli aggiornamenti (il distruttore di consistenza) possono essere eseguiti su entrambi i lati della partizione. I negozi con valore chiave Dynamo e CouchDB e il negozio di famiglia di colonne Cassandra sono esempi popolari di sistemi di tolleranza / disponibilità delle partizioni (PA).

  • I sistemi dove tolleranza e coerenza delle partizioni sono di importanza primaria non possono garantire la disponibilità perché i sistemi restituiscono errori fino a quando lo stato partizionato non viene risolto.

    Gli archivi dati basati su Hadoop sono considerati sistemi CP ( c tolleranti all'arte esistenti e p ). Con i dati archiviati in modo ridondante su molti nodi slave, è possibile tollerare le interruzioni di ampie porzioni (partizioni) di un cluster Hadoop. Hadoop è considerato coerente poiché ha un archivio di metadati centrale (il NameNode) che mantiene una vista unica e coerente dei dati memorizzati nel cluster.

ACID rispetto a BASE Data Stores - dummies

Scelta dell'editore

Scattare foto digitali con uno zoom ottico - dummy

Scattare foto digitali con uno zoom ottico - dummy

La fotocamera digitale potrebbe avere uno zoom ottico, che è un Obiettivo zoom attuale vecchio stile (al contrario di uno zoom digitale). Per utilizzare lo zoom ottico della fotocamera digitale per scatti ravvicinati, segui questi passaggi di preparazione delle immagini prima di attivare il pulsante o lo switch di zoom:

La reflex digitale e la sensibilità alla luce - dummy

La reflex digitale e la sensibilità alla luce - dummy

La tua reflex digitale ha un'opzione per determinare la sensibilità del sensore della fotocamera è alla luce. Le fotocamere digitali sono le stesse delle fotocamere a pellicola in quanto la sensibilità alla luce è determinata dalla valutazione ISO. Il vantaggio di una fotocamera digitale è che non è necessario cambiare pellicola per modificare le valutazioni ISO. Quando aumenti ...

Scatti grandangolari con obiettivi standard - manichini

Scatti grandangolari con obiettivi standard - manichini

Fotografia grandangolare con un angolo di campo maggiore rispetto alla lunghezza focale normale o teleobiettivo. A volte si percepiscono le foto come molto espansive. Altre volte, a malapena lo si nota. Dipende tutto dal soggetto e da come si inquadra la scena. Questa figura mostra una scena di terreni agricoli che è stata scattata utilizzando un Sony APS-C ...

Scelta dell'editore

Come usare il meta tag DESCRIPTION - dummies

Come usare il meta tag DESCRIPTION - dummies

I meta tag sono tag HTML speciali che puoi utilizzare per trasportare informazioni, che i browser o altri programmi possono quindi leggere. Quando i motori di ricerca di Internet furono creati per la prima volta, i webmaster includevano i meta tag nelle loro pagine per rendere più facile per i motori di ricerca determinare le pagine. I motori di ricerca hanno utilizzato anche questi meta ...

Come scrivere un grande tag Title Web Marketing - dummies

Come scrivere un grande tag Title Web Marketing - dummies

Scrivere un tag title è fondamentale per il successo del web marketing e coinvolge più che mettere le parole chiave prima. I motori di ricerca mostrano il tag parola chiave nella parte superiore di ciascun elemento nelle pagine dei risultati dei motori di ricerca (SERP). Un tag del titolo ben scritto potrebbe aumentare le probabilità che un cliente in ricerca faccia clic sul tuo annuncio. Se ...

In che modo Yahoo! Cerca negli elenchi di Internet e dei ranghi - dummies

In che modo Yahoo! Cerca negli elenchi di Internet e dei ranghi - dummies

Quando le persone effettuano ricerche sul Web utilizzando Yahoo! , ottengono una combinazione di risultati organici e pagati. Se lavori per una società più grande, potresti provare Yahoo! La ricerca inoltra Pro per ottenere un vantaggio rispetto alla concorrenza e puoi persino registrare il tuo sito con Yahoo! Directory. Yahoo! I risultati di ricerca organica ...

Scelta dell'editore

Di Spotify su ShareMyPlaylists. it Funzionalità del sito - dummies

Di Spotify su ShareMyPlaylists. it Funzionalità del sito - dummies

ShareMyPlaylists (o SMP, in breve) è stato uno dei primi siti di condivisione di playlist Spotify e continua a innovare e offrire nuove funzionalità ai visitatori. Il mantra del sito è "Long Live the Mixtape", e qui troverai tantissime creazioni accuratamente compilate da migliaia di utenti. Dopo aver creato una playlist Spotify piena di ...

Spotify Unlimited - dummies

Spotify Unlimited - dummies

Spotify Unlimited è un modo brillante per ascoltare tutta la musica che vuoi senza limiti. È come una persona speciale che ti compra da mangiare e da bere tutta la sera per non doverti preoccupare del conto. È come essere in grado di dormire nel weekend senza preoccuparsi del lavoro o se ...

I generi di Spotify - dummies

I generi di Spotify - dummies

Che si tratti di hard rock, techno, pop, jazz, industrial, indie pop, folk , classico, heavy metal, valzer o qualsiasi altra cosa ti piaccia, Spotify ha il genere o il tipo di musica coperto. Puoi cercare i generi comuni da Spotify. Sebbene Spotify abbia pubblicato un elenco di quasi 1, 000 generi noti, non tutti saranno in grado di offrire ...