iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >MongoDB的数据复制分片
  • 260
分享到

MongoDB的数据复制分片

2024-04-02 19:04:59 260人浏览 独家记忆
摘要

个人博客地址:https://www.aolens.cn/?p=683 一:MongoDB的简介:    mongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSQ

个人博客地址:https://www.aolens.cn/?p=683


一:MongoDB的简介:

    mongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSQL数据库中比较热门的一种。它在许多场景下可用于替代传统的关系型数据库或键/值存储方式。而且可以很容易的和JSON类的数据结合,他不支持事务,但支持自动分片功能,这对大数据分布式存储有着十分重要的作用。

二:MongoDB的索引类型:

    单字段索引

    组合索引(多字段索引):对多个key做索引

    多键索引:对key和value中的key做索引

    空间索引:基于位置做索引

    文本索引:全文搜索

    hash索引:仅支持精确值查找

    稀疏索引(sparse):不为每一个值做索引,一般得是顺序排放才可以做稀疏索引

三:MongoDB的复制功能:

    MonGoDB有两种复制类型:Master/Slave主从和replica set副本集复制,但是由于MongoDB的特性,主从复制架构已经基本放弃,比较常见的就是副本集复制方式

    replica set的工作特性:

    1,复制集可以实现自动转移 heartbeat超时,自动失效转移(通过选举方式实现)

    2,至少有3个节点,且奇数个节点,可以使用arbiter来参与选举

    复制集中的特殊类型的节点分类:

    0优先级的节点:冷备节点,不会被选举成为主节点,但可以参与选举

    被隐藏的从节点:首先是一个0优先级的从节点,拥有选举权,不会被客户端直接访问到

    延迟复制的从节点:是一个0优先级的从节点,不能被选为主节点,且复制时间落后与主节点一个固定的时长。

    arbiter:仲裁者,没有数据,不可能成为主节点。

实验内容:

一,实现MongoDB数据的复制

实验模型:

MongoDB的数据复制分片

实验环境:

node1:172.16.18.1 MongoDB   Centos6.5

node2:172.16.18.2 MongoDB   centos6.5

node3:172.16.18.3 MongoDB   centos6.5

实验内容:

首先要确定各节点的时间一致

1.1 MongoDB安装:分别在node1,node2,node3节点安装一下三个包

mogodb安装需要:一下三个包

    mongodb-org-shell-2.6.4-1.x86_64.rpm

    mongodb-org-tools-2.6.4-1.x86_64.rpm

    mongodb-org-server-2.6.4-1.x86_64.rpm

编辑服务器的配置文件,/etc/mongod.conf

logpath=/var/log/mongodb/mongod.log            #日志的路径
logappend=true                                                 #开启日志
fork=true                                                            
#port=27017                                                     #默认监听的端口
#dbpath=/var/lib/mongo                                   #默认的数据路径
dbpath=/mongodb/data                                     #自定义的数据路径
pidfilepath=/var/run/mongodb/mongod.pid
#bind_ip=127.0.0.1                                           #定义绑定IP,也就是监听那些IP可来链接服务器,注销是允许所有。
Httpinterface=true                                              #开放WEB页面,
rest=true
replSet=testset
replIndexPrefetch=_id_only

配置好后将配置分别发送到其他两个节点,并创建数据目录,修改权限

mkdir /mongodb/data/ -pv  
chown -R mongod.mongod /mongodb/

全部启动:可能启动会比较慢,那是因为要初始化数据

1.2链接到数据库

[root@node2 ~]# mongo    
MongoDB shell version: 2.6.4    
connecting to: test    
> rs.status()    
{    
"startupStatus" : 3,    
"info" : "run rs.initiate(...) if not yet done for the set",    
"ok" : 0,    
"errmsg" : "can't get local.system.replset config from self or any seed (EMPTYCONFIG)"  
}

使用rs.status()查看状态,有3个节点,但是都没有初始化配置。需要运行rs.initiate()

1.3运行rs.initiate()

