我有一个约会网站,用户之间的互动。
数据如下:
ID Sender Receiver Msg TIME
1 22 33 Hi 2017-04-01
2 22 33 how r u 2017-04-02
3 33 22 i am gd 2017-04-03
4 22 44 Hey 2017-04-03 所需查询类型:
我应该如何在这里配置MongoDB切分?
问题:
- All latest records will move to one shard, so it will be heavily used.
- Also need to scan all shards to list any of above info
- Helpful for archiving
- Record distribution will be even
- Also need to scan all shards to list any of above info
- bad for archiving
发布于 2017-05-01 11:54:53
切分的效率在很大程度上取决于数据的设置和数量。所以,如果你真的想要一个答案,你需要用有代表性的数据进行测试。不过,我可以回答一些关于这个想法,如果它可以帮助。
分片的想法是让多台机器在一个查询上工作。由于数据集较小,对碎片的查询将完成得更快,但如果时间增益小于合并结果所需的时间(例如,如果您想要排序或有限的结果),则将确定它在您的情况下是否有益。
我不会担心什么是“不好的成就”,因为这是你很可能只运行一周/月,在一些低交通时间。这样,它不应该干扰日常生活。
您还应该测试是否需要这种归档。如果使用正确的查询并限制结果,这些旧消息甚至可能对性能没有任何影响。
https://stackoverflow.com/questions/43716772
复制相似问题