MongoDB Jagamine: samm-sammult õpetus koos näitega

Mis on Sharding in MongoDB?

Jagamine on mõiste MongoDB, mis jagab suured andmekogumid mitmeks väikeseks andmekogumiks MongoDB juhtumeid.

Mõnikord andmed sees MongoDB on nii suur, et selliste suurte andmekogumite päringud võivad põhjustada serveris palju protsessorit. Selle olukorra lahendamiseks MongoDB sisaldab jagamise kontseptsiooni, mis on põhimõtteliselt andmekogumite jagamine mitmeks MongoDB juhtumeid.

Kollektsioon, mis võib olla suur, on tegelikult jagatud mitmeks kollektsiooniks või killuks, nagu neid nimetatakse. Loogiliselt töötavad kõik killud ühe kollektsioonina.

Kuidas jagamist rakendada

Killud rakendatakse klastrite abil, mis pole muud kui rühm MongoDB juhtumeid.

Killu komponendid hõlmavad

  1. Kild – See on põhiline asi ja see pole midagi muud kui a MongoDB eksemplar, mis sisaldab andmete alamhulka. Tootmiskeskkondades peavad kõik killud olema koopiakomplektide osad.
  2. Konfiguratsiooniserver - See on mongodb-i eksemplar, mis sisaldab klastri metaandmeid, põhiliselt teavet erinevate mongodb-juhtumite kohta, mis hoiavad killuandmeid.
  3. Ruuter - See on mongodb eksemplar, mis põhiliselt vastutab kliendi saadetud käskude õigetesse serveritesse suunamise eest.

Samm-sammult jagamine Cluster Näide

Step 1) Looge konfiguratsiooniserveri jaoks eraldi andmebaas.

mkdir /data/configdb

Step 2) Käivitage mongodb eksemplar konfiguratsioonirežiimis. Oletame, et kui meil on server nimega Server D, mis oleks meie konfiguratsiooniserver, peaksime serveri konfiguratsiooniserverina konfigureerimiseks käivitama alloleva käsu.

mongod –configdb ServerD: 27019

Step 3) Käivitage mongose ​​eksemplar, määrates konfiguratsiooniserveri

mongos –configdb ServerD: 27019

Step 4) Mongo kestast looge ühendus mongo eksemplariga

mongo –host ServerD –port 27017

Step 5) Kui teil on server A ja server B, mis tuleb klastrisse lisada, andke välja järgmised käsud

sh.addShard("ServerA:27017")
sh.addShard("ServerB:27017")

Step 6) Luba andmebaasi jagamine. Nii et kui meil on vaja Employeedb andmebaasi killustada, andke allolev käsk

sh.enableSharding(Employeedb)

Step 7) Luba kogu jaoks jagamine. Nii et kui meil on vaja töötajate kollektsiooni killustada, andke allolev käsk

Sh.shardCollection("db.Employee" , { "Employeeid" : 1 , "EmployeeName" : 1})

Kokkuvõte:

  • Nagu on selgitatud juhendaja, Sharing on mõiste MongoDB, mis jagab suured andmekogumid mitmeks väikeseks andmekogumiks MongoDB juhtumeid.