Il miglior tutorial NoSQL Profilo Nel 2024, in questo tutorial puoi imparare database relazionale per seguire la ACID regole,Sistemi distribuiti,I vantaggi di calcolo distribuito,Lo svantaggio di calcolo distribuito,Che cosa è NoSQL?,Perché NoSQL?,Esempi,RDBMS vs NoSQL,NoSQL Breve storia,CAP Teorema (PAC teorema),NoSQL vantaggi / svantaggi,BASE,ACID vs BASE,la classificazione del database NoSQL,Chi utilizza,
NoSQL (NoSQL = Non solo SQL), che significa "non solo SQL".
Nei moderni sistemi informatici giorno sulla rete avrà una grande quantità di dati.
Questi dati sono una gran parte del sistema di gestione di database relazionali (RDMBSs) da affrontare. proposto di carta 1970 EFCodd modello relazionale "Un modello relazionale dei dati per le grandi banche dati condivise", il che rende i dati di modellazione e di programmazione delle applicazioni più facile.
Applicando modello relazionale provata è molto adatto per la programmazione client-server, ben oltre i benefici attesi, e oggi è i dati strutturati memorizzati nella rete e applicazioni aziendali tecnologia dominante.
banca dati NoSQL è un nuovo movimento rivoluzionario, in anticipo su di esso è stato suggerito che la tendenza allo sviluppo di sempre più in aumento al 2009. NoSQL sostenitori che promuovono l'uso di memorizzazione dei dati non relazionali, per quanto riguarda l'uso opprimente di database relazionali, questo concetto è indubbiamente iniettato un nuovo modo di pensare.
operazione inglese è di transazione, e il mondo reale di trading è molto simile, ha le seguenti quattro caratteristiche:
1, A (Atomicità) Atomic <br> atomica facile da capire, che tutte le operazioni di transazione sia tutto fatto, o non fare, la transazione è una transazione le condizioni per il successo di tutte le operazioni hanno successo, finché ci una operazione non riesce, l'intera transazione avrà esito negativo, è necessario eseguire il rollback.
Come ad esempio bonifici, il trasferimento conto da A a B conti 100 yuan, è diviso in due fasi: 1) prendere la contabilità A 100 yuan; 2) per B 100 yuan conti di deposito. Questi due passaggi sono stati completati insieme o non insieme a termine, se completato solo il primo passo, il secondo passaggio non riesce, i soldi in qualche modo 100 yuan di meno.
2, C (coerenza) coerenza <br> coerenza è relativamente facile da capire, che è stato nel database in uno stato coerente, eseguire l'operazione non cambierà i vincoli di coerenza database originale.
Esistenti vincoli di integrità come a + b = 10, se una transazione cambia, si devono cambiare b, in modo che l'estremità posteriore della transazione è ancora soddisfare a + b = 10, altrimenti l'operazione fallisce.
3, I (isolamento) <br> cosiddetta indipendenza significa che l'indipendenza non si influenzano a vicenda transazioni concorrenti, se un dati delle transazioni a cui accedere da un'altra transazione viene modificato finché un'altra transazione senza commit, è i dati si accede non è influenzato dalla transazione commit.
Ad esempio, vi è un conto di trading esistente viene trasferito da A a B conti 100 yuan, nel caso di questa operazione non è stata completata. Se la B controllare i loro conti, non può vedere le appena aggiunti 100 yuan.
4, D (Durability) Persistenza Persistenza riferisce <br> volta che la transazione si impegna, edita saranno memorizzati in modo persistente sul database, non sarà persa anche in caso di inattività.
I sistemi distribuiti (sistema distribuito) computers componenti software multiple e del collegamento di comunicazione (rete locale o wide area network) composto da una rete di computer.
I sistemi distribuiti sono costruiti sulla cima di sistemi software di rete. È proprio a causa delle caratteristiche del software, il sistema distribuito con un alto grado di coesione e trasparenza.
Pertanto, la differenza tra la rete e il sistema distribuito che più programmi di alto livello (in particolare il sistema operativo), piuttosto che hardware.
I sistemi distribuiti possono essere applicati su diverse piattaforme come PC, workstation, LAN e WAN e simili.
Affidabilità (tolleranza ai guasti):
Importanti vantaggi di un sistema di calcolo distribuito è l'affidabilità. Crash un server non influenza il resto del server.
Scalabilità:
In un sistema di calcolo distribuito può aggiungere più macchine in base alle esigenze.
La condivisione delle risorse:
La condivisione dei dati è essenziale per applicazioni quali banche, sistemi di prenotazione.
flessibilità:
Poiché il sistema è molto flessibile, è facile da installare, implementare e mettere a punto nuovi servizi.
Velocità più elevata:
sistema di calcolo distribuito può avere più potenza di calcolo dei computer, il che rende una velocità di elaborazione più veloce di altri sistemi.
Sistemi Aperti:
Poiché si tratta di un sistema aperto che può essere accesso locale o remoto al servizio.
Prestazioni più elevate:
cluster di rete di computer centralizzati confrontati per fornire prestazioni più elevate (e un prezzo migliore).
Risoluzione dei problemi ::
Risoluzione dei problemi e diagnosticare il problema.
Software:
supporto software Meno è il principale svantaggio dei sistemi di calcolo distribuito.
rete:
Problemi di infrastrutture di rete, tra cui: problemi di trasmissione, ad alto carico, le informazioni si perde e così via.
Sicurezza:
sistema di calcolo caratteristiche dello sviluppo del sistema permette distribuiti è vulnerabile a rischi per la sicurezza e la condivisione di problemi di dati.
NoSQL, si riferisce a un database non relazionale. NoSQL è a volte indicato anche come abbreviazione non solo per SQL, è diverso dal tradizionale sistema di gestione di database di database relazionali collettivamente.
NoSQL per la memorizzazione dei dati su larga scala. (Come Google o Facebook trilione di bit di dati al giorno raccolti per i loro utenti). Questi tipi di memorizzazione dati non richiede uno schema fisso, nessuna operazione supplementare può essere esteso lateralmente.
Oggi siamo in grado di essere la piattaforma di terze parti: si può facilmente accedere e recuperare i dati (come Google, Facebook, ecc). le informazioni personali degli utenti, il social networking, l'ubicazione, i dati generati dagli utenti e utente accede è aumentato esponenzialmente. Se vogliamo mineraria questi dati utente, database SQL che non è adatto per queste applicazioni, e lo sviluppo di dati NoSQL è ben in grado di gestire questi dati di grandi dimensioni.
reti socializzato:
pagina di Wikipedia:
RDBMS
- La struttura altamente organizzata dei dati
- Lingua Structured Query (SQL) (SQL)
- Dati e rapporti sono memorizzati in una tabella separata.
- Data Manipulation Language, Data Definition Language
- Consistenza Strict
- servizi di base
NoSQL
- Rappresenta non solo SQL
- Nessun linguaggio di query dichiarativo
- Nessun modello predefinito
- Coppia di valori, la memorizzazione della colonna, archiviazione documenti, grafica, dati - Chiave
- la coerenza eventuale, piuttosto che proprietà ACID
- Dati imprevedibile e non strutturati
- Teorema CAP
- Alte prestazioni, alta disponibilità e scalabilità
NoSQL Il termine la prima volta nel 1998, è un peso leggero di sviluppo Carlo Strozzi, open source, non fornisce funzionalità di database relazionale SQL.
Nel 2009, di Last.fm Johan Oskarsson ha avviato una discussione su open source database distribuito [2], Eric Evans da Rackspace nuovo proposto il concetto di NoSQL, poi il NoSQL si riferisce principalmente alla non-relazionali, distribuito, non forniscono ACID modelli di progettazione di database.
Nel 2009 ad Atlanta "no: SQL (est)" seminario è una pietra miliare, con lo slogan "selezionare divertimento, profitto da real_world dove relazionale = false;". Pertanto, NoSQL spiegazione più comune è che "non associato di tipo", ha sottolineato i vantaggi dei valori-chiave di negozi e banche dati del documento, piuttosto che mera RDBMS opposizione.
In informatica, CAP Teorema (teorema cap), conosciuto anche come Brewer Teorema (teorema di birra), che ha sottolineato che per un sistema di calcolo distribuito, non può soddisfare contemporaneamente i seguenti tre punti:
teoria nucleo PAC è: un sistema distribuito non può soddisfare contemporaneamente la consistenza, la disponibilità, la tolleranza ai guasti, e partizionare questi tre requisiti in grado di soddisfare solo due bel po '.
Così, secondo i principi del database PAC NoSQL nel CA soddisfare il principio, per incontrare e soddisfare i principi di CP principio AP tre categorie:
vantaggi:
svantaggi:
BASE: Fondamentalmente disponibili, Soft-stato, alla fine coerente. Definito da Eric Brewer.
teoria nucleo PAC è: un sistema distribuito non può soddisfare contemporaneamente la consistenza, la disponibilità, la tolleranza ai guasti, e partizionare questi tre requisiti in grado di soddisfare solo due bel po '.
BASE è un database NoSQL è in genere debole, la disponibilità e la coerenza dei requisiti principali:
ACID | BASE |
---|---|
Atomica (A tomicity) | Basic può essere utilizzato (B asically A vailable) |
Consistenza (C OERENZA) | stato morbido / servizi flessibili (S stato oft) |
Isolamento (I consolazione) | consistenza Eventuale (E consistenza ventual) |
Persistente (D urable) |
tipo | alcuni rappresentanti | caratteristica |
negozi colonna | HBase cassandra Hypertable | Come suggerisce il nome, è memorizzato in colonne di dati. La più grande caratteristica è facile da immagazzinare dati strutturati e semi-strutturati, facile da fare la compressione dei dati, per avere un vantaggio molto grande per IO di una o più colonne di una query. |
memorizzazione documenti | MongoDB CouchDB | archiviazione dei documenti è generalmente utilizzato per memorizzare formato JSON simile, il contenuto viene memorizzato nel tipo di documento. Questo ha anche la possibilità di costruire un indice su qualche campo, per realizzare alcune delle caratteristiche di un database relazionale. |
memorizzazione di valori-chiave | Tokyo Governo / Tiranno Berkeley DB MemcacheDB Redis | È possibile verificare velocemente al suo valore con il tasto. In generale, indipendentemente dal valore formato di memorizzazione di ereditare. (Redis contiene funzionalità aggiuntive) |
Mappa della memoria | Neo4j FlockDB | Migliori relazioni negozio Graphics. Basso utilizzo di prestazioni tradizionali database relazionale per risolverlo, e il design è scomodo da usare. |
Stoccaggio oggetto | db4o versante | Attraverso sintassi del linguaggio orientato agli oggetti è simile al funzionamento della banca dati, accessibile attraverso l'oggetto dati. |
database XML | Berkeley DB XML BaseX | Efficiente memorizzazione dei dati XML e supporta la sintassi di query XML interno, come ad esempio XQuery, XPath. |