1.1 一次性创建索引
l、 删除全索引
效率很高,可以关闭Solr后,直接删除Data文件。
2、 重新创建全索引
拉取HBase中全数据,分批次创建索引。
1.2 增量创建索引
1、触发器发送数据到Solr建索引。
配置并使用HBase触发器功能,配置实现如下:
alter 'angelHbase', METHOD => 'table_att', 'coprocessor' => '/home/hbase/hbase-0.94.18-security/lib/solrHbase.jar|solrHbase.test.SorlIndexCoprocessorObserver|1073741823|'
alter 'angelHbase', METHOD =>'table_att_unset', NAME => 'coprocessor$1'
然 后编写SorlIndexCoprocessorObserver extendsBaseRegionObserver,重写postPut方法。在postPut方法中,需要正确地读出写入HBase的数据结构及数 据,然后转化为相应的SolrInputDocument,再使用ConcurrentUpdateSolrServer方式向Solr服务器发送 SolrInputDocument数据,具体使用方法如之前博文介绍Solr的使用方法、性能对比所示。
注意:需要把Solr相关的jar包放入lib下,并且删除版本不一致的jar(有很多)。更新jar后要重启HBase才能生效。
具体性能如之前博文介绍Solr的使用方法、性能对比所示。 http://www.cnblogs.com/wgp13x/p/3742653.html http://www.cnblogs.com/wgp13x/p/3748764.html
2、触发器发送数据到RabbitMQ,Solr端从RabbitMQ获取数据建索引。
embedded方式官方不推荐使用。而使用ConcurrentUpdateSolrServer性能与上种方式并无区别。
3、 建议:
在HBase中只存储1列,存储值为PB或Json串。(存在由bean到SolrInputDocument转化的类及annotation,以及各自的压缩算法)
或 者:插入HBase的数据均以Bytes.toBytes(String)类型存储,如long型数值2存储为Bytes.toBytes(""+2)。 否则在postPut()中需要知道每列的具体类型才能生成正确的SolrInputDocument,因为SolrInputDocument中需要的 是String类型的数据。
具体的postPut方法代码,如有需要可以留言或直接跟本人联系。 http://www.cnblogs.com/wgp13x/
1.3 HBase与Solr系统架构设计
使用HBase搭建结构数据存储云,用来存储海量数据;使用SolrCloud集群用来搭建搜索引擎,将要查找的结构化数据的ID查找出来,只配置它存储ID。
1、具体流程:
wd代表用户write data写数据,从用户提交写数据请求wd1开始,经历wd2,写入MySQL数据库,或写入结构数据存储云中,wd3,提交到Solr集群中,从而依据业务需求创建索引。
rd代表用户read data读数据,从用户提交读数据请求rd1开始,经历rd2,直接读取MySQL中数据,或向Solr集群请求搜索服务,rd3,向Solr集群请求得 到的搜索结果为ID,再向结构数据存储云中通过ID取出数据,最后返回给用户结果。
转发地址:http://itindex.net/detail/49796-solr-hbase-%E6%9E%B6%E6%9E%84
相关推荐
Solr 和 HBase 是两种在大数据领域广泛应用的...在实际应用中,这通常涉及到 Solr 的配置、索引建立、HBase 的表设计以及两者的交互逻辑等技术细节。通过学习和掌握这些知识,开发者可以构建出高性能的大数据解决方案。
"大数据时代数据库-云HBase架构生态及实践" 在大数据时代,数据库面临着巨大的挑战,如何解决这些挑战成为数据库架构师和开发者需要解决的问题。本文将从云HBase架构生态及实践角度,讨论大数据时代数据库的挑战和...
HBase的架构设计包括存储和计算分离,这允许资源根据需求进行弹性扩展,并降低了系统的复杂性。分布式Region Server和分布式索引(如ES和Solr)的分离,使得存储和检索功能独立,优化了性能。此外,HBase还支持多种...
### HBase原理与设计 #### 一、HBase概述 HBase是一个开源的、高性能的分布式存储系统,基于Hadoop之上构建。它提供了一个高度可靠、面向列的存储方案,适用于处理大规模的数据集。HBase的设计特点包括: 1. **高...
【大数据时代数据库-云HBase架构&生态&实践】阿里云的高级技术专家封神(曹龙)在DTCC2018大会上分享了关于大数据数据库的最新实践,特别是聚焦于云HBase的架构、生态及其在实际业务中的应用。云HBase作为大数据存储...
综上所述,这份资料是学习和理解HBase与Solr集成的宝贵资源,适合对大数据搜索和存储感兴趣的开发者、架构师,以及希望提升系统性能的IT专业人士。通过深入学习,读者能够掌握如何在大规模数据场景下,利用HBase的强...
课时2:HBase架构与索引算法剖析 课时3:HBase建库建表与CRUD实战 课时4:基于HBase Client API的CRUD实战 课时5:批处理与扫描器实战 课时6:使用Ganglia监控HBase 课时7:过滤器实战之比较过滤器 课时8:过滤器...
根据提供的文件信息,我们可以从以下几个方面来探讨与Hadoop、Storm、HBase和Spark相关的知识点。 ### Hadoop #### 1. Hadoop简介 Hadoop是一个开源软件框架,用于分布式存储和处理大型数据集。它由Apache基金会...
在这样的架构下,HBase负责存储大量结构化数据,Solr则负责提供丰富的搜索功能。hbase-solr-rest-client则是这种集成模式的客户端工具,它通过REST接口,简化了开发者从Solr获取初步结果,并进一步从HBase获取详细...
作者Nishant Garg凭借其在软件架构和开发领域的丰富经验,特别是在Java、Java Enterprise Edition、SOA、Spring、Hibernate、Hadoop、Hive、Flume、Sqoop、Oozie、Spark、Shark、YARN、Impala、Kafka、Storm、Solr/...
在云计算环境中,HBase架构需要考虑如何与云技术更好地融合,实现弹性资源使用、成本降低、资源复用、提高系统的弹性和扩展性等目标。云HBase架构需要利用分布式存储和计算资源,实现存储和计算分离,以及冷、温、热...
对于实时查询的需求,书中可能会介绍HBase与Solr或Elasticsearch的集成,实现高效全文搜索。 HBase的表设计策略是学习的重点之一,书中的内容可能涵盖如何选择合适的行键和列族,以及如何利用时间戳来管理版本化...
其次,平台采用分布式存储和检索层架构设计,通过HBase实现分布式存储,利用Solr进行高效的数据检索,以及Phoenix提供SQL查询功能,为实时数据处理和分析提供了强大支持。此外,平台还集成了HDFS和OSS(对象存储服务...
#### Solr的架构设计 Solr的设计理念非常注重性能和扩展性,具体包括: - **动态模式**:Solr允许用户定义灵活的数据模型,无需预先指定所有字段类型。 - **强大的查询语言**:Solr支持复杂的查询条件组合,使得用户...
HBase是Apache软件基金会的一个开源项目,它构建在Hadoop之上,专为大规模数据存储而设计。以下是对HBase关键知识点的详细阐述: 1. **HBase概述**:HBase是一种非关系型数据库(NoSQL),基于谷歌的Bigtable模型,...
书籍内容以Hrishikesh的软件架构经验为基础,涵盖Apache Hadoop和Solr的使用和最佳实践,适合软件工程师、数据分析师和架构师阅读。 10. 版权和免责声明 书籍的版权归属于Packt Publishing公司。书籍包含的所有内容...
文件还提到了HBase生态组件,包括用于时间序列数据存储的OpenTSDB,图数据库HGraphDB,地理空间数据的GeoMesa,以及用于全文检索的Solr和ES等,这些组件与HBase紧密集成,共同构成了一个强大的大数据处理平台。...
8. **生态组件**:HBase生态系统包括Phoenix(SQL接口)、HBase Coprocessors(在RegionServer端执行的自定义逻辑)、HBase Indexer(用于Solr和Elasticsearch的索引)等,这些工具极大地扩展了HBase的功能。...