Mis on killustamine MongoDB-s?
Sharding on MongoDB mõiste, mis jagab suured andmekogumid väikesteks andmekogumiteks mitme MongoDB eksemplari vahel.
Mõnikord on MongoDB-s olevad andmed nii suured, et päringud selliste suurte andmekogumite vastu võivad põhjustada serveris palju protsessori kasutamist. Selle olukorra lahendamiseks on MongoDB-l kontseptsioon Sharding, mis on põhimõtteliselt andmekogumite jagamine mitme MongoDB-i eksemplari vahel.
Kogumik, mis võib olla suur, on tegelikult jaotatud mitme kollektsiooni või kildude vahel, nagu neid nimetatakse. Kõik killud töötavad loogiliselt ühe kollektsioonina.
Kuidas rakendada killustumist
Shardid rakendatakse klastrite abil, mis pole muud kui rühm MongoDB eksemplare.
Shard komponentide hulka kuuluvad
- Kild - see on põhiline asi ja see pole midagi muud kui MongoDB eksemplar, mis hoiab andmete alamhulka. Tootmiskeskkondades peavad kõik killud kuuluma koopiate komplektidesse.
- Config server - see on mongodb-eksemplar, mis hoiab klastri kohta metaandmeid, põhimõtteliselt teavet erinevate mongodb-i eksemplaride kohta, mis hoiavad killukest.
- Ruuter - see on mongodb-eksemplar, mis põhiliselt vastutab kliendi poolt saadetud käskude õigete serverite suunamise eest.
Klastrinäite killustamine samm-sammult
Samm 1) Looge konfiguratsiooniserveri jaoks eraldi andmebaas.
mkdir /data/configdb
2. samm. Käivitage mongodb-eksemplar konfiguratsioonirežiimis. Oletame, et kui meil on server nimega Server D, mis oleks meie konfiguratsiooniserver, peaksime serveri konfigureerimisserverina konfigureerimiseks käivitama järgmise käsu.
mongod -configdb ServerD: 27019
Samm 3) Käivitage mongos-eksemplar, määrates konfiguratsiooniserveri
mongos -configdb ServerD: 27019
Samm 4) Ühendage mongo kest mongo eksemplariga
mongo -host ServerD -port 27017
Samm 5) Kui teil on server A ja Server B, mis tuleb klastrisse lisada, väljastage järgmised käsud
sh.addShard("ServerA:27017")sh.addShard("ServerB:27017")
6. samm. Lubage andmebaasi killustamine. Nii et kui peame Employeedbi andmebaasi tükeldama, väljastage järgmine käsk
sh.enableSharding(Employeedb)
Samm 7) Luba kollektsiooni tükeldamine. Nii et kui meil on vaja killustada töötajat, väljastage järgmine käsk
Sh.shardCollection("db.Employee" , { "Employeeid" : 1 , "EmployeeName" : 1})
Kokkuvõte:
- Nagu õpetuses selgitatud, on Sharding MongoDB mõiste, mis jagab suured andmekogumid väikesteks andmekogumiteks mitme MongoDB eksemplari vahel.