Elasticsearch数据全量导入HBase,scroll的正确使用姿势,HBase数据到Hive

1、代码

相关文章:
elasticsearch数据到hive、es-hadoop6.3.0
Hbase Java API简单实践(附源代码解释)
按照惯例,先上代码
(代码还有很多可以优化的地方,待正式工作了,有了更海量的需要处理的数据,更复杂的应用场景,我再回来更新此文。)

只贴出Es用scroll方式读取数据以及批量写入HBase的核心代码,其他工具类、方法,比如es、HBase配置、client、connection获取就不贴了。

1-1、es获取数据
package ipl.restapi.service.bigdata.es;

import ipl.restapi.util.EsOpenCloseUtils;
import ipl.restapi.util.EsPropertiesUtils;
import ipl.restapi.util.HbaseApiUtils;
import org.apache.hadoop.hbase.client.Connection;
import org.elasticsearch.action.search.SearchResponse;
import org.elasticsearch.client.Client;
import org.elasticsearch.client.transport.TransportClient;
import org.elasticsearch.common.unit.TimeValue;
import org.elasticsearch.search.SearchHits;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;

/**
 * <p>pakage: ipl.restapi.service.bigdata.es</p>
 * 
 * descirption: es检索某一所以全量数据,导入HBase
 *
 * @author wanghai
 * @version V1.0
 * @since <pre>2018/8/15 下午9:03</pre>
 */
public class ReadFromEs {
   
    private static final Logger LOGGER = LoggerFactory.getLogger("es");
    private static final int SCROLL_SIZE = 10000;
    private static final int 
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
基于ElasticsearchHBase的分布式数据存储系统是一种结合了Elasticsearch的全文搜索能力和HBase的高可靠性与扩展性的解决方案。 首先,Elasticsearch是一个开源的全文搜索引擎,具有快速、实时的搜索和分析能力。它使用倒排索引的方式组织数据,可以高效地处理大量的文本数据,并提供丰富的搜索功能,如全文搜索、过滤、聚合等。而HBase是一个面向大规模数据集的分布式数据库,可以在成百上千台机器上存储和处理海量数据,具有高可靠性和可扩展性。 基于ElasticsearchHBase的分布式数据存储系统结合了两者的优势。首先,它使用HBase作为底层存储引擎,保证了数据的高可靠性和扩展性。HBase使用分布式文件系统存储数据,可以将数据分散到不同的节点上,保证了数据的冗余和容错能力。同时,它也支持水平扩展,可以根据数据量的增长动态地增加节点,满足不断增长的数据需求。 其次,系统利用Elasticsearch的全文搜索能力对数据进行索引与搜索。在数据写入HBase之前,会先经过预处理,将数据转换为适合Elasticsearch索引的格式,并建立相应的索引。当用户进行搜索时,系统会将搜索请求发送给Elasticsearch服务进行处理,并返回相关的搜索结果。 此外,系统还提供了数据同步和数据迁移的功能。通过定期的数据同步任务,可以将HBase中的数据同步到Elasticsearch中,保持两者数据的一致性。同时,也支持数据的增量同步,可以根据用户配置的规则将新增或更新的数据自动同步到Elasticsearch中。对于已有的数据,系统也提供了数据迁移的功能,可以将已有数据导入Elasticsearch中,以便进行全文搜索等相关操作。 总的来说,基于ElasticsearchHBase的分布式数据存储系统利用了两者各自的优势,同时提供了高可靠性、高扩展性和全文搜索等功能,适用于处理大规模数据集和对搜索有高要求的场景。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值