HBase 实践 | 如何破解 HBase+ElasticSearch 组
合使用遇到的难题
DataFunTalk
2021-05-22 原文
以下文章来源于 HBase 技术社区 ,作者天梧
HBase 技术社区
.
HBase 技术交流社区,共同探讨 HBase 技术
一.背景介绍
HBase 与 ElasticSearch 是现代应用在处理海量数据的技术架构会经常被使
用的两款产品,其中 HBase 是一个分布式 KV 系统,具有灵活 Schema、水
平扩展、低成本、高并发的优势,但在复杂查询、分析能力方面相对比较弱,
特别适合海量半 结构化、结构化数据的 低成本存储和在线高并 发查询。而
ElasticSearch 是一个分布式搜索引擎,具有灵活 Schema、水平扩展、检
索快的优势,但在成本、查询并发、一致性方面相对不足,特别适合海量半结
构化、结构化数据的复杂查询和全文检索。
HBase 与 ElasticSearch 两者有类似的灵活数据结构和分布式扩展性,又有
各自鲜明的特点,一个擅长存,一个擅长取,为了取长补短,所以业界会经常
将两者结合使用,把 Elasticsearch 作为 HBase 中部分字段的索引存储,从
而同时实现低成本存储+高并发吞吐+高效检索的效果,典型场景如日志、监
控、账单、用户画像等。
二.HBase 与 ES 的组合使用
当应用决定组合使用 HBase+ES 的时候,核心要解决数据写入、数据查询这
两个问题,即数据如何准确写入到两个系统,数据又如何从两个系统查询合
并,目前常见的方案有三种: