草庐IT

分片键

全部标签

mongodb - Mongodb 分片无法在分片之间拆分大型集合

我在mongo中似乎是一个简单的分片设置时遇到了问题。我有两个分片、一个mongos实例和一个配置服务器,如下所示:机器A-10.0.44.16-配置服务器,mongos机器B-10.0.44.10-分片1机器C-10.0.44.11-分片2我有一个名为“Seeds”的集合,它有一个分片键“SeedType”,它是集合中每个文档上都存在的一个字段,包含四个值之一(查看下面的分片状态)。其中两个值的条目明显多于另外两个(其中两个分别有784,000条记录,两个大约有5,000条记录)。我希望看到的行为是,带有InventoryPOS的“种子”集合中的记录将最终位于一个分片上,而带有Inv

mongodb - Mongodb 分片无法在分片之间拆分大型集合

我在mongo中似乎是一个简单的分片设置时遇到了问题。我有两个分片、一个mongos实例和一个配置服务器,如下所示:机器A-10.0.44.16-配置服务器,mongos机器B-10.0.44.10-分片1机器C-10.0.44.11-分片2我有一个名为“Seeds”的集合,它有一个分片键“SeedType”,它是集合中每个文档上都存在的一个字段,包含四个值之一(查看下面的分片状态)。其中两个值的条目明显多于另外两个(其中两个分别有784,000条记录,两个大约有5,000条记录)。我希望看到的行为是,带有InventoryPOS的“种子”集合中的记录将最终位于一个分片上,而带有Inv

performance - 用于分片 + 冗余 MongoDB 环境的硬件

我正在尝试从头开始规划一个新的数据库环境,我想知道需要多少台服务器以及它们应该提供多少性能。由于我希望它很快,我正在考虑使用SSD内存和RAM负载。然而,闪存很昂贵,并且占据了服务器成本的最大部分。因此,整个系统应该从一开始就设置为水平扩展,这样我就可以在需要更多存储/性能时添加更多节点。首先,我正在考虑使用2个分片,每个分片由一个主站和一个副本从站组成,以实现冗余。MongoDB文档建议使用1个主服务器和2个从服务器,但恐怕这不在可用预算之内,因为这些服务器中的每一个都将配备大约200GB的RAM和6x400GBSSD作为Raid10。使用分片时,还建议使用3个配置服务器以实现故障安

performance - 用于分片 + 冗余 MongoDB 环境的硬件

我正在尝试从头开始规划一个新的数据库环境,我想知道需要多少台服务器以及它们应该提供多少性能。由于我希望它很快,我正在考虑使用SSD内存和RAM负载。然而,闪存很昂贵,并且占据了服务器成本的最大部分。因此,整个系统应该从一开始就设置为水平扩展,这样我就可以在需要更多存储/性能时添加更多节点。首先,我正在考虑使用2个分片,每个分片由一个主站和一个副本从站组成,以实现冗余。MongoDB文档建议使用1个主服务器和2个从服务器,但恐怕这不在可用预算之内,因为这些服务器中的每一个都将配备大约200GB的RAM和6x400GBSSD作为Raid10。使用分片时,还建议使用3个配置服务器以实现故障安

MongoDB分片,添加新节点时如何重新平衡?

我正在尝试了解MongoDB和分片的概念。如果我们从2个节点开始并分区说,客户数据基于姓氏,其中A到M数据存储在节点1上,N到Z数据存储在节点2上。当我们想要扩展并添加更多节点时会发生什么?我只是不明白这将如何工作。 最佳答案 如果您有2个节点,这并不意味着数据被分成2个block。它可以划分为10个block,其中6个在服务器1上,其余在服务器2上。当您添加另一台服务器时,MongoDB能够在新配置的节点之间重新分配这些block您可以在官方文档中阅读更多内容:http://www.mongodb.org/display/DOCS

MongoDB分片,添加新节点时如何重新平衡?

我正在尝试了解MongoDB和分片的概念。如果我们从2个节点开始并分区说,客户数据基于姓氏,其中A到M数据存储在节点1上,N到Z数据存储在节点2上。当我们想要扩展并添加更多节点时会发生什么?我只是不明白这将如何工作。 最佳答案 如果您有2个节点,这并不意味着数据被分成2个block。它可以划分为10个block,其中6个在服务器1上,其余在服务器2上。当您添加另一台服务器时,MongoDB能够在新配置的节点之间重新分配这些block您可以在官方文档中阅读更多内容:http://www.mongodb.org/display/DOCS

mongodb 重新配置分片端口

我已经在非标准端口上重新启动了2个分片,方法是更改​​它们的.conf文件。现在,当我通过mongo连接并发出列表碎片时,我得到:mongos>db.runCommand({listshards:1});TueOct2317:36:21uncaughtexception:error{"$err":"errorcreatinginitialdatabaseconfiginformation::causedby::socketexception[CONNECT_ERROR]forvserver-dev-2:37017","code":11002}(37017是旧端口)。如何更新路由器(mo

mongodb 重新配置分片端口

我已经在非标准端口上重新启动了2个分片,方法是更改​​它们的.conf文件。现在,当我通过mongo连接并发出列表碎片时,我得到:mongos>db.runCommand({listshards:1});TueOct2317:36:21uncaughtexception:error{"$err":"errorcreatinginitialdatabaseconfiginformation::causedby::socketexception[CONNECT_ERROR]forvserver-dev-2:37017","code":11002}(37017是旧端口)。如何更新路由器(mo

mongodb - 按 ObjectID 分片,是正确的方法吗?

就像许多其他人一样,我正在考虑在Mongo中对我的收藏进行分片的正确方法。主要问题是-自动分片是如何工作的?官方文档说——“MongoDB通过自动分片(分区)架构水平扩展”和“为了对集合进行分区,我们指定了一个分片键模式。”附注“为集合选择正确的分片键很重要”:)。http://www.mongodb.org/display/DOCS/Sharding+Introduction#ShardingIntroduction-ShardKeyshttp://www.mongodb.org/display/DOCS/Choosing+a+Shard+Key现在的问题是-“这是正确的key”(按

mongodb - 按 ObjectID 分片,是正确的方法吗?

就像许多其他人一样,我正在考虑在Mongo中对我的收藏进行分片的正确方法。主要问题是-自动分片是如何工作的?官方文档说——“MongoDB通过自动分片(分区)架构水平扩展”和“为了对集合进行分区,我们指定了一个分片键模式。”附注“为集合选择正确的分片键很重要”:)。http://www.mongodb.org/display/DOCS/Sharding+Introduction#ShardingIntroduction-ShardKeyshttp://www.mongodb.org/display/DOCS/Choosing+a+Shard+Key现在的问题是-“这是正确的key”(按