数据密集型应用设计读书笔记第六章
这一篇在fabric分片实验的相关文件里我做过一些总结,所以这里简单提一下。
首先弄明白,分区和复制的区别。以及分区中仍旧可以用到复制技术。
分区的主要目的是为了可伸缩。
分区应该怎么分?键值数据,根据键划分,或者键的哈希后分区。
分区之后如果要支持更快更强大的查询,那么需要次级索引。次级索引如何分区?基于文档或者基于关键词。(其实就是每个分区各自建索引还是建立一个全局索引然后分开存放的区别)
分区之后,某些节点可能失效,某些节点可能加入。如何分区再平衡?固定数量的分区,动态分区,按节点比例分区。
分区之后,客户端的请求应该路由到哪个分区的哪个上?这是个服务发现的问题。