> rs.initiate()
{
"info2" : "no configuration explicitly specified -- making one",
"me" : "node2.aolens.com:27017",
"info" : "Config now saved locally. Should come online in about a minute.",
"ok" : 1
}
testset:OTHER> rs.status()
{
"set" : "testset",
"date" : ISODate("2014-10-12T07:51:58Z"),
"myState" : 1,
"members" : [
  {
   "_id" : 0,
   "name" : "node2.aolens.com:27017",
   "health" : 1,
   "state" : 1,
   "stateStr" : "PRIMARY",
   "uptime" : 920,
   "optime" : Timestamp(1413100302, 1),
   "optimeDate" : ISODate("2014-10-12T07:51:42Z"),
   "electionTime" : Timestamp(1413100302, 2),
   "electionDate" : ISODate("2014-10-12T07:51:42Z"),
   "self" : true
  }
],
"ok" : 1
}
testset:PRIMARY>

可以看到添加了一个节点node2,也就是自己,且是primary节点。以及所有的状态

1.4添加其他两个节点

testset:PRIMARY> rs.add("node1.aolens.com")
{ "ok" : 1 }
testset:PRIMARY> rs.add("node3.aolens.com")
{ "ok" : 1 }
用rs.status()查看
testset:PRIMARY> rs.status()
{
"set" : "testset",
"date" : ISODate("2014-10-12T08:03:48Z"),
"myState" : 1,
"members" : [
  {
   "_id" : 0,
   "name" : "node2.aolens.com:27017",
   "health" : 1,
   "state" : 1,
   "stateStr" : "PRIMARY",
   "uptime" : 1630,
   "optime" : Timestamp(1413101019, 1),
   "optimeDate" : ISODate("2014-10-12T08:03:39Z"),
   "electionTime" : Timestamp(1413100302, 2),
   "electionDate" : ISODate("2014-10-12T07:51:42Z"),
   "self" : true
  },
  {
   "_id" : 1,
   "name" : "node1.aolens.com:27017",
   "health" : 1,
   "state" : 5,
   "stateStr" : "STARTUP2",
   "uptime" : 17,
   "optime" : Timestamp(0, 0),
   "optimeDate" : ISODate("1970-01-01T00:00:00Z"),
   "lastHeartbeat" : ISODate("2014-10-12T08:03:46Z"),
   "lastHeartbeatRecv" : ISODate("2014-10-12T08:03:47Z"),
   "pingMs" : 224
  },
  {
   "_id" : 2,
   "name" : "node3.aolens.com:27017",
   "health" : 1,
   "state" : 6,
   "stateStr" : "UNKNOWN",
   "uptime" : 8,
   "optime" : Timestamp(0, 0),
   "optimeDate" : ISODate("1970-01-01T00:00:00Z"),
   "lastHeartbeat" : ISODate("2014-10-12T08:03:47Z"),
   "lastHeartbeatRecv" : ISODate("1970-01-01T00:00:00Z"),
   "pingMs" : 905,
   "lastHeartbeatMessage" : "still initializing"
  }
],
"ok" : 1
}

有没有发现新加的这两个节点状态不对?没有关系,可能是还没有同步过来,稍等在刷新试试

"name" : "node1.aolens.com:27017",

"stateStr" : "SECONDARY",

"name" : "node3.aolens.com:27017",

"stateStr" : "SECONDARY",

再刷新时添加的两个节点都成为了secondary。

1.5我们在主节点来创建一些数据

testset:PRIMARY> use test
switched to db test
testset:PRIMARY> for (i=1;i<=1000;i++) db.students.insert({name:"student"+i,age:(i%100)})
WriteResult({ "nInserted" : 1 })
连接到从节点来看一下
[root@node1 ~]# mongo    
MongoDB shell version: 2.6.4    
connecting to: test    
Welcome to the MongoDB shell.    
For interactive help, type "help".    
For more comprehensive documentation, see    
http://docs.mongodb.org/    
Questions? Try the support group    
http://groups.google.com/group/mongodb-user    
testset:SECONDARY> use test    
switched to db test    
testset:SECONDARY> show collections    
2014-10-11T14:52:57.103+0800 error: { "$err" : "not master and slaveOk=false", "code" : 13435 } at src/mongo/shell/query.js:131    
#提示需要不是主节点,没有slaveOK不让查看,那么便在当前节点指定slaveOK,便可以了
testset:SECONDARY> rs.slaveOk()
testset:SECONDARY> show collections
students
system.indexes
可以使用rs.isMaster()查询主节点是谁
testset:SECONDARY> rs.isMaster()
{
"setName" : "testset",
"setVersion" : 3,
"ismaster" : false,
"secondary" : true,
"hosts" : [
  "node1.aolens.com:27017",
  "node3.aolens.com:27017",
  "node2.aolens.com:27017"
],
"primary" : "node2.aolens.com:27017",         #主节点是谁
"me" : "node1.aolens.com:27017",              #自己是谁
"maxBsonObjectSize" : 16777216,
"maxMessageSizeBytes" : 48000000,
"maxWriteBatchSize" : 1000,
"localTime" : ISODate("2014-10-11T07:00:03.533Z"),
"maxWireVersion" : 2,
"minWireVersion" : 0,
"ok" : 1
}

