天堂国产午夜亚洲专区-少妇人妻综合久久蜜臀-国产成人户外露出视频在线-国产91传媒一区二区三区

HBase實(shí)戰(zhàn)(1):數(shù)據(jù)導(dǎo)入方式

發(fā)布時(shí)間:2017-01-02 15:33

  本文關(guān)鍵詞:HBase實(shí)戰(zhàn),由筆耕文化傳播整理發(fā)布。


HBase實(shí)戰(zhàn)(1):數(shù)據(jù)導(dǎo)入方式

更新:2014-07-14    編輯:基山伯    來(lái)源:谷普網(wǎng)    人氣:加載中...    字號(hào):|

標(biāo)簽:數(shù)據(jù)  實(shí)戰(zhàn)  方式  導(dǎo)入  HBase  百度搜索

*). Client API實(shí)現(xiàn)

發(fā)揮HBase的Client API來(lái)導(dǎo)入, 是最簡(jiǎn)易學(xué)的方式.

評(píng): HBase的client api編程, 相對(duì)還是簡(jiǎn)單的. 唯一需要注意的是, 若在本地編寫測(cè)試用列, 需要在本地配置hbase集群相關(guān)的域名, 使得域名和ip地址能對(duì)應(yīng)上, 切記.
至于hbase client的讀寫優(yōu)化, 我們放到下面的博文進(jìn)行講解.

*). 批量導(dǎo)入Bulkload
HBase的bulkload數(shù)據(jù)導(dǎo)入, 分兩個(gè)階段:
#). 階段一: 發(fā)揮使用HFileOutputFormat的MapReduce, 直接生成HBase的內(nèi)部數(shù)據(jù)存儲(chǔ)款式HFile. 
其原理: HFileOutputFormat發(fā)揮configureIncrementalLoad函數(shù), 基于當(dāng)前table的各個(gè)region邊界自動(dòng)匹配MapReduce的分區(qū)類TotalOrderPartitioner, 這樣生成的HFile都對(duì)應(yīng)一個(gè)具體的region, 此時(shí)效率最高效.
#). 階段二: 發(fā)揮completebulkload工具, 將生成的HFile文件熱載入hbase集群.

1. importtsv數(shù)據(jù)導(dǎo)入演示
hbase自帶了importtsv工具, 其對(duì)tsv款式的數(shù)據(jù)文件供給了默認(rèn)的支持.
數(shù)據(jù)文件data.tsv(以'\t'分割數(shù)據(jù)文件)

1

2

3

4

1001    lilei   17  13800001111

1002    lily    16  13800001112

1003    lucy    16  13800001113

1004    meimei  16  13800001114

上傳至hdfs目錄 /test/hbase/tsv/input

  • sudo -u hdfs hdfs dfs -mkdir -p /test/hbase/tsv/input 
  • sudo -u hdfs hdfs dfs -put data.tsv /test/hbase/tsv/input/ 
  • 嘗試構(gòu)建的HBase表student

  • 執(zhí)行importtsv

  • 沒有指定-Dimporttsv.bulk.output, importtsv默認(rèn)行為是才有client api的put來(lái)導(dǎo)入數(shù)據(jù)于hbase, 指定-Dimporttsv.bulk.output, 則需要下一步

  • 數(shù)據(jù)驗(yàn)證:
    scan 'student', {LIMIT => 10}

    HBase實(shí)戰(zhàn)(1):數(shù)據(jù)導(dǎo)入方式

    2. 自定義bulkload數(shù)據(jù)導(dǎo)入演示
    數(shù)據(jù)文件準(zhǔn)備, 以之前data.tsv文件為準(zhǔn)
    構(gòu)建HBase表student_new

  • 編寫MapReduce代碼, 如下所示:

    注: 發(fā)揮maven的assembly插件, 生成胖jar包(就是把依賴的zookeeper和hbase jar包都打到該MapReduce包中), 否則的話, 就需要用戶靜態(tài)配置, 在Hadoop的class中添加zookeeper和hbase的配置文件和相關(guān)jar包.

    最終的jar包為 mybulk.jar, 主類名為com.m8zmyp.mmxf.MyBulkload, 生成HFile, 增量熱載入hbase

    數(shù)據(jù)驗(yàn)證:

  • HBase實(shí)戰(zhàn)(1):數(shù)據(jù)導(dǎo)入方式

    *). 發(fā)揮Hive Over Hbase

    構(gòu)建Hbase表hbase_student

  • 構(gòu)建hive外表hive_student, 并對(duì)應(yīng)hbase_student表

    數(shù)據(jù)導(dǎo)入驗(yàn)證:
    1. 創(chuàng)建數(shù)據(jù)外表

    2. 數(shù)據(jù)通過(guò)hive_student導(dǎo)入到hbase_student表中

  • INSERT OVERWRITE TABLE hive_student SELECT rowkey, name, age, phone FROM data_student; 

  • 備注: 若遇到j(luò)ava.lang.IllegalArgumentException: Property value must not be null異常, 需要hive-0.13.0及以上版本支持
    詳見: https://issues.apache.org/jira/browse/HIVE-5515

    原文鏈接:

    【文章整理:彭凡 說(shuō)很網(wǎng) 】


    分享到空間 | 挑錯(cuò)文字 | 打印本文 | 下載此文章


      本文關(guān)鍵詞:HBase實(shí)戰(zhàn),,由筆耕文化傳播整理發(fā)布。



    本文編號(hào):231916

    資料下載
    論文發(fā)表

    本文鏈接:http://sikaile.net/wenshubaike/mishujinen/231916.html


    Copyright(c)文論論文網(wǎng)All Rights Reserved | 網(wǎng)站地圖 |

    版權(quán)申明:資料由用戶bc0b8***提供,本站僅收錄摘要或目錄,作者需要?jiǎng)h除請(qǐng)E-mail郵箱bigeng88@qq.com