Video: Web Programming - Computer Science for Business Leaders 2016 2024
O caracteristică comună a sistemelor NoSQL este capacitatea lor de a scala pe mai multe servere de mărfuri. Aceste platforme relativ ieftine înseamnă că puteți să scalați bazele de date prin adăugarea unui server nou, în loc să înlocuiți hardware-ul vechi cu un hardware nou, mai puternic într-o singură fotografie.
Există cazuri de utilizare cu volum mare care vă vor forța rapid să vă scutești. Acestea includ
-
Veți primi rapoarte de stare și mesaje de jurnal de pe un peisaj IT. Acest scenariu necesită perioade rapide de ingerare, dar probabil nu necesită suport avansat de analiză.
-
Doriți caching de mare viteză pentru interogări complexe. Poate doriți să obțineți ultimele știri de pe un site web. Aici, citiți cache-urile să precizeze interogarea sau viteza de ingerare.
Singurul lucru comun pentru performanța tuturor bazelor de date NoSQL este că nu vă puteți baza pe datele publicate - nici unul dintre ele - pentru a afla care este probabilitatea ca performanța să fie pe datele dvs., pentru cazul dvs. de utilizare proprie.
Cu siguranta nu poti sa te bazezi pe promisiunea unui furnizor de baza de date cu privire la performanta! Mulți furnizori citează viteze ridicate de ingerare împotriva unui caz de utilizare artificială care nu este o utilizare realistă a bazei lor de date, ca dovadă a supremației bazei lor de date.
Cu toate acestea, problema este că aceleași studii pot ignora total viteza de interogare. Care este motivul pentru stocarea datelor dacă nu le folosiți niciodată?
Aceste studii se pot face, de asemenea, pe sisteme în care funcțiile cheie sunt dezactivate. Este posibil ca indicii de securitate să nu fie activați sau, probabil, suportul tranzacțiilor ACID să fie dezactivat în timpul studiului, astfel încât datele să fie stocate rapid, dar nu există nicio garanție că este sigur.
Acest lucru înseamnă că trebuie să faceți propriile dvs. teste, ceea ce este destul de ușor, dar asigurați-vă că testul este cât mai aproape posibil de sistemul dvs. final. De exemplu, nu are nici un rost să testați un singur server dacă intenționați să scalați la 20 de servere. În special, asigurați-vă că aveți o combinație precisă de ingerare, modificare și interogare a datelor.
Luați în considerare întrebarea furnizorului dvs. de NoSQL următoarele întrebări:
-
Puteți să vă asigurați că toate cifrele de dimensionare și performanță citate sunt pentru sistemele care asigură tranzacțiile ACID în timpul ingerării care susțin indexarea în timp real și care includ un amestec realist de ingerare și citire / cereri de interogare?
-
Oferă produsul dvs. funcții care ușurează creșterea capacității unui server?
-
Oferă produsul dvs. funcții care ușurează eliminarea capacității serverului neutilizate?
-
Viteza de date a produsului dvs. este limitată de numărul de informații care trebuie stocate în memoria RAM?
-
Utilizează produsul dvs. o strategie de hartă a memoriei care necesită menținerea tuturor indexurilor în memorie RAM pentru o performanță adecvată (maparea memoriei înseamnă cantitatea maximă de date stocate este aceeași cu cantitatea de RAM fizică instalată)?
-
Este posibil ca baza dvs. de date să mențină timpii de răspuns secundar de interogare în timp ce primesc actualizări de înaltă frecvență?
-
Sistemul se asigură că nu este necesar un timp de nefuncționare pentru a adăuga sau a elimina capacitatea serverului?
-
Sistemul asigură că informațiile sunt imediat disponibile pentru interogare după ce acestea sunt adăugate la baza de date?
-
Sistemul asigură faptul că securitatea datelor este menținută fără a afecta negativ viteza interogării?
-
Sistemul asigură că capabilitățile de scalare și scalare ale bazei de date sunt scriptabile și că se vor integra în software-ul de furnizare a serverului dvs. (de exemplu, VMWare și Amazon Cloud Formation)?