U publikua versioni 3.0 i bazës së të dhënave dokumentore Apache CouchDB

U shpall lëshimi i një baze të dhënash dokumentore të shpërndarë Apache CouchDB 3.0, që i përket klasit të sistemeve NoSQL. Kodet burimore të projektit shpërndahen nën licencën Apache 2.0.

Përmirësimet, të realizuara në Apache CouchDB 3.0:

  • Siguria e konfigurimit tĂ« parazgjedhur Ă«shtĂ« forcuar.
    Kur nisni tani, duhet të jetë gjithmonë i përcaktuar përdoruesi admin, pa të cilin serveri do të mbyllet me një gabim (kjo zgjidh problemet e nisjes së serverëve që lënë aksesi pa autentifikim). Për kërkesat për "/_all_dbs" tani kërkohen të drejtat e administratorit, ndërsa të gjithë DB-të, me parazgjedhje, krijohen të disponueshme vetëm për përdoruesin admin (parametrat e aksesit mund të ndryshohen përmes objektit "_security"). Redaktimi i objekteve në DB _users është i ndaluar me parazgjedhje;
  • Shtuar mundĂ«sia pĂ«r tĂ« krijuar DB tĂ« segmentuara (particionuara) sipas dĂ«shirs sĂ« pĂ«rdoruesit, duke lejuar pĂ«rcaktimin e rregullave pĂ«r shpĂ«rndarjen e dokumenteve sipas segmenteve (shard range). NĂ« pamjet dhe indekset Mango janĂ« shtuar optimizime speciale pĂ«r DB tĂ« segmentuara;
  • E realizuar modaliteti i ndarjes automatike gjatĂ« segmentimit (sharding). NĂ« DB tani Ă«shtĂ« e mundur tĂ« riparashtroni tĂ« dhĂ«nat sipas segmenteve duke marrĂ« parasysh rritjen e faktorĂ«ve q qĂ« pĂ«rdoren pĂ«r tĂ« pĂ«rcaktuar nivelin e ndarjes;
  • Shtuar sistemi ken pĂ«r indeksimin automatik nĂ« sfond dhe pĂ«r tĂ« mbajtur indekset dytĂ«sore (JavaScript, Mango, indekset pĂ«r kĂ«rkimin e teksteve) tĂ« pĂ«rditĂ«suara pa nisur eksplicitisht operacionet e ndĂ«rtimit tĂ« tyre;
  • Procesi smoosh Ă«shtĂ« rishkruar plotĂ«sisht, i aplikuar pĂ«r paketa automatike tĂ« DB;
  • NjĂ« nĂ«n-sistem i ri IO Queue, i aplikuar pĂ«r tĂ« ndryshuar prioritetin e hyrjes/ftyres pĂ«r operacione tĂ« caktuara;
  • Sistemi i testimit regresiv Ă«shtĂ« realizuar;
  • Shtuar mbĂ«shtetje zyrtare pĂ«r platformat arm64v8 (aarch64) dhe ppc64le (ppc64el);
  • Shtuar mbĂ«shtetje pĂ«r lidhjen me motorin JavaScript SpiderMonkey 1.8.5 (nĂ« degĂ«n ESR tĂ« Firefox 60) me mbĂ«shtetje tĂ« pĂ«rmirĂ«suar pĂ«r ES5, ES6 dhe ES2016+;
  • NĂ« pĂ«rbĂ«rje Ă«shtĂ« pĂ«rfshirĂ« motorin e kĂ«rkimit Dreyfus nĂ« bazĂ« tĂ« Lucene, qĂ« lejon tĂ« thjeshtoni ndjeshĂ«m implementimin e sistemit tĂ« kĂ«rkimit mbi bazĂ«n CouchDB;
  • Shtuar njĂ« backend pĂ«r mbajtjen e logjeve duke pĂ«rdorur systemd-journald;
  • Shtuar konfigurimin "[couchdb] single_node" qĂ«, kur instalohet, CouchDB do tĂ« krijojĂ« automatikisht DB-tĂ« sistemore nĂ«se ato nuk ekzistojnĂ«;
  • Optimizim i performancĂ«s sĂ« procesit couch_server;
  • Instaluesi pĂ«r platformĂ«n Windows Ă«shtĂ« pĂ«rmirĂ«suar ndjeshĂ«m;
  • MadhĂ«sia e pamjeve Ă«shtĂ« e kufizuar nĂ« 2^28 (268435456) rezultate. Ky kufi mund tĂ« rregullohet veçmas pĂ«r pamjet normale dhe tĂ« segmentuara pĂ«rmes opsioneve query_limit dhe partition_query_limit nĂ« seksionin "[query_server_config]";
  • NdĂ«rfaqja e veçantĂ« HTTP pĂ«r menaxhimin e nodit lokal, e cila pĂ«rmbyllej nĂ« portin 5986, funksionaliteti i sĂ« cilĂ«s tani Ă«shtĂ« i disponueshĂ«m pĂ«rmes ndĂ«rfaqes sĂ« pĂ«rbashkĂ«t tĂ« menaxhimit tĂ« klasterit;
  • MadhĂ«sia maksimale e dokumentit Ă«shtĂ« zvogĂ«luar nĂ« 8 MB, gjĂ« qĂ« mund tĂ« shkaktojĂ« probleme me replikimin e tĂ« dhĂ«nave nga serverĂ«t e vjetĂ«r pas pĂ«rditĂ«simit nĂ« CouchDB 3.0. PĂ«r tĂ« rritur kufirin mund tĂ« pĂ«rdorni konfigurimin "[couchdb] max_document_size";
  • Pastrim i madh i mundĂ«sive tĂ« vjetra, si thirrjet _replicator dhe _external, fushat disk_size dhe data_size, opsioni delayed_commits;
  • PĂ«r tĂ« nisur CouchDB tani kĂ«rkohet Erlang/OTP 20.3.8.11+, 21.2.3+ ose 22.0.5. Teorikisht, mbetet funksionale me degĂ«n Erlang/OTP 19, por ajo Ă«shtĂ« e mbuluar me teste.

