excel表格如何拉长
981
2022-05-29
一、介绍
HBase有多种方式把数据load进去,最直接的方式是通过HBase Client API逐条写入,或通过MapReduce调用TableOutputFormat方法写入,但它们都不是最有效的方式。HBase还提供了另一种比较有效的加载数据方式:ImportTsv工具将数据转换成HBase内部的组织格式输出成HFile文件;completebulkload工具将ImportTsv生成的文件直接加载到HBase集群内。使用BulkLoad 将会比使用简单HBase API方式占用更少的CPU和网络资源。
2.HBase BulkLoad原理
HBase BulkLoad包含两个主要步骤:
通过MapReduce任务来准备数据;
将数据加载到HBase中;
2.1 MR任务准备数据
MapReduce的执行过程分为Map端、Reduce端。Map函数输出的
HBase BulkLoad也需要经过Map端和Reduce端。其中Map端主要完成数据转换,根据内部算法将输入文件进行拆分,每个拆分会对应一个Map任务来进行处理;每个Map任务按行读取文件的内容,将每行数据转换为HBase相关对象,最终保存在本地文件系统。
Reduce端主要是读取本地文件系统,然后按照HBase底层的HFile文件格式生产相应文件,并保存在HDFS目录。
2.2 加载数据
通过MapReduce程序生产了HFile文件,但是并没有导入HBase中。这时需要通过completebulkload工具,将生产的HFile文件导入已经运行的HBase中,从而客户可以通过HBase获取到相关数据。
大体上分为两个阶段:
扫描出HDFS上的待导入的HFile。
针对每个HFile,加载到制定的HBase Region对应的数据目录中。
三. bulkload实验样例如附件所示
附件: bulkload实验开源.docx 343.04KB 下载次数:4次
附件: bulkload实验_华为.docx 0B 下载次数:3次
EI企业智能 FusionInsight HBase
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。