Acasă Finanțe personale Administrarea datelor în NoSQL - manechine

Administrarea datelor în NoSQL - manechine

Cuprins:

Video: Web Programming - Computer Science for Business Leaders 2016 2024

Video: Web Programming - Computer Science for Business Leaders 2016 2024
Anonim

Odată ce gestionați cheile în mod corespunzător, sunteți gata să proiectați cum să stocați date cu NoSQL și să vă asigurați că este sigur și întotdeauna accesibil pentru lucrare trebuie să faceți.

Tipurile de date în magazinele cu valoare-cheie

Magazinele cu valoare-cheie acționează, de obicei, ca & ldquo; găleți & rdquo; pentru date binare. Unele baze de date oferă o scriere puternică de date interne și chiar suport pentru schemă. Alții oferă pur și simplu funcții ajutoare convenabile în driverele lor de client pentru serializarea structurilor de date comune ale aplicațiilor către un magazin cu valoare cheie. Exemplele includ hărți, liste și seturi sortate.

->

Oracle NoSQL poate funcționa în două moduri:

  • Stocare binară simplă

  • Suport extrem de structurat Avro schema

O schemă Avro este asemănătoare unei scheme baze de date relaționale - de reguli de formatare pentru datele JavaScript de obiect de notație (JSON) stocate în baza de date, așa cum este ilustrat aici:

{username: & ldquo; afowler & rdquo;, sessionid: 13452673, deoarece: 1408318745, tema: & ldquo; bluesky & rdquo;}

Definiți o schemă Avro utilizând un document JSON. Acesta este un exemplu de schemă Avro pentru datele stocate afișate anterior:

{& ldquo; tip & rdquo;: & ldquo; înregistrare & rdquo;, & ldquo; Spațiu de nume & rdquo;: & ldquo; com. exemplu & rdquo;, & ldquo; nume & rdquo;: & ldquo; UserSession & rdquo;, & ldquo; câmpuri & rdquo;: [{& ldquo; nume & rdquo;: & ldquo; numele de utilizator și rdquo;, & ldquo; tip & rdquo;: [& ldquo; string & rdquo;, & rdquo; null & rdquo;]}, {& ldquo; nume & rdquo;: & ldquo; sessionid & rdquo;, & ldquo; tip & rdquo;: & ldquo; int & rdquo;}, {& ldquo; nume & rdquo;: & ldquo; deoarece & rdquo;, & ldquo; tip & rdquo;: & ldquo; lung & rdquo;}, {& ldquo; nume & rdquo;: & ldquo; tema & rdquo;, & ldquo; tip & rdquo;: [& ldquo; string & rdquo;, & rdquo; null & rdquo;]}]}

O schemă Avro oferă o tastare foarte puternică în baza de date pentru momentul în care schema este importantă. În exemplul precedent, veți vedea date despre șir, un ID de sesiune numerică, o dată (milisecunde, de la Unix Time Epoch, ca număr întreg lung) și o setare de personalizare pentru utilizarea temei pe site.

De asemenea, observați că tipul de nume de utilizator și temă are două opțiuni - șir și null, ceea ce înseamnă că instruiți Oracle NoSQL că valorile null sunt permise. Ați fi putut lăsa tema ca șir și ați furnizat un parametru de configurare suplimentar de & ldquo; default & rdquo;: & ldquo; bluesky & rdquo;.

Alte baze de date NoSQL furnizează indici secundari asupra oricărei proprietăți arbitrare a unei valori care are conținut JSON. Riak, de exemplu, furnizează indici secundari bazați pe partiționarea documentelor - în principiu, o proprietate cunoscută într-un document JSON este indexată cu un tip.Acest lucru permite interogări de domeniu (mai mici sau mai mari decât) în plus față de comparații simple egale și nu egale. Riak reușește să furnizeze interogări de nivel fără o schemă stringentă - doar o definiție a indexului simplu. Dacă datele există, ele sunt adăugate la index.

Replicarea datelor

Stocarea mai multor copii ale acelorași date pe alte servere sau chiar servere de servere ajută la asigurarea disponibilității datelor dacă un server nu reușește. Eroarea serverului se întâmplă în primul rând în același cluster.

Aveți posibilitatea să acționați replici în două moduri principale:

  • Master-slave: Toți citirile și scrierea se întâmplă cu comandantul. Sclavii preiau și primesc cereri numai dacă comandantul eșuează.

Replicarea Master-Slave este de obicei utilizată în magazinele cu valoare-cheie compatibile cu ACID. Pentru a activa coerența maximă, magazinul principal este scris și toate replicile sunt actualizate înainte de finalizarea tranzacției. Acest mecanism este numit comitere în două faze și creează timp suplimentar pentru rețele și procesare pe replici.

  • Master-master: Citirile și scrierea se pot întâmpla la toate nodurile care gestionează o cheie. Nu există niciun concept de " primar & rdquo; proprietar de partiții.

Replicile Master Master sunt în general în cele din urmă consecvente, iar clusterul efectuează o operație automată pentru a determina cea mai recentă valoare pentru o cheie și pentru a elimina valorile vechi vechi.

În majoritatea magazinelor cu valoare cheie, acest lucru se întâmplă lent - în timpul citirii. Riak este excepția aici, deoarece are un serviciu anti-entropie care verifică consistența în timpul operațiilor normale.

Datele versiunii

Pentru a permite rezolvarea automată a conflictelor, aveți nevoie de un mecanism care să indice ultima versiune a datelor. În cele din urmă, magazinele cheie cu valoare cheie reușesc să realizeze rezolvarea conflictelor în diferite moduri.

