作者:禅与计算机程序设计艺术
1.背景介绍
1.1 Elasticsearch简介
Elasticsearch是一个开源的基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,其功能包括全文索引、搜索、分析、地理位置搜索、性能调优等。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前最流行的企业级搜索引擎之一。
1.2 Elasticsearch优点
- 快速 - Elasticsearch具有足够快的搜索速度,它在与其他数据库或系统进行对比时可以击败它们。
- 可扩展性 - Elasticsearch通过简单地增加机器资源来扩展其处理能力,它可以在不中断服务的情况下完成数据迁移或添加新节点。
- 分布式 - Elasticsearch支持分布式存储,它可以使用所有机器上的资源处理请求。此外,它还可以使用网络拓扑结构自动发现数据源。
- 实时性 - Elasticsearch具有低延迟的数据查询特性,这使其成为实时的搜索引擎。
- 数据分析 - Elasticsearch支持丰富的分析功能,可以帮助用户提取有效的信息。
1.3 Elasticsearch缺点
- 没有ACID事务机制 - Elasticsearch没有提供ACID事务机制,这意味着数据只能存在于内存中,并且在硬盘上的数据会丢失。如果需要实现ACID事务,则需要安装另一个分布式