1.6如果主节点离线,从节点会自动选出主节点

testset:PRIMARY> rs.stepDown()
2014-10-12T17:00:12.869+0800 DBClientCursor::init call() failed
2014-10-12T17:00:12.896+0800 Error: error doing query: failed at src/mongo/shell/query.js:81
2014-10-12T17:00:12.914+0800 trying reconnect to 127.0.0.1:27017 (127.0.0.1) failed
2014-10-12T17:00:12.945+0800 reconnect 127.0.0.1:27017 (127.0.0.1) ok
testset:SECONDARY>

可以看到主节点的primary变成了secondary

其他两个节点中的一个变为主节点,这就是自动转移

副本集的重新选举的条件有:心态信息,优先级,optime,网络连接等

1.7还可以修改优先级来实现主从切换

testset:PRIMARY> rs.conf()            #查看配置
{
"_id" : "testset",
"version" : 3,
"members" : [
  {
   "_id" : 0,
   "host" : "node2.aolens.com:27017"
  },
  {
   "_id" : 1,
   "host" : "node1.aolens.com:27017"
  },
  {
   "_id" : 2,
   "host" : "node3.aolens.com:27017"
  }
]
}
testset:PRIMARY> cfg=rs.conf()            #将配置信息保存在变量中
{
"_id" : "testset",
"version" : 3,
"members" : [
  {
   "_id" : 0,
   "host" : "node2.aolens.com:27017"
  },
  {
   "_id" : 1,
   "host" : "node1.aolens.com:27017"
  },
  {
   "_id" : 2,
   "host" : "node3.aolens.com:27017"
  }
]
}
testset:PRIMARY> cfg.members[1].priority=2            #修改id=1的主机优先级为2
2
testset:PRIMARY> rs.reconfig(cfg)                              #应用cfg文件
2014-10-12T05:15:59.916-0400 DBClientCursor::init call() failed
2014-10-12T05:15:59.988-0400 trying reconnect to 127.0.0.1:27017 (127.0.0.1) failed
2014-10-12T05:16:00.015-0400 reconnect 127.0.0.1:27017 (127.0.0.1) ok
reconnected to server after rs command (which is nORMal)
testset:SECONDARY>                                                    #主动变为从节点
而id=1的是node1.aolens.com主机,自己变为primary主机
testset:SECONDARY>
testset:PRIMARY>

1.8,如何要设定仲裁节点

rs.addArb(hostportstr)表示将一个节点加进来时就是仲裁节点。

我们移除当前的node3节点

testset:PRIMARY> rs.remove("node3.aolens.com")

删除/mongodb/data下的数据,重新初始化,

testset:PRIMARY> rs.addArb("node3.aolens.com")

二,实现MongoDB数据的的切片

MongoDB的分片(sharding):

    为什么要分片:CPU,Memory,IO等无法满足要求。

    横行拓展:就需要将数据分片放到不同的节点

    MongoDB的数据复制分片

    为了保证shard的大小均衡:是将主节点的数据按照顺序分成大小相同的块,分别存在不同的sharding节点上。

分片架构中的角色:

    mongos:Router服务器

    config server:元数据服务器

    shard:数据节点,也成mongod实例

    MongoDB的数据复制分片

分片需要满足:写离散,读集中的思想

实验环境:

