一、项目概览
二、项目整体架构流程
1:项目的数据来源可以是通过爬虫到互联网上采集的数据,也可以是企业数据库中的内部数据
2:根据数据的来源不同,使用不同的程序将数据入库到HBase,实现海量数据存储
3:针对HBase中的数据在ES中建立索引。
注意:并不是把HBase中数据的完整内容全部在ES中建立索引,只需要将检索用到的那些字段在ES中建立索引即可。例如:HBase存储的原始数据有20个字段,在ES可能只需要存储5个字段即可,具体的存储细节在后面会详细分析。
4:在数据展现模块中提供仿百度搜索功能。
三、ES和HBase数据同步的三种方案
针对此项目,有一个核心功能点,如何在ES中同步对HBase中的数据建立索引?
大致有下面这几种方案:
1:方案1
在将原始数据入库HBase的时候,同时在ES中对数据建立索引,此时可以把入库HBase和ES的代码放在一个事务中,保证HBase和ES的数据一致性。
这种方案的优