MongoDB Jakaminen: Vaiheittainen opetusohjelma esimerkin kanssa
Mikä on Sharding in MongoDB?
Jakaminen on käsite MongoDB, joka jakaa suuret tietojoukot pieniksi tietojoukoiksi useille MongoDB tapauksissa.
Joskus tiedot sisällä MongoDB tulee olemaan niin suuri, että kyselyt tällaisia suuria tietojoukkoja vastaan voivat aiheuttaa paljon prosessorin käyttöä palvelimella. Tämän tilanteen ratkaisemiseksi MongoDB on käsite Sharding, joka on pohjimmiltaan tietojoukkojen jakamista useisiin MongoDB tapauksissa.
Kokoelma, joka voi olla suuri, on itse asiassa jaettu useisiin kokoelmiin tai sirpaloihin, kuten niitä kutsutaan. Loogisesti kaikki sirpaleet toimivat yhtenä kokoelmana.
Jakamisen toteuttaminen
Sirpaleet toteutetaan käyttämällä klustereita, jotka ovat vain ryhmä MongoDB tapauksissa.
Sirun osia ovat mm
- Sirpale – Tämä on perusasia, eikä tämä ole muuta kuin a MongoDB ilmentymä, joka sisältää datan osajoukon. Tuotantoympäristöissä kaikkien sirpaleiden on oltava osa replikasarjoja.
- Konfigurointipalvelin – Tämä on mongodb-esiintymä, joka sisältää metatietoja klusterista, periaatteessa tietoa eri mongodb-esiintymistä, jotka sisältävät sirpaletietoja.
- Reititin – Tämä on mongodb-esiintymä, joka on periaatteessa vastuussa asiakkaan lähettämien komentojen ohjaamisesta oikeille palvelimille.
Jakaminen askel askeleelta Cluster esimerkki
Vaihe 1) Luo erillinen tietokanta konfigurointipalvelimelle.
mkdir /data/configdb
Vaihe 2) Käynnistä mongodb-ilmentymä määritystilassa. Oletetaan, että jos meillä on palvelin nimeltä Palvelin D, joka olisi määrityspalvelimemme, meidän on suoritettava alla oleva komento määrittääksemme palvelimen määrityspalvelimeksi.
mongod –configdb ServerD: 27019
Vaihe 3) Käynnistä mongos-instanssi määrittämällä määrityspalvelin
mongos –configdb ServerD: 27019
Vaihe 4) Yhdistä mongo-kuoresta mongon instanssiin
mongo –host ServerD –port 27017
Vaihe 5) Jos sinulla on palvelin A ja palvelin, jotka on lisättävä klusteriin, anna alla olevat komennot
sh.addShard("ServerA:27017") sh.addShard("ServerB:27017")
Vaihe 6) Ota tietokannan jakaminen käyttöön. Joten jos meidän on murrettava Employeedb-tietokanta, anna alla oleva komento
sh.enableSharding(Employeedb)
Vaihe 7) Ota kokoelman jakaminen käyttöön. Joten jos meidän on purettava työntekijäkokoelma, anna alla oleva komento
Sh.shardCollection("db.Employee" , { "Employeeid" : 1 , "EmployeeName" : 1})
Yhteenveto:
- Kuten on selitetty oppitunti, Sharding on käsite MongoDB, joka jakaa suuret tietojoukot pieniksi tietojoukoiksi useille MongoDB tapauksissa.