Acasă Finanțe personale Acces la cheie de mare viteză cu NoSQL - dummies

Acces la cheie de mare viteză cu NoSQL - dummies

Cuprins:

Video: Cum se deschide o usa de Mercedes sprinter fara cheie 2024

Video: Cum se deschide o usa de Mercedes sprinter fara cheie 2024
Anonim

Magazinele de valoare-cheie din NoSQL se referă la viteză. Puteți utiliza diferite tehnici pentru a maximiza viteza respectivă, de la datele cache, până la copiile multiple ale datelor sau utilizând cele mai adecvate structuri de stocare.

Date cache în memorie

Deoarece datele sunt ușor accesate atunci când sunt stocate în memorie cu acces aleatoriu (RAM), alegerea unui depozit cheie-valoare care stochează date în RAM poate accelera semnificativ accesul la date, de costuri mai mari ale serverului.

Deseori, acest compromis merită făcut. Puteți calcula cu ușurință procentajul datelor stocate solicitate frecvent. Dacă știți că cinci procente sunt în general solicitate la fiecare câteva minute, atunci luați cinci la sută din dimensiunea datelor și adăugați acel număr ca spațiu de rezervă RAM pe serverele de bază de date.

Țineți cont de faptul că sistemul de operare, alte aplicații și serverul de bază de date au și cerințe de memorie.

Replicarea datelor la sclavi

În magazinele cu valoare cheie, o cheie particulară este stocată pe unul dintre serverele din cluster. Acest proces se numește partiție cheie . Aceasta înseamnă că, dacă această cheie este solicitată constant, acest nod va primi cea mai mare parte a cererilor. Acest nod, prin urmare, va fi mai lent decât viteza medie a solicitării, afectând potențial calitatea serviciilor pentru utilizatorii dvs.

Pentru a evita această situație, unele magazine cu valoare cheie acceptă adăugarea de replici numai citite, numite și sclavi. Redis, Riak și Aerospike sunt exemple bune. Replicarea permite ca cheia să fie stocată de mai multe ori pe mai multe servere, ceea ce crește viteza de răspuns, dar costă mai mult hardware.

Unele magazine de valoare-cheie garantează că replicile cheii vor avea întotdeauna aceeași valoare ca și masterul. Această garanție se numește a fi pe deplin consecventă. Dacă se întâmplă o actualizare pe serverul principal care deține cheia, toate replicile sunt garantate că sunt actualizate.

Nu toate magazinele cu valoare cheie garantează această stare (de exemplu, Riak), deci dacă este important să fii actualizat la milisecundă, alegeți o bază de date ale cărei replici sunt pe deplin consistente (cum ar fi Aerospike).

Modelarea datelor în magazinele cu valoare-cheie

Multe magazine de valoare-cheie suportă doar structurile de bază pentru tipurile de valori ale acestora, lăsând programatorului aplicației sarcina de a interpreta datele. Suportul de tip simplu de date include, de obicei, șiruri, numere întregi, JSON și valori binare.

Pentru multe cazuri de utilizare, acest lucru funcționează bine, dar uneori este util un acces ușor mai granular la date.Redis, de exemplu, acceptă următoarele tipuri de valori de date:

  • String

  • Listă

  • Set

  • Seturi sortate

  • Hash hărți

  • Arrayuri bit

  • fi interogat pentru potrivirea intervalelor de valori - la fel ca și interogarea unui index de valori sortate după dată, ceea ce este foarte util pentru căutarea unui subset de date tipizate.

Operarea pe date

Redis include operații pentru incrementarea și diminuarea directă a valorilor cheie, fără a fi nevoie să faceți un set de pași de actualizare a citirii-modificări-actualizare (RMU). Puteți face acest lucru într-o singură tranzacție pentru a vă asigura că nicio altă aplicație nu modifică valoarea în timpul unei actualizări. Aceste operațiuni specifice de tip de date includ adăugarea și eliminarea elementelor în liste și seturi.

Aveți posibilitatea să furnizați chiar funcționalități de completare automată pe interfața de utilizator a unei aplicații folosind comanda Redis ZRANGEBYLEX. Această comandă preia un set de chei care se potrivește parțial unui șir. Deci, dacă ați tastat "NoSQL pentru" în bara de căutare a unei aplicații construite pe Redis, ați vedea sugestia "NoSQL For Dummies. "

Evaluarea Redis

Redis se mândrește cu faptul că este un magazin cu valoare cheie foarte ușoară, dar rapidă. Acesta a fost inițial conceput pentru a fi un magazin în memorie cheie-valoare, dar acum se mândrește cu stocarea de date pe disc.

Aveți posibilitatea să utilizați Redis pentru a salva date prin activarea modului AOF (adăugați numai fișier) și instruindu-l pe Redis să forțeze datele pe disc la fiecare interogare (cunoscută sub numele de forțat

fsync flushing ). AOF nu încetinește să scrie, desigur, dar oferă un nivel mai ridicat de durabilitate a datelor. Fiți conștienți, totuși, că este încă posibil să pierdeți până la o secundă de comenzi. De asemenea, Redis a adăugat recent doar suport pentru grupare. De fapt, la momentul acestei scrieri, suportul de grupare Redis se află în faza de testare beta. Din fericire, Redis folosește un model de cluster partajat, cu stăpâni pentru anumite chei și sclavi care nu sunt direct scrise de către un client; numai maestrul face acest lucru. Asigurarea clusterizării partajate nu ar trebui să facă mai ușor pentru Redis implementarea clusterizării fiabile decât pentru bazele de date care permit scrierea tuturor replicilor.

Dacă doriți un strat de cache în memorie foarte rapid, în fața unei alte baze de date - MongoDB sau Riak sunt utilizate frecvent cu Redis - apoi evaluați Redis ca opțiune. Dat fiind că suportul pentru clustering și durabilitatea datelor evoluează, probabil Redis poate depăși alte baze de date back-end.

Acces la cheie de mare viteză cu NoSQL - dummies

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 ...