aggregation mongodb
Pregled združevanja v MongoDB:
Preverjanje pristnosti v MongoDB je bilo podrobno razloženo v naši prejšnji vadnici v tem Podrobna serija treningov MongoDB .
V tej vadnici bomo izvedeli več o združevanju v MongoDB.
Z enostavnimi besedami združevanje pomeni združevanje različnih virov informacij in zagotavljanje najbolj verodostojnega zapisa. V MongoDB gre za postopek preverjanja veljavnosti informacij iz druge zbirke in v zameno zagotavlja en sam zapis.
Na zbranih podatkih se izvajajo različne operacije za pridobivanje samo veljavnih informacij.
V MongoDB so na voljo tri vrste združevanja, kot je prikazano spodaj:
- Cevovod za zbiranje
- Zemljevid Zmanjšaj
- Združevanje za en namen
Kaj se boste naučili:
Cevovod za zbiranje
Agregacijski okvir v MongoDB je razvit na konceptu cevovodov za obdelavo podatkov. V tem cevovodu se na dokumentu, ki je vnesen v cevovod, uporabi niz različnih funkcij za seštevanje končnega rezultata.
V bistvu se na katerem koli dokumentu znotraj cevovoda izvedeta dve operaciji. Najprej se zapisi filtrirajo tako, kot se izvajajo poizvedbe, v drugi fazi pa pretvorba dokumenta spremeni vrsto za izhodni namen.
Po drugi strani pa se postopki cevovodov uporabljajo tudi za razvrščanje, združevanje, združevanje in združevanje nizov in nizov dokumenta. Nekako lahko tudi cevovode uporabimo za povzemanje vsebine ali za izračun povprečja in združevanja zapisa.
Koda
vprašanja in odgovori za kakovostne analitike
db.orders.aggregate(({$match:{status:'A'}},{$group:{_id:'$cust_id', total:{$sum:'$amount'}}}))Slika 1: V školjki Mongo

Slika 2: V Robo 3T

Slika 3

Zemljevid Zmanjšaj
MongoDB za namene združevanja ponuja tudi funkcijo Map Reduce. Na splošno obstajata dve fazi Map Reduce. V prvi fazi se vsak dokument obdela in odda skupni in odvečni del dokumenta, da prenese edinstven zapis za naslednjo fazo.
V drugi fazi se vsi unikatni deli združijo in združijo, da dobijo en sam rezultat. Map Reduce omogoča tudi razvrščanje, filtriranje in spreminjanje dokumentov.
Koda
db.orders.mapReduce(function(){emit(this.cust_id,this.amount);}, function(key,values){return Array.sum(values)},{query:{status:'A'},out: 'order_totals'}).find()Slika 4: V školjki Mongo

Slika 5: V Robo 3T

Slika 6

Združevanje za en namen
V združevanju z enim namenom se za izračun rezultata uporabi samo en filter. Z enostavnimi besedami, če moramo združiti celotno zbirko na podlagi enega filtra, potem moramo uporabiti enonamenske operacije združevanja.
V MongoDB imamo tri vrste postopkov združevanja za eno filtracijo:
- db.collection.estimatedDocumentCount ()
- db.collection.count ()
- db.collection.distinct ()
Vse zgoraj navedene operacije se uporabljajo za enotno združevanje. Te operacije omogočajo preprost nadzor dostopa do običajnih procesov združevanja. Te operacije ne bodo omogočile obsežnega filtriranja in razvrščanja tako kot agregacijski cevovod in Map Reduce.
linux najti razliko med dvema datotekama
Koda
db.orders.distinct('cust_id')Slika 7: V školjki Mongo

Slika 8: V Robo 3T

Slika 9

Zaključek
Združevanje je postopek zbiranja informacij za zagotovitev povprečnega rezultata. Uporablja se tudi v analitične namene. V tej vadnici smo spoznali tri vrste združevanja, ki so na voljo v MongoDB za obdelavo informacij.
MongoDB nam ponuja tudi metodo zmanjševanja zemljevidov, ki se uporablja za zbiranje ogromnih informacij. Map Reduce se večinoma uporablja za velike podatke. Vse te metodologije združevanja se uporabljajo na podlagi stanja zapisov in dobljenih vrednosti.
V naši prihajajoči vadnici bomo podrobno spoznali Projekcijo v MongoDB.
PREV Vadnica | NASLEDNJA Vadnica
Priporočeno branje
- Preverjanje pristnosti uporabnika v MongoDB
- MongoDB projekcija s primerom
- 20+ MongoDB vadnica za začetnike: brezplačen tečaj MongoDB
- MongoDB Ustvari varnostno kopijo baze podatkov
- Kaj je replikacija MongoDB
- MongoDB Vadnica za ustvarjanje zbirke podatkov
- MongoDB Vadnica za osenčenje s primerom
- MongoDB Regularni izraz $ regex s primerom