我们有一些数据量比较大的业务数据, 采用sharding的方式存储. 这样可以把数据打散到不同的机器.
我们也有一些日志数据, 是按每个租户一个collection, 做成cappped, 只保留一定量的数据, 用于后台跑一些批处理用. 每个collection的记录数也不是很大, 用sharding的意义不大. 而且是capped collection也不能sharding
现在的问题是, 这样的collection的数量还是挺多的. 如果都集中在一台服务器, 那台服务器的负载就会变大, 反而影响本来sharding在上面个的collection的读写.
有什么办法可以把这些capped collection 比较好的分散到各个shard server吗?
比如:
Shard Svr1, Shard Svr2, Shard Svr3
log_1, log_2, log_3
log_4, log_5, log_6
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
以 database 为单位,可以用 movePrimary 把不同 database 的 unsharded collection 分散开。