Elasticsearch
1. 特性
- 可拓展高达PB级的结构化和非结构化数据(类和字符串?)
- 可以用来替代MongoDB和RavenDB等做文档存储
- 可以用非标准化来提高搜索性能
- 流行:Wikipedia、The Guardian、StackOverflow、GitHub等
- 开源:
Apache 2.0
2. 概念
- 节点:单个实例
- 集群:一个或多个节点的集合,可以为整个数据提供跨节点集合索引和搜索能力
- 索引:文档、文档属性的集合,使用分片的概念提高性能
- 类型/映射;
- 文档:Json格式定义的特定方式的字段集合。每一个文档都是一个类型并且驻留在索引中,每个文档都与唯一标识符(UID)想关联。
- 碎片:索引被水平分为碎片。
- 副本:允许用户创建索引和分配的副本。有助于提高可用性,而且可以在副本中执行并行搜索提高速度。
3. 优点
- 跨平台(Java开发)
- 低时延(1s内)
- 分布式,易于集成和拓展
- 通过Elastic的网关概念,容易创建完整备份
- 处理多租户容易
- 响应Json,兼容各个语言
- 支持大部分文档类型,但不支持文本呈现的文档类型
4. 缺点
- 处理请求和响应仅支持Json
- 不可使用CSV、XML等格式
- 存在一些难遇到的坑
5. 应用场景
- 搜索框
- 分析日志(大量数据)
- 使用机器学习自动建模数据的行为
- 作为存储引擎自动化工作流
- 作为地理信息系统管理、集成、和分析空间信息
- 生物信息学研究工具存储和处理遗传数据
posted @
2021-09-10 15:15
wosperry
阅读(
62)
评论()
编辑
收藏
举报