O melhor tutorial fatia MongoDB em 2024. Neste tutorial você pode aprender Slices,Por slice,fatia MongoDB,Exemplos de fragmentação,
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.
A figura a seguir mostra o uso da fatia estrutura de cluster na distribuição MongoDB:
A imagem acima tem três componentes principais:
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
instância mongod, armazena toda a ClusterMetadata, incluindo as informações pedaço.
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.
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