Cuprins:
- Schimbarea motoarelor de stocare
- Voldemort are o memorie cache încorporată în memorie, ceea ce scade sarcina pe motorul de stocare și crește performanța interogării. Nu este nevoie să utilizați un strat separat de cache, cum ar fi Redis sau coerența Java a aplicației cache de date pentru aplicații Java deasupra.
- În cărțile
Video: Microsoft Azure OpenDev—June 2017 2024
Există momente când doriți să furnizați acces la viteze de tip cheie-valoare la date deținute într-o bază de date relațională. Această bază de date ar putea fi, de exemplu, Berkeley DB (Java Edition pentru Voldemort) sau MySQL.
Furnizarea unei valori cheie, cum ar fi accesul la date, necesită o salvare a unei valori-cheie pentru a fi stratificată direct peste una dintre aceste alte baze de date. În principiu, utilizați o altă bază de date ca strat de stocare, mai degrabă decât o combinație a unui sistem de fișiere pentru stocare și o conductă de ingestie pentru copierea datelor dintr-o bază de date relațională.
Acest proces simplifică furnizarea unui magazin de mare viteză cu valoare cheie în timp ce utilizați o bază de date tradițională relațională pentru stocare.
Schimbarea motoarelor de stocare
Diferitele încărcări de lucru necesită diferite motoare de stocare și caracteristici de performanță. Aerospike este excelent pentru consumul ridicat; Redis este mare pentru un număr mare de citiri. Fiecare este construită în jurul unui caz specific de utilizare.
Voldemort are o abordare diferită. Mai degrabă decât tratarea magazinului cheie-valoare ca nivel separat de gestionare a datelor, Voldemort tratează magazia cheie-valoare ca un API și adaugă un strat de cache în memorie, ceea ce înseamnă că puteți conecta la spatele care are cel mai mult sens pentru nevoile dvs. speciale.
Dacă doriți un nivel simplu de stocare pe disc, puteți utiliza motorul de stocare Berkeley DB Java Edition. Dacă, în schimb, doriți să stocați date relaționale, puteți folosi MySQL ca un back-end pentru Voldemort.
Această caracteristică, combinată cu tipurile personalizate de date, vă permite să utilizați un API simplu de stocare / recuperare a magazinului cheie pentru a trage înapoi și a cache în mod direct informații într-un alt magazin back-end.
Cache date în memorieVoldemort are o memorie cache încorporată în memorie, ceea ce scade sarcina pe motorul de stocare și crește performanța interogării. Nu este nevoie să utilizați un strat separat de cache, cum ar fi Redis sau coerența Java a aplicației cache de date pentru aplicații Java deasupra.
Capacitatea de a asigura stocarea de mare viteză cu cache-ul este motivul pentru care LinkedIn utilizează Voldemort pentru anumite cazuri de utilizare de înaltă performanță.
Cu Voldemort, beneficiați de cele mai bune din ambele lumi - un motor de stocare pentru cerințele dvs. exacte de date și o memorie cache în memorie de mare viteză pentru a reduce sarcina pe acel motor.Obțineți, de asemenea, o valoare simplă de stocare / valorificare a semanticii de magazin de chei în partea superioară a motorului dvs. de stocare.
Evaluarea lui Voldemort
În cărțile
Harry Potter , Lordul Voldemort a ținut o mulțime de magie în el, atât bune, cât și rele, deși el a folosit-o pentru terorizarea mugolelor. Baza de date Voldemort, după cum se dovedește, poate stoca, de asemenea, cantități mari de date, dar poate fi folosită pentru bine de către magicienii de date peste tot! Voldemort este încă un produs în curs de dezvoltare. Multe bucăți sunt încă lipsite, deci nu suportă varietatea de motoare de stocare pe care le-ați putea aștepta. Acest obiectiv pentru comunitatea de dezvoltare a lui Voldemort este probabil datorită faptului că Voldemort este construit în limbajul de programare Java, care necesită construirea unui conector Java Interface (JNI) pentru integrarea în majoritatea bazelor de date C sau C ++.
Voldemort are o bună integrare cu cadrele de serializare. Cadrele acceptate includ serializarea Java, Avro, Thrift și Buffer-urile de protocol. Aceasta înseamnă că pachetele API furnizate se potrivesc cu metoda de serializare cunoscută a fiecărui limbaj de programare, făcând dezvoltarea aplicațiilor intuitivă.
Voldemort nu se ocupă de consistență, precum și de alte sisteme. Voldemort utilizează abordarea
read repair , unde numerele de versiune inconsistente pentru aceeași înregistrare sunt fixate la timpul de citire, mai degrabă decât să fie păstrate consecvent la timpul de scriere. Nu există nici o indexare secundară sau suport de interogare; Voldemort vă așteaptă să utilizați facilitățile motorului de stocare de bază pentru a face față acestui caz de utilizare. De asemenea, Voldemort nu are declanșatoare de baze de date native sau un cadru de alertare sau procesare a evenimentelor cu care să construiască unul.
Dacă aveți nevoie de un magazin cu valoare cheie, care este foarte disponibil, este tolerant la partiție, rulează în Java și folosește diferite capete de stocare, atunci Voldemort poate fi pentru dvs.