Latest web development tutorials
×

MongoDB курс

MongoDB курс NoSQL Краткое введение MongoDB Краткое введение Window устанавливать MongoDB Linux устанавливать MongoDB MongoDB Интерпретация Концепции MongoDB подключение MongoDB Создание базы данных MongoDB Удалить базу данных MongoDB Вставить документ MongoDB Обновление документации MongoDB Удаление документов MongoDB документ Запрос MongoDB Условный оператор MongoDB $type операторы MongoDB Limit & Skip MongoDB последовательность MongoDB индекс MongoDB агрегирование MongoDB копия MongoDB Ломтики MongoDB Резервное копирование и восстановление MongoDB монитор MongoDB Java MongoDB PHP распространение MongoDB PHP MongoDB PHP7

MongoDB Расширенный учебник

MongoDB отношения MongoDB ссылки на базы данных MongoDB Индекс покрытия запроса MongoDB анализ запросов MongoDB атомарные операции MongoDB Расширенный индексации MongoDB ограничения индекса MongoDB ObjectId MongoDB Map Reduce MongoDB Полнотекстовый поиск MongoDB Регулярные выражения MongoDB Инструменты управления MongoDB GridFS MongoDB Фиксированный набор MongoDB Автоматический рост

ломтик MongoDB

Ломтики

Существует еще один кластер MongoDB в пределах, нарезка технологии, большое количество данных, чтобы удовлетворить растущий спрос на MongoDB.

Когда MongoDB для хранения больших объемов данных, машина может быть недостаточно для хранения данных, может быть недостаточно для обеспечения приемлемого для чтения и записи пропускную способность. В этот момент мы можем разделить данные на несколько машин, так что система баз данных может хранить и обрабатывать больше данных.


Почему срез

  • Скопируйте все операции записи в основной узел
  • Задержка конфиденциальных данных в главном запросе
  • Один комплект копий ограничивается до 12 узлов
  • Когда огромный объем запросов будет появляться, когда память.
  • нехватка Локальный диск
  • Вертикальное расширение дорого

ломтик MongoDB

На следующем рисунке показано использование кластерной структуры среза в распределении MongoDB:

Изображение выше имеет следующие три основных компонента:

  • осколок:

    Используется для хранения фактического блока данных, фактической производственной среды, роль осколок сервер может установить несколько машин relica установить обязательство по предотвращению принимающей единой точки отказа

  • Конфигурация сервера:

    mongod экземпляр, хранит всю ClusterMetadata, включая информацию фрагмента.

  • Запрос Маршрутизаторы:

    Передний конец маршрута, в результате чего клиентский доступ, а весь кластер как единую базу данных интерфейсных приложений могут прозрачно использовать.


Примеры фрагментации

порты Slice ткани распределены следующим образом:

Shard Server 1:27020
Shard Server 2:27021
Shard Server 3:27022
Shard Server 4:27023
Config Server :27100
Route Process:40000

Шаг первый: Запустить осколок сервер

[root@100 /]# mkdir -p /www/mongoDB/shard/s0
[root@100 /]# mkdir -p /www/mongoDB/shard/s1
[root@100 /]# mkdir -p /www/mongoDB/shard/s2
[root@100 /]# mkdir -p /www/mongoDB/shard/s3
[root@100 /]# mkdir -p /www/mongoDB/shard/log
[root@100 /]# /usr/local/mongoDB/bin/mongod --port 27020 --dbpath=/www/mongoDB/shard/s0 --logpath=/www/mongoDB/shard/log/s0.log --logappend --fork
....
[root@100 /]# /usr/local/mongoDB/bin/mongod --port 27023 --dbpath=/www/mongoDB/shard/s3 --logpath=/www/mongoDB/shard/log/s3.log --logappend --fork

Шаг второй: Запустите сервер Config

[root@100 /]# mkdir -p /www/mongoDB/shard/config
[root@100 /]# /usr/local/mongoDB/bin/mongod --port 27100 --dbpath=/www/mongoDB/shard/config --logpath=/www/mongoDB/shard/log/config.log --logappend --fork

Примечание: Здесь мы можем начать как обычный MongoDB службы в качестве начала, нет необходимости добавлять -shardsvr и configsvr параметры. Потому что роль этих двух параметров, чтобы изменить начальный порт, поэтому мы можем быть самостоятельно Назначенный порт.

Шаг третий: Начало маршрута обработки

/usr/local/mongoDB/bin/mongos --port 40000 --configdb localhost:27100 --fork --logpath=/www/mongoDB/shard/log/route.log --chunkSize 500

Параметры запуска mongos, chunkSize этот используется для указания размера блока памяти, блок MB, размер по умолчанию 200MB.

Шаг четвертый: Настройка Шардинг

Далее, мы используем MongoDB Shell вход на mongos, добавлять узлы осколок

[root@100 shard]# /usr/local/mongoDB/bin/mongo admin --port 40000
MongoDB shell version: 2.0.7
connecting to: 127.0.0.1:40000/admin
mongos> db.runCommand({ addshard:"localhost:27020" })
{ "shardAdded" : "shard0000", "ok" : 1 }
......
mongos> db.runCommand({ addshard:"localhost:27029" })
{ "shardAdded" : "shard0009", "ok" : 1 }
mongos> db.runCommand({ enablesharding:"test" }) #设置分片存储的数据库
{ "ok" : 1 }
mongos> db.runCommand({ shardcollection: "test.log", key: { id:1,time:1}})
{ "collectionsharded" : "test.log", "ok" : 1 }

Шаг пятый: В программном коде без особых изменений, прямая связь в соответствии с обычной базой данных Монго в качестве интерфейса доступа к базе данных для подключения 40000