node1:172.16.18.1 mongos router节点

node2:172.16.18.2 mongod shard节点

node3:172.16.18.3 mongod shard节点

node4:172.16.17.12 config server

实验模型:

MongoDB的数据复制分片

实验内容:

2.1首先来配置config server

其实config server也就是mongod,只是要指明他就是config server

logpath=/var/log/mongodb/mongod.log
logappend=true
fork=true
#port=27017
dbpath=/mongodb/data
pidfilepath=/var/run/mongodb/mongod.pid
启动config server节点。会发现他监听在27019端口
[root@node3 mongodb-2.6.4]# service mongod start    
Starting mongod: [ OK ]    
[root@node3 mongodb-2.6.4]# ss -tnl    
State Recv-Q Send-Q Local Address:Port Peer Address:Port    
LISTEN 0 128 *:27019 *:*

2.2配置router节点

安装mongodb-org-mongos.x86_64程序包

直接启动即可:

[root@node1 ~]# mongos --configdb=172.16.17.12:27019 --fork --logpath=/var/log/mongodb/mongos.log
2014-10-11T20:29:43.617+0800 warning: running with 1 config server should be done only for testing purposes and is not recommended for production
about to fork child process, waiting until server is ready for connections.
forked process: 8766
child process started successfully, parent exiting

启动成功

需要指定config server的地址 --fork后台运行,--logpath指明log位置

2.3配置shard节点,shard节点就是正常的mongod节点,无需什么多的配置

logpath=/var/log/mongodb/mongod.log
logappend=true
fork=true
#port=27017
dbpath=/mongodb/data
pidfilepath=/var/run/mongodb/mongod.pid

启动node2,node3

2.4链接在mongos上查看

[root@node1 ~]# mongo --host 172.16.18.1    MongoDB shell version: 2.6.4    connecting to: 172.16.18.1:27017/test
添加两个shard节点:   mongos> sh.addShard("172.16.18.2")
{ "shardAdded" : "shard0000", "ok" : 1 }
mongos> sh.addShard("172.16.18.3")
{ "shardAdded" : "shard0001", "ok" : 1 }
mongos> sh.status()
--- Sharding Status ---
  sharding version: {
"_id" : 1,
"version" : 4,
"minCompatibleVersion" : 4,
"currentVersion" : 5,
"clusterId" : ObjectId("543922b81aaf92ac0f9334f8")
}
  shards:
{ "_id" : "shard0000", "host" : "172.16.18.2:27017" }
{ "_id" : "shard0001", "host" : "172.16.18.3:27017" }
  databases:
{ "_id" : "admin", "partitioned" : false, "primary" : "config" }

对数据分片是需要分片的一般为大数据,如果一个collection中的数据很少,就没有必要做shard,而未做分片的数据会放在主shard上。

下来我们先来启动shard功能

mongos> sh.status()
--- Sharding Status ---
  sharding version: {
"_id" : 1,
"version" : 4,
"minCompatibleVersion" : 4,
"currentVersion" : 5,
"clusterId" : ObjectId("543922b81aaf92ac0f9334f8")
}
  shards:
{ "_id" : "shard0000", "host" : "172.16.18.2:27017" }
{ "_id" : "shard0001", "host" : "172.16.18.3:27017" }
  databases:
{ "_id" : "admin", "partitioned" : false, "primary" : "config" }
{ "_id" : "test", "partitioned" : false, "primary" : "shard0000" }
{ "_id" : "testdb", "partitioned" : true, "primary" : "shard0000" }


下来我们手动分片试试

mongos> sh.shardCollection("testdb.students",{"age":1})            #对age来分片
{ "collectionsharded" : "testdb.students", "ok" : 1 }
mongos> sh.status()
--- Sharding Status ---
  sharding version: {
"_id" : 1,
"version" : 4,
"minCompatibleVersion" : 4,
"currentVersion" : 5,
"clusterId" : ObjectId("543922b81aaf92ac0f9334f8")
}
  shards:
{ "_id" : "shard0000", "host" : "172.16.18.2:27017" }
{ "_id" : "shard0001", "host" : "172.16.18.3:27017" }
  databases:
{ "_id" : "admin", "partitioned" : false, "primary" : "config" }
{ "_id" : "test", "partitioned" : false, "primary" : "shard0000" }
{ "_id" : "testdb", "partitioned" : true, "primary" : "shard0000" }
  testdb.students
   shard key: { "age" : 1 }
   chunks:
    shard0000 1
   { "age" : { "$minKey" : 1 } } -->> { "age" : { "$maxKey" : 1 } } on : shard0000 Timestamp(1, 0)
