Elasticsearch可以扩展到上百(甚至上千)的服务器来处理PB级的数据,然而Elasticsearch在分布式概念上做了很大程度上的透明化,其运行在笔记本上,也可以运行在拥有100个节点的集群上,其工作方式是一样的。
Elasticsearch致力于隐藏分布式系统的复杂性。以下这些操作都是在底层自动完成的:
1.将你的文档分区到不同的容器或者分片(shards)中,它们可以存在于一个或多个节点中。
2.将分片均匀的分配到各个节点,对索引和搜索做负载均衡。
3.冗余每一个分片,防止硬件故障造成的数据丢失。
4.将集群中任意一个节点上的请求路由到相应数据所在的节点。
5.无论是增加节点,还是移除节点,分片都可以做到无缝的扩展和迁移。