Hbase二级索引设计方案(ES2.4.4)(15页).doc
《Hbase二级索引设计方案(ES2.4.4)(15页).doc》由会员分享,可在线阅读,更多相关《Hbase二级索引设计方案(ES2.4.4)(15页).doc(16页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-Hbase二级索引设计方案(ES2.4.4)-第 12 页目 录1方案介绍1概述1Hbase1Elasticsearch1Hbase Observer2方案目标2方案流程32ELASTICSEARCH安装部署4安装准备4服务器准备4新建用户4调整系统参数4JDK安装5ES安装及配置6解压缩6配置6启动及验证7集群验证8Head插件安装9简介9安装9Marvel插件安装10简介10安装(每个节点)10Kibana安装10简介10安装11验证12IK分词器安装(每个节点安装)12验证分词效果133数据同步程序配置14多数据源的数据同步14创建索引mapping14编码实现16Observer的部
2、署16测试174常见问题汇总181 方案介绍1.1 概述1.1.1 HbaseHbase是运行在Hadoop上的NoSQL数据库,它是一个分布式的和可扩展的大数据仓库,也就是说HBase能够利用HDFS的分布式处理模式,并从Hadoop的MapReduce程序模型中获益。除去Hadoop的优势,HBase本身就是十分强大的数据库,它能够融合key/value存储模式带来实时查询的能力,以及通过MapReduce进行离线处理或者批处理的能力。总的来说,Hbase能够让你在大量的数据中查询记录,也可以从中获得综合分析报告。然而,随着在HBase系统上应用的驱动,人们发现Global-Rowkey-
3、Indexing不再满足应用的需求。单一的通过Rowkey检索数据的方式,不再满足更多应用的需求,由于hbase基于行健有序存储,在查询时使用Rowkey十分高效,然后想要实现关系型数据库那样可以随意组合的多条件查询、查询总记录数、分页等就比较麻烦了,所以需要我们自己来实现二级索引来满足业务的复杂查询,及实时检索。1.1.2 ElasticsearchElasticsearch是一个实时的分布式搜索和分析引擎。它可以帮助你用前所未有的速度去处理大规模数据。它可以用于全文搜索,结构化搜索以及分析;Elasticsearch是一个建立在全文搜索引擎 Apache Lucene基础上的搜索引擎,可以
4、说Lucene是当今最先进,最高效的全功能开源搜索引擎框架。Elasticsearch并不仅仅是Lucene这么简单,它不但包括了全文搜索功能,还可以进行以下工作:l 分布式实时文件存储,并将每一个字段都编入索引,使其可以被搜索。l 实时分析的分布式搜索引擎。l 可以扩展到上百台服务器,处理PB级别的结构化或非结构化数据。1.1.3 Hbase ObserverHBase 0.92版本后推出了Coprocessor - 协处理器,一个工作在Master/RegionServer中的框架,能运行用户的代码,从而灵活地完成分布式数据处理的任务。Coprocessor包含两个组件,一个是EndPoi
5、nt(类似关系型数据库的存储过程),用以加快特定查询的响应,另一个就是Observer(类似关系型数据库的触发器)。Observer也分为几个类型,其中RegionObserver提供了一组表数据操作的钩子函数,覆盖了Get、Put、Scan、Delete等操作(通常有pre和post两种情况,表示在操作发生之前或发生之后),我们可以通过重载这些钩子函数,利用RegionServer实现特定的数据处理需求。基于RegionObserver的钩子函数,我们可以覆盖Put及Delete方法来实现Hbase和ES直接的数据同步。1.2 方案目标1、 实现对HBase高性能的范围检索2、 保证数据的低
6、冗余3、 保持数据的一致性1.3 方案流程1、 数据进入HBase时,利用Observer同步进入ES索引库;2、 客户端根据查询条件,利用ES提供的Java API对ES发起查询请求;3、 ES返回符合条件的RowKey;4、 客户端再根据RowKey去HBase获取数据;5、 最后HBase返回结果集。2 ElasticSearch安装部署2.1 安装准备2.1.1 服务器准备为搭建ElasticSearch集群,准备了三台服务器,主机IP分别为:04 Cento.105 2.1.2 新建用户ES不支持root用户启动,分别登录服务器新建es用户,并把以下安装包上传到/home/es文件夹
7、下:新建用户并设置密码,然后给用户文件夹所有权:useradd espasswd eschown es /home/es2.1.3 调整系统参数2.1.3.1 内核参数调整# 增加下面的内容 = 65536 = 262144# 执行命令sysctl -p2.1.3.2 资源参数调整# 修改* soft nofile 32768* hard nofile 65536* soft nproc 2048* hard nproc 40962.1.3.3 调整线程数找到如下内容:* soft nproc 1024#修改为* soft nproc 20482.2 JDK安装登录es用户,进入/home/e
8、s文件夹,解压JDK安装包cd /home/estar -zxvf vim /etc/profile# 增加环境变量export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/*.jarexport PATH=$JAVA_HOME/bin:$PATH注:ES2.x需要JDK支持,官网下载1.7_71版本JDK。2.3 ES安装及配置2.3.1 解压缩cd /home/estar -zxvf 2.3.2 配置vim /home/es/elasticsearch-注:clu 集群名称,各个节点的值必须一致 节点名称,各个节点的值不能一致network.host 本机ip地
9、址 提供http链接的端口号设置master节点的初始列表,通过这些节点自动发现新加入集群的节点设置这个参数来保证集群中的节点可以知道其它N个有master资格的节点,官方推荐设置成 N/2 + 1,N是集群中master节点的数量。# 修改ES内存vim /home/es/elasticsearch-/bin/elasticsearch# ES_HEAP_SIZE=8g 注:调整内存大小最好不要超过总资源一半,也不要超过32G2.3.3 启动及验证cd /home/es/elasticsearch-/bin./elasticsearch # 控制台启动./elasticsearch d #
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Hbase 二级 索引 设计方案 ES2 4.4 15
限制150内