TĂ« kujtojmĂ« se CouchDB ruan tĂ« dhĂ«nat nĂ« formatin e njĂ« liste tĂ« renditur dhe lejon replikimin e pjesshĂ«m tĂ« tĂ« dhĂ«nave midis disa DB nĂ« modalitetin "master-master" me zbulimin dhe zgjidhjen e situatave konfliktuale nĂ« tĂ« njĂ«jtĂ«n kohĂ«. Çdo server ruhen setin e tij lokal tĂ« tĂ« dhĂ«nave, tĂ« sinkronizuara me serverat e tjerĂ«, tĂ« cilĂ«t mund tĂ« kalojnĂ« nĂ« modalitet offline dhe tĂ« replikojnĂ« periodikisht ndryshimet. NĂ« veçanti, kjo aftĂ«si e bĂ«n CouchDB njĂ« zgjidhje tĂ«rheqĂ«se pĂ«r organizimin e sinkronizimit tĂ« konfigurimeve tĂ« programeve ndĂ«rmjet kompjuterĂ«ve tĂ« ndryshĂ«m. Zgjidhjet e bazuara nĂ« CouchDB janĂ« zbatuar nĂ« kompani si BBC, Apple dhe CERN.

Kërkesat për CouchDB dhe indeksimi i të dhënave mund të kryhen në përputhje me paralelet MapReduce, duke përdorur gjuhën JavaScript për të formuar logjikën e selektimit të të dhënave. Thelbi i sistemit është shkruar në gjuhën Erlang, e optimizuar për krijimin e shërbimeve që shërbejnë shumë kërkesa paralele të sistemeve të shpërndara. Serveri i pamjeve është shkruar në gjuhën C dhe bazohet në motorin JavaScript nga projekti Mozilla. Qasja në DB realizohet përmes protokollit HTTP duke përdorur RESTful JSON API, duke lejuar qasjen në të dhënat gjithashtu nga aplikacionet web që ekzekutohen në shfletues.

Si njësi e ruajtjes së të dhënave, shërben një dokument me një identifikues unik, version dhe që përmban një grup të çfarëdo emrash fushash në formatin çelës/vlerë. Për organizimin e një grupi të dhënash pseudo-strukturuar nga dokumente të ndryshme (agregimin dhe formimin e mostrave), përdoret koncepti i formimit të paraqitjeve (view), për definimin e të cilave përdoret gjuha JavaScript. Në JavaScript gjithashtu mund të përcaktohen funksione për të verifikuar saktësinë e të dhënave gjatë shtimit të dokumenteve të reja në kuadër të një paraqitjeje të caktuar.

Burimi: opennet.ru

Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster