МонгоДБ осенчење: Водич корак по корак са примером

Преглед садржаја:

Anonim

Шта је Схардинг у МонгоДБ-у?

Схардинг је концепт у МонгоДБ-у, који дели велике скупове података на мале скупове података у више инстанци МонгоДБ-а.

Понекад ће подаци у МонгоДБ-у бити толико огромни да упити према тако великим скуповима података могу проузроковати пуно искоришћења процесора на серверу. Да би се изборио са овом ситуацијом, МонгоДБ има концепт Схардинг, који је у основи подјела скупова података на више инстанци МонгоДБ.

Колекција која може бити велике величине заправо је подељена на више колекција или Схардс како се називају. Логично је да све крхотине делују као једна колекција.

Како применити осенчење

Крхотине се примењују помоћу кластера који нису ништа друго до група МонгоДБ инстанци.

Компоненте крхотине укључују

  1. Крхотина - Ово је основна ствар, а ово није ништа друго него инстанца МонгоДБ која садржи подскуп података. У производном окружењу, све крхотине морају бити део комплета реплика.
  2. Сервер за конфигурисање - Ово је инстанца монгодб која садржи метаподатке о кластеру, у основи информације о разним инстанцама монгодб-а које ће садржати податке о крхотинама.
  3. Рутер - Ово је монгодб инстанца која је у основи одговорна за преусмеравање команди које клијент шаље на праве сервере.

Пример кластера осенчавања корак по корак

Корак 1) Креирајте засебну базу података за конфигурациони сервер.

mkdir /data/configdb

Корак 2) Покрените инстанцу монгодб у режиму конфигурације. Претпоставимо да ако имамо сервер назван Сервер Д који би био наш конфигурациони сервер, морали бисмо да покренемо наредбу испод да бисмо конфигурисали сервер као конфигурациони сервер.

mongod -configdb ServerD: 27019

Корак 3) Покрените инстанцу монгос наводећи конфигурациони сервер

mongos -configdb ServerD: 27019

Корак 4) Из монго љуске повежите се са инстанцом монго

mongo -host ServerD -port 27017

Корак 5) Ако имате Сервер А и Сервер Б који треба додати у кластер, издајте наредбе у наставку

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

Корак 6) Омогућите осенчење за базу података. Дакле, ако треба да делимо базу података Емплоиеедб, издајте наредбу у наставку

sh.enableSharding(Employeedb)

Корак 7) Омогућите осенчење за колекцију. Дакле, ако треба да делимо колекцију запослених, издајте наредбу у наставку

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

Резиме:

  • Као што је објашњено у водичу, Схардинг је концепт у МонгоДБ, који дели велике скупове података на мале скупове података у више инстанци МонгоДБ.