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!!! 2025

Video: Acid Grace — A MUST WATCH for Advanced Seekers!!! 2025
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

Come salvare le immagini in un file immagine in R - dummies

Come salvare le immagini in un file immagine in R - dummies

Se vuoi pubblicare le tue risultati, è necessario salvare la trama in un file in R e quindi importare questo file grafico in un altro documento. Tuttavia, per la maggior parte del tempo, potresti semplicemente voler utilizzare la grafica R in modo interattivo per esplorare i tuoi dati. Per salvare un grafico su un'immagine ...

Come cercare più parole in R - dummies

Come cercare più parole in R - dummies

Quando si lavora con il testo in R, potrebbe essere necessario per trovare parole o motivi all'interno del testo. Immagina di avere una lista degli stati negli Stati Uniti e vuoi scoprire quali nomi di stato consistono in due parole. Per trovare sottostringhe, è possibile utilizzare la funzione grep (), che prende due argomenti essenziali: ...

Come cercare le singole parole in R - dummies

Come cercare le singole parole in R - dummies

Quando lavori con il testo, spesso tu può risolvere i problemi se riesci a trovare parole o motivi all'interno del testo. R rende questo facile da fare. Immagina di avere una lista degli stati negli Stati Uniti e vuoi scoprire quale di questi stati contiene la parola Nuovo. Per indagare su questo ...

Scelta dell'editore

Come calcolare le detrazioni e i crediti di imposta sugli investimenti immobiliari per l'esame di licenza immobiliare

Come calcolare le detrazioni e i crediti di imposta sugli investimenti immobiliari per l'esame di licenza immobiliare

Una detrazione fiscale è qualcosa che puoi vedere nell'esame di licenza immobiliare che puoi detrarre dal reddito di un investimento immobiliare per ridurre le tasse. Un credito d'imposta è qualcosa che puoi detrarre dalle tasse dovute. I governi federali e talvolta statali creano programmi che consentono crediti d'imposta o detrazioni per ...

Fattori economici che influenzano il valore per l'esame di licenza immobiliare - dummies

Fattori economici che influenzano il valore per l'esame di licenza immobiliare - dummies

Valore doesn ' semplicemente succede; le persone devono crearlo. La maggior parte di queste azioni personali che saranno trattate durante l'esame di licenza immobiliare, di solito chiamate influenze economiche, non sono altro che normali comportamenti umani. Il test pone due tipi di domande su questi principi o fattori economici. Vedrai domande sulle definizioni e ...

Come calcolare le aliquote fiscali per l'esame di licenza immobiliare - dummy

Come calcolare le aliquote fiscali per l'esame di licenza immobiliare - dummy

Pur calcolando la tassa le tariffe non sono qualcosa che devi sapere esattamente come fare per l'esame di licenza immobiliare, è qualcosa che devi capire in generale per rispondere a domande di non-matematica sul processo. Sapere come calcolare le tasse non è una cosa brutta da sapere, perché probabilmente si pagano le tasse di proprietà e ...

Scelta dell'editore

Suggerimenti per la registrazione Regole di gioco logiche sull'LSAT - manichini

Suggerimenti per la registrazione Regole di gioco logiche sull'LSAT - manichini

La maggior parte dei giochi di logica sull'LSAT hanno tre, quattro o cinque condizioni o regole che limitano il modo in cui giochi con i pezzi. Per ordinare i giochi, le restrizioni forniscono indizi su come i pezzi possono essere posizionati in relazione l'uno con l'altro. I tipi comuni di regole di ordinazione sono obiettivi, distanziatori e arrangiatori. Regole di destinazione I bersagli danno ...

Come gestire il tuo tempo con saggezza sul TASC - dummies

Come gestire il tuo tempo con saggezza sul TASC - dummies

Perché ogni sezione del TASC, oppure Prova l'esame di completamento secondario, ha un limite di tempo, vorrai essere consapevole di quanto tempo è passato mentre stai facendo il test. Un modo per gestire efficacemente il tuo tempo è semplicemente indossando un orologio. I centri di test potrebbero non avere sempre un orologio disponibile e ...

Rendendo più semplice il giorno di prova SSAT o ISEE - manichini

Rendendo più semplice il giorno di prova SSAT o ISEE - manichini

Non è possibile effettuare SSAT o ISEE più facile, ma puoi iniziare la giornata di test correttamente e renderlo più semplice e meno stressante, il che può portare a risultati migliori durante l'esame di ammissione. Ecco alcuni suggerimenti da tenere a mente al giorno del test SSAT o ISEE: riposati molto. La ...