可是我们此时没有数据,那么便来生成一些数据吧
mongos> for (i=1;i<=100000;i++) db.students.insert({name:"student"+i,age:(i%100),addr:"china"})
mongos> sh.status()
--- Sharding Status ---
  sharding version: {
"_id" : 1,
"version" : 4,
"minCompatibleVersion" : 4,
"currentVersion" : 5,
"clusterId" : ObjectId("543922b81aaf92ac0f9334f8")
}
  shards:
{ "_id" : "shard0000", "host" : "172.16.18.2:27017" }
{ "_id" : "shard0001", "host" : "172.16.18.3:27017" }
  databases:
{ "_id" : "admin", "partitioned" : false, "primary" : "config" }
{ "_id" : "test", "partitioned" : false, "primary" : "shard0000" }
{ "_id" : "testdb", "partitioned" : true, "primary" : "shard0000" }
  testdb.students
   shard key: { "age" : 1 }
   chunks:
  shard0001 1
    shard0000 2
   { "age" : { "$minKey" : 1 } } -->> { "age" : 1 } on : shard0001 Timestamp(2, 0)
   { "age" : 1 } -->> { "age" : 99 } on : shard0000 Timestamp(2, 2)
   { "age" : 99 } -->> { "age" : { "$maxKey" : 1 } } on : shard0000 Timestamp(2, 3)

会发现把数据分到了不同的chunk上

数据分片就实现了,当然一般不建议手动分片。

总结:mongod在大数据处理还有主从复制上都有着比Mysql更加优秀的性能和更加简单的操作。但由于mongod尚不是很成熟,在实际的应用中还有许多要解决的问题。需要使用着慢慢摸索。

您可能感兴趣的文档:

--结束END--

本文标题: MongoDB的数据复制分片

