O melhor tutorial fatia MongoDB em 2024. Neste tutorial você pode aprender Slices,Por slice,fatia MongoDB,Exemplos de fragmentação,

fatia MongoDB

Slices

Há um outro conjunto MongoDB dentro, cortando tecnologia, uma grande quantidade de dados para atender a crescente demanda por MongoDB.

Quando MongoDB para armazenar grandes quantidades de dados, uma máquina pode ser insuficiente para armazenar os dados, pode ser insuficiente para fornecer uma leitura aceitável e escrever rendimento. Neste ponto, pode-se dividir os dados em várias máquinas, de modo que o sistema de base de dados pode armazenar e processar mais dados.


Por slice

  • Copiar tudo escrever operações para o nó primário
  • Atrasar dados sensíveis na query master
  • Um único conjunto de cópias está limitado a 12 nós
  • Quando o enorme volume de pedidos aparece quando a memória.
  • escassez de disco local
  • expansão vertical é caro

fatia MongoDB

A figura a seguir mostra o uso da fatia estrutura de cluster na distribuição MongoDB:

A imagem acima tem três componentes principais:

  • Shard:

    Usado para armazenar o bloco de dados real, o ambiente real de produção, uma função de servidor fragmento pode definir algumas máquinas Relica definir um compromisso para evitar o ponto único host de falha

  • Configuração do servidor:

    instância mongod, armazena toda a ClusterMetadata, incluindo as informações pedaço.

  • Consulta Routers:

    A extremidade dianteira do percurso, pelo que o acesso do cliente, e todo o aglomerado parecido com um banco de dados único aplicações front-end pode transparente usar.


Exemplos de fragmentação

portas de tecido fatia são distribuídos da seguinte forma:

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

Passo um: Iniciar Shard Servidor

[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
ptpt
[root@100 /]# /usr/local/mongoDB/bin/mongod --port 27023 --dbpath=/www/mongoDB/shard/s3 --logpath=/www/mongoDB/shard/log/s3.log --logappend --fork

Segundo Passo: Comece o servidor de configuração

[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

Nota: Aqui podemos começar como serviço MongoDB comum como começar, não há necessidade de adicionar parâmetros -shardsvr e configsvr. Porque o papel desses dois parâmetros é mudar a porta inicial, para que possamos ser a porta de auto-designado.

Terceiro Passo: Comece a rota de processo

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

parâmetros de inicialização Mongos, chunkSize este é usado para especificar o tamanho do pedaço, a unidade é MB, o tamanho padrão é de 200 MB.

Passo Quatro: Configurar Sharding

Em seguida, usamos MongoDB Shell Inicie a sessão no mongos, adicionar nós Shard

[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 }
ptptpt
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 }

Quinto passo: No código de programa sem muita mudança, uma ligação directa de acordo com o banco de dados mongo comum como a interface de acesso de banco de dados para conectar 40.000

fatia MongoDB
10/30