这就是我想出了:
- 如何设置了5个节点是“模仿”我的卡桑德拉群集配置中的MongoDB分片集群?
为此,人们可以在不复制的情况下使用分片群集。这也是怎样的方式Datastax used与对卡桑德拉和其他数据库YCSB基准的MongoDB的基准是:
No configuration files were used for MongoDB; instead the services were started with the parameters in the command line. For the first instance that has a configuration database:
bin/mongod --fork --logpath /var/log/mongodb/mongocfg.log --logappend --dbpath /mnt/mongodb/mongocfg –configsvr
Each service was then started:
bin/mongod --fork --logpath /var/log/mongodb/mongodb.log --logappend --dbpath /mnt/mongodb/mongodb --shardsvr --storageEngine wiredTiger
bin/mongos –-fork --logpath /var/log/mongodb/mongos.log --logappend --configdb $MONGO_MASTER
注意,这个问题被问,因为我们想基准卡桑德拉VS MongoDB的。这不适合生产环境。
- 能ConfigSvr,应用服务器相同的节点作为ShardSvr上运行?如何为进程指定不同的配置?
是的,他们可以。您可以为进程使用不同的配置文件,也可以在命令行上运行它们。如何做到这一点在MongoDB文档中概述。
- 需要多少副本套件?我认为一个副本集拥有完全相同的数据,因此将所有节点添加到一个副本集中将不起作用。有没有比引入5个包含两个节点的副本集更简单的方法?
当基准为您的使用情况数据库,它也可能适合在所有使用没有复制为基准的时间。这就是Datastax所做的,请参阅答案1中的链接。
如果您需要复制,那么当您有5个节点时,还可以构建一个3节点副本集和一个2节点副本集,并附加arbiter。
使用6个节点,您可以使用3个2节点副本集,每个集都有一个仲裁器。这最能模仿Cassandra的复制因子1。