Microsoft esanda kukhululwa izinga lesizindalwazi somthombo ovulekile elisuselwe ku-PostgreSQL. I-DocumentDB iyinkundla yesizindalwazi sedokhumenti engumthombo ovuleke ngokuphelele njengoba ikhishwa ngaphansi kwelayisensi ye-MIT.
Isizindalwazi sombhalo wuhlobo lwesizindalwazi se-NoSQL esihloselwe ukugcina, ukubuyisa, nokuphatha idatha ngendlela yemibhalo. Lawa madokhumenti akhiwe ngamafomethi afana ne-JSON, BSON, XML noma i-parcidos. Lolu hlobo lwedathabheyisi luhlukile kusizindalwazi esihlobene (SQL) ngoba alusebenzisi amathebula anemigqa namakholomu, ngenxa yokuthi bahlela idatha njengamadokhumenti azimele, lokhu kuphumela kulwazi oluguquguqukayo kakhulu nolunwebekayo.
IMicrosoft ikhipha indinganiso yesizindalwazi somthombo ovulekile
Inkundla entsha ye-Microsoft ivumela abathuthukisi ukuthi babe nezinga elihlanganisa amandla esizindalwazi se-NoSQL kanye nokuguquguquka kwe-PostgreSQL. I-Microsoft ithembisa ukuthi ayikho imikhawulo efihliwe noma izindleko ezengeziwe. Bazokwazi ukuhlanganisa i-DocumentDB, bayilungise noma bayenze ngendlela oyifisayo ezinhlelweni zabo zokusebenza.
Ukuthuthukisa ukugcinwa kwedatha nokusebenza. I-DocumentDB yakhelwe phezu kwezingxenye ezimbili eziyinhloko:
pg_documentdb_core
Lesi sandiso sangokwezifiso se-PostgreSQL sivumela umsebenzisi ukuthi asebenze ngefomethi yedatha ye-BSON (Binary JavaScript Object Notation), esetshenziswa kakhulu kulolu hlobo lwedathabheyisi. Ngalesi sandiso ungakwazi:
- Ihlinzeka ngosekelo lokuphathwa kwedokhumenti ye-BSON ethuthukisiwe, okuhlanganisa nezakhiwo ezifakwe ngokujulile.
- Isekela izinkomba eziningi: ezilula, eziyinhlanganisela, i-multifield, umbhalo kanye ne-geospatial (esekelwa isandiso se-PostGIS).
- Inika amandla imibuzo yosesho lwe-vector esetshenziswa ezinhlelweni ezikhiqizayo zobuhlakani bokwenziwa, ukukhwabanisa nokutholwa okudidayo, ukusesha okufanayo, nezinhlelo zokuncoma ku-e-commerce kanye nezinhlelo zokusebenza zokucubungula ulimi lwemvelo.
pg_documentdb_ap
Ngale mojula singasebenzisa imisebenzi ebalulekile ye-NoSQL njenge-CRUD kanye nezici zokukhomba ezithuthukile. Ngakolunye uhlangothi, ihlanganisa indlela yokuqinisekisa esekelwe ku-SCRAM (I-Salted Challenge Response Authentication Mechanism) ukuze kuqiniswe ukuvikeleka kwesizindalwazi.
Ake sichaze imigomo:
I-CRUD
I-CRUD isifinyezo esisetshenziswa ukuchaza imisebenzi emine eyisisekelo eyenziwa kudatha:
- Dala: Umsebenzi wokwengeza idokhumenti entsha kusizindalwazi.
- Funda): Umsebenzi wokubuyisa idokhumenti kusizindalwazi.
- Isibuyekezo: Umsebenzi wokulungisa isizindalwazi.
- Susa: Umsebenzi lapho idokhumenti isuswa khona kusizindalwazi.
I-SCRAM
Indlela yokuqinisekisa ye-SCRAM iqukethe iphrothokholi yokuqinisekisa evikelekile eklanyelwe ukwenza kube lula ukushintshisana ngemininingwane phakathi kweseva neklayenti., ukunciphisa ubungozi bokuvezwa kwephasiwedi kanye nokuqinisekisa ukuthi amagama ayimfihlo awathunyelwa ngokuqondile kusetshenziswa inethiwekhi kodwa aqale acutshungulwe kusetshenziswa amasu okubhala.
Uyivivinya kanjani i-DocumentDB?
Onjiniyela abafuna ukusebenza ngale nkundla bangalanda ikhodi yomthombo endaweni yokugcina esemthethweni ku-GitHub. Enye indlela ukufaka usebenzisa i-Docker noma ezinye izindlela zokumisa indawo yendawo engatholakala kusixhumanisi esisekuqaleni kwesihloko. Ngaphezu kwalokho, kungenzeka ukubamba iqhaza ezingxoxweni ezimayelana nomklamo futhi ufake isandla kuphrojekthi futhi uthole ulwazi olusha ngeziteshi ze-Discord.
Kubasebenzisi abadinga indawo elungele ukusetshenziswa, bangahlanganisa kalula i-DocumentDB neFerretDB, okuphinde kube yisixazululo sedokhumenti yomthombo ovulekile futhi sisekelwe enjinini ye-DocumentDB. I-FerretDB ine-interface esebenzisa iphrothokholi yesizindalwazi sedokhumenti futhi yakhelwe ukuhlinzeka ngolwazi lwe-NoSQL ngaphandle kokuba nolwazi lwe-PostgreSQL.
Ngaphandle kokungabaza, ukuzibophezela okukhulu kweMicrosoft wukuzama ukwenza iDocumentDB ibe indinganiso evulekile yolwazi lwemibhalo. Iphrojekthi eyokuthi i-DocumentDB ilingane nezinga le-ANSI lemininingwane yolwazi yobudlelwano. Umgomo uwukunciphisa umehluko phakathi kokusetshenziswa kwesizindalwazi se-NoSQL futhi udale umuzwa ongaguquguquki konjiniyela.