Riak folosește un mecanism vectorial pentru a prezice copia cea mai recentă. Alte magazine de valoare-cheie utilizează simboluri de timp simple pentru a indica stalența. Atunci când conflictele nu pot fi rezolvate automat, ambele copii de date sunt trimise clientului. Datele conflictuale trimise clientului pot apărea în următoarea situație:

  1. Clientul 1 scrie în replica A 'Adam: {likes: Cheese}'.

  2. Replica A copiază datele în replica B.

  3. Clientul 1 actualizează datele despre replica A la "Adam: {likes: Cheese, urs: sunlight}".

    În acest moment, replica A nu are suficient timp pentru a copia cele mai recente date în replica B.

  4. Clientul 2 actualizează datele despre replica B la "Adam: {likes: Dogs, urs: kangaroos}".

    În acest moment, replica A și replica B sunt în conflict și grupul de baze de date nu poate rezolva automat diferențele.

Un mecanism alternativ este utilizarea timbrelor și încrederea acestora în indicarea ultimelor date. Într-o astfel de situație, este normal ca aplicația să verifice dacă timbrele au citit ultima valoare înainte de a actualiza valoarea.

Verifică pentru verificarea și setează mecanismul, care înseamnă în principiu "Dacă ultima versiune este încă versiunea 2,. Acest mecanism este denumit uneori read match match (RMU) sau read match match (RMW). Acest mecanism este mecanismul implicit folosit de Oracle NoSQL, Redis, Riak și Voldemort.

Administrarea datelor în NoSQL - manechine

Alegerea editorilor

Administrator de rețea: Zone de căutare inversă - dummies

Administrator de rețea: Zone de căutare inversă - dummies

Interogări DNS obișnuite sunt interogări de căutare înainte corespunde unui nume de domeniu complet calificat. O căutare inversă este opusul unei căutări forward: returnează numele de domeniu complet calificat al unei gazde pe baza adresei sale IP. Căutările inverse sunt posibile din cauza unui domeniu special numit ...

Rețea Elemente de bază: Clienți și servere - manechine

Rețea Elemente de bază: Clienți și servere - manechine

Computerul de rețea care conține hard disk-urile, imprimantele și alte resurse care sunt partajate cu alte calculatoare de rețea se numește un server. Acest termen vine în repetate rânduri, deci trebuie să-l amintiți. Scrie-o pe spatele mâinii tale stângi. Orice computer care nu este un server este numit client. Aveți ...

Retea Bazele: Poduri - dummies

Retea Bazele: Poduri - dummies

O punte este un dispozitiv care conecteaza doua retele astfel incat sa actioneze ca si cum ar fi o rețea. Podurile sunt utilizate pentru a împărți o rețea mare în două rețele mai mici din motive de performanță. Vă puteți gândi la un pod ca pe un repetor inteligent. Repetoarele ascultă semnale care coboară pe un cablu de rețea, amplifică ...

Alegerea editorilor

ÎMprumuta și tweak idei de la alte comunități online - dummies

ÎMprumuta și tweak idei de la alte comunități online - dummies

, Mai degrabă decât să ia ideile altcuiva complet pentru dvs. comunitate online, încercați să riffați pe aceeași idee, dar nu atât de mult încât este evident că nu sunteți creierul din spatele brainstorming-ului. Idei sunt acolo pentru a lua, dar nu ar fi mai degrabă văzute ca cineva inovatoare, nu cineva care scours pe web ...

Branding Blogul tău

Branding Blogul tău

Branding blog-ul tău merge mult spre a face dacă este ușor de recunoscut pentru cititorii tăi. Când vedeți un punct roșu în interiorul unui cerc roșu, ce magazin vine în minte? Ce zici de acele arcuri de aur? Un nume de marcă apare în minte atunci când vedeți simbolul swoosh? La fel ca magazinele populare, restaurantele și încălțămintea ...

Construiți un Blog Mama care este Sellable - dummies

Construiți un Blog Mama care este Sellable - dummies

Dacă obiectivul pe termen lung este de a vinde blogul dvs. ar trebui să o construiască cu acest scop în minte. Evitați asocierea prea intensă a blogului cu marca dvs. personală. Un blog care poate fi valoros cu orice scriitor la cârma trebuie să îndeplinească majoritatea, dacă nu toate, următoarele criterii: Blogul este concentrat ...

Alegerea editorilor

Cum să creați o nouă campanie de anunțuri LinkedIn - dummies

Cum să creați o nouă campanie de anunțuri LinkedIn - dummies

LinkedIn oferă servicii de publicitate pentru afacerea dvs. Dacă vă decideți să utilizați LinkedIn ca instrument de marketing, va trebui doar să obțineți o nouă campanie de anunțuri în lucrări. Când sunteți gata să începeți o nouă campanie, urmați acești pași:

Opțiuni de filtrare pentru anunțul dvs. LinkedIn - manechine

Opțiuni de filtrare pentru anunțul dvs. LinkedIn - manechine

Ce opțiuni de filtrare aveți pentru anunțul dvs. LinkedIn? Alte rețele de publicitate vă permit să filtrați publicul vizat de câteva atribute cunoscute ale persoanei care vă va vedea anunțul, sexul și locația membrilor din public. LinkedIn vă permite să faceți un pas mai departe permițându-vă ...

Oferind și primind viziuni pe LinkedIn - manechine

Oferind și primind viziuni pe LinkedIn - manechine

Deși mulți oameni cred că "Nu este ceea ce știi, știi, "care este unul dintre principalele motive pentru care LinkedIn este atât de valoros, mulți oameni (recrutorii, angajații, directorii executivi, investitorii și altele) sunt foarte interesați de ceea ce știi. În mod logic, oamenii care vă cunosc cel mai bine sunt oamenii din rețeaua dvs., care ...