本文链接: https://www.lsjlt.com/news/42420.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何使用MongoDB实现数据的复制和分片功能
    如何使用MongoDB实现数据的复制和分片功能引言:MongoDB是一个十分流行的NoSQL数据库系统,它具有高性能、可扩展性和可靠性等特点。在大数据时代,数据量的增长是一种常态,因此数据的复制和分片成为了保证数据可靠性和性能的关键功能。本...
    99+
    2023-10-22
    MongoDB 数据复制 分片功能
  • 【Mongodb】往分片复制集添加复制成员
    1.新的成员机器上安装mongo,启动shard1 [root@ip-10-1-2-183 etc]# more shard1.conf logpath=/usr/l...
    99+
    2024-04-02
  • mongodb分片数据恢复的方法是什么
    MongoDB分片数据恢复的方法主要有以下几种:1. 使用备份和恢复工具:可以使用MongoDB提供的mongodump和mongo...
    99+
    2023-08-23
    mongodb
  • mongodb如何复制数据
    MongoDB提供了多种方式来复制数据:1. **复制集(Replica Set)**:复制集是MongoDB中最常用的复制方式。它...
    99+
    2023-09-06
    mongodb
  • mongodb怎么对已有的数据分片
    在MongoDB中对已有的数据进行分片需要经过以下步骤: 创建分片键:首先需要选择一个字段作为分片键,该字段的值会决定数据在哪个...
    99+
    2024-04-09
    mongodb
  • PHP实现MongoDB数据库分片的方法
    随着数据量的增加,单个MongoDB实例的存储和处理能力可能会受到限制,导致性能下降。为了更好地处理大量数据,MongoDB提供了分片的功能,在多个服务器上分散数据以提高性能和可用性。PHP作为一种常用的Web编程语言,本文将介绍如何使用P...
    99+
    2023-05-18
    PHP MongoDB 分片
  • MongoDB复制集数据同步流程
    本文转自张友东的文章,文章链接: http://www.mongoing.com/archives/2369 正好解释了我的问题,所以转发记录下 2015/...
    99+
    2024-04-02
  • mongodb复制数据库的方法是什么
    MongoDB复制数据库的方法有两种:主从复制和副本集。1. 主从复制(Master-Slave Replication):主从复制...
    99+
    2023-09-12
    mongodb 数据库
  • 深入剖析MongoDB的数据复制与故障恢复机制
    深入剖析MongoDB的数据复制与故障恢复机制引言:随着大数据时代的到来,数据的存储和管理变得愈发重要。在数据库领域,MongoDB作为一种广泛应用的NoSQL数据库,其数据复制和故障恢复机制对于保障数据的可靠性和高可用性至关重要。本文将深...
    99+
    2023-11-04
    MongoDB 故障恢复 数据复制
  • PHP实现MongoDB数据库主从复制的方法
    在现代的网络应用程序中,数据处理和管理是至关重要的任务。随着Web应用程序变得越来越复杂,需要处理海量数据,存储和处理这些数据的数据库也越来越多了。MongoDB是一种NoSQL数据库,在Web应用程序中被广泛使用。与MySQL等关系型数据...
    99+
    2023-05-16
    PHP MongoDB 主从复制
  • 深入剖析MongoDB的复制集与分片集群的搭建与优化
    深入剖析MongoDB的复制集与分片集群的搭建与优化概述在大规模应用程序中,数据存储和管理是至关重要的。MongoDB作为一种非关系数据库解决方案,广泛用于处理大规模数据集和高负载应用程序的需求。MongoDB的数据复制和分片功能让用户能够...
    99+
    2023-11-04
    - MongoDB - 复制集 - 分片集群
  • MongoDB中的数据复制到底是怎么实现的
    这期内容当中小编将会给大家带来有关MongoDB中的数据复制到底是怎么实现的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。数据同步方式MongoDB中的复制功能主要是使用操作日志oplog.rs来实现的,...
    99+
    2023-06-19
  • MongoDB分片键的示例分析
    小编给大家分享一下MongoDB分片键的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!MongoDB版本:3.6一、分片键类别1.升序片键升序片键例如:日期时间字段、自增字段。2....
    99+
    2024-04-02
  • mongodb中的分片是什么
    在mongodb中分片是指在多台计算机之间存储数据记录的过程,它能够将数据水平切分到不同的物理节点,当应用数据越来越大的时候,数据量也会越来越大。它是一种mongodb方法,可以满足数据增长的需求。它在数据库或搜索引擎中创建数据的水平分区,...
    99+
    2024-04-02
  • mongodb分片技术的示例分析
    这篇文章主要为大家展示了“mongodb分片技术的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“mongodb分片技术的示例分析”这篇文章吧。在mong...
    99+
    2024-04-02
  • 部署MongoDB复制集(主从复制、读写分离、高可用)
    MongoDB 复制集 复制集(Replica Sets)是额外的数据副本,是跨多个服务器同步数据的过程,复制集提供了冗余备份并提高了数据的可用性,通过复制集可以对硬件故障和中断的服务进行恢复。 Mon...
    99+
    2024-04-02
  • 怎么使用PHP实现MongoDB数据库主从复制
    这篇文章主要介绍“怎么使用PHP实现MongoDB数据库主从复制”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么使用PHP实现MongoDB数据库主从复制”文章能帮助大家解决问题。MongoDB主...
    99+
    2023-07-06
  • MongoDB数据库中怎么实现M-S主从复制
    本篇文章为大家展示了MongoDB数据库中怎么实现M-S主从复制,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。[root@localhost ~]#&nb...
    99+
    2024-04-02
  • mongodb的分片算法有哪些
    mongodb 提供两种分片算法:哈希分片(确保数据均匀分布)和范围分片(将相似值文档存储在同一个分片)。选择算法取决于数据分布、负载均衡和热点问题等因素。 MongoDB的分片算法 ...
    99+
    2024-04-02
  • mongodb分片的步骤是什么
    MongoDB分片的步骤如下:1. 部署配置服务器(Config Server):配置服务器用于存储分片集群的元数据信息,包括分片键...
    99+
    2023-08-24
    mongodb
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作