亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

詳解hbase與hive數(shù)據(jù)同步

 更新時(shí)間:2017年09月27日 10:39:06   投稿:mrr  
這篇文章主要介紹了詳解hbase與hive數(shù)據(jù)同步的相關(guān)資料,需要的朋友可以參考下

hive的表數(shù)據(jù)是可以同步到impala中去的。一般impala是提供實(shí)時(shí)查詢操作的,像比較耗時(shí)的入庫(kù)操作我們可以使用hive,然后再將數(shù)據(jù)同步到impala中。另外,我們也可以在hive中創(chuàng)建一張表同時(shí)映射hbase中的表,實(shí)現(xiàn)數(shù)據(jù)同步。

下面,筆者依次進(jìn)行介紹。

一、impala與hive的數(shù)據(jù)同步

首先,我們?cè)趆ive命令行執(zhí)行showdatabases;可以看到有以下幾個(gè)數(shù)據(jù)庫(kù):

然后,我們?cè)趇mpala同樣執(zhí)行showdatabases;可以看到:

目前的數(shù)據(jù)庫(kù)都是一樣的。

下面,我們?cè)趆ive里面執(zhí)行create databaseqyk_test;創(chuàng)建一個(gè)數(shù)據(jù)庫(kù),如下:

然后,我們使用qyk_test這個(gè)數(shù)據(jù)庫(kù)創(chuàng)建一張表,執(zhí)行create table user_info(idbigint, account string, name string, age int) row format delimitedfields terminated by ‘\t';如下:

此時(shí),我們已經(jīng)在hive這邊創(chuàng)建好了,然后直接在impala這邊執(zhí)行showdatabases;可以看到:

連qyk_test這個(gè)數(shù)據(jù)庫(kù)都沒有。

接下來(lái),我們?cè)趇mpala執(zhí)行INVALIDATEMETADATA;然后再查詢可以看到:

數(shù)據(jù)庫(kù)和表都會(huì)同步過(guò)來(lái)。

好了,筆者來(lái)做個(gè)總結(jié):

如果在hive里面做了新增、刪除數(shù)據(jù)庫(kù)、表或者數(shù)據(jù)等更新操作,需要執(zhí)行在impala里面執(zhí)行INVALIDATEMETADATA;命令才能將hive的數(shù)據(jù)同步impala;

如果直接在impala里面新增、刪除數(shù)據(jù)庫(kù)、表或者數(shù)據(jù),會(huì)自動(dòng)同步到hive,無(wú)需執(zhí)行任何命令。

二、hive與hbase的數(shù)據(jù)同步

首先,我們?cè)趆base中創(chuàng)建一張表create ‘user_sysc', {NAME =>‘info'},然后,我們?cè)趆ive中執(zhí)行

CREATEEXTERNALTABLEuser_sysc(keyint,valuestring)ROWFORMATSERDE 'org.apache.hadoop.hive.hbase.HBaseSerDe'
STORED BY'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITHSERDEPROPERTIES( 'serialization.format'='\t','hbase.columns.mapping'=':key,info:value','field.delim'='\t')
TBLPROPERTIES ('hbase.table.name'='user_sysc')

創(chuàng)建一張外部表指向hbase中的表,然后,我們?cè)趆ive執(zhí)行insert into tableuser_sysc select id,name fromuser_info;入一步份數(shù)據(jù)到user_sysc可以看到:

然后,我們?cè)趆base里面執(zhí)行scan‘user_sysc'可以看到:

接下來(lái),我們?cè)趆base里面執(zhí)行deleteall ‘user_sysc',‘11'刪掉一條數(shù)據(jù),如下:

然后,我在hive里面查詢看看,如下:

說(shuō)明自動(dòng)同步過(guò)來(lái)了。因此,只要?jiǎng)?chuàng)建hive表時(shí),與hbase中的表做了映射,表名和字段名可以不一致,之后無(wú)論在hbase中新增刪除數(shù)據(jù)還是在hive中,都會(huì)自動(dòng)同步。

如果在hive里面是創(chuàng)建的外部表需要在hbase中先創(chuàng)建,內(nèi)部表則會(huì)在hbase中自動(dòng)創(chuàng)建指定的表名。

因?yàn)閔ive不支持刪除等操作,而hbase里面比較方便,所以我們可以采用這種方式。

相關(guān)文章

  • Kafka Java Producer代碼實(shí)例詳解

    Kafka Java Producer代碼實(shí)例詳解

    這篇文章主要介紹了Kafka Java Producer代碼實(shí)例詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • Java中的concurrenthashmap集合詳細(xì)剖析

    Java中的concurrenthashmap集合詳細(xì)剖析

    這篇文章主要介紹了Java中的concurrenthashmap集合詳細(xì)剖析,有參構(gòu)造后第一次put時(shí)會(huì)進(jìn)行初始化,由源碼可知,會(huì)先判斷所傳入的容量是否>=最大容量的一半,如果滿足條件,就會(huì)將容量修改為最大值,反之則會(huì)將容量改為所傳入數(shù)*1.5+1,需要的朋友可以參考下
    2023-11-11
  • 詳解Java日志正確使用姿勢(shì)

    詳解Java日志正確使用姿勢(shì)

    這篇文章主要介紹了Java日志正確使用姿勢(shì),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • Java打亂ArrayList生成一個(gè)隨機(jī)序列列表

    Java打亂ArrayList生成一個(gè)隨機(jī)序列列表

    有時(shí)候會(huì)需要將一個(gè)ArrayList或者數(shù)組中的數(shù)字打亂,方便后續(xù)使用,比如隨機(jī)出題、答案選項(xiàng)打亂、連線題打亂、抽獎(jiǎng)號(hào)碼打亂等等,把我自己寫的一段代碼貼出來(lái)分享給大家。
    2016-08-08
  • Maven中jar包沖突原理與解決辦法

    Maven中jar包沖突原理與解決辦法

    這篇文章主要介紹了Maven中jar包沖突原理與解決辦法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • MybatisPlus處理大表查詢的實(shí)現(xiàn)步驟

    MybatisPlus處理大表查詢的實(shí)現(xiàn)步驟

    在實(shí)際工作中當(dāng)指定查詢數(shù)據(jù)過(guò)大時(shí),我們一般使用分頁(yè)查詢的方式一頁(yè)一頁(yè)的將數(shù)據(jù)放到內(nèi)存處理,本文主要介紹了MybatisPlus處理大表查詢的實(shí)現(xiàn)步驟,感興趣的可以了解一下
    2024-08-08
  • JavaWeb入門教程之分頁(yè)查詢功能的簡(jiǎn)單實(shí)現(xiàn)

    JavaWeb入門教程之分頁(yè)查詢功能的簡(jiǎn)單實(shí)現(xiàn)

    這篇文章主要介紹了JavaWeb入門教程之分頁(yè)查詢功能的簡(jiǎn)單實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • Java中Sentinel框架詳解

    Java中Sentinel框架詳解

    Sentinel是一個(gè)高可用、高擴(kuò)展、高穩(wěn)定性的開源流量控制和熔斷降級(jí)框架,可以在分布式系統(tǒng)中實(shí)現(xiàn)實(shí)時(shí)的流量控制,防止系統(tǒng)因流量過(guò)大導(dǎo)致系統(tǒng)崩潰和服務(wù)降級(jí),Sentinel面向所有的Java應(yīng)用,本文就給大家詳細(xì)介紹一下Java中Sentinel框架,需要的朋友可以參考下
    2023-06-06
  • java 取模與取余的區(qū)別說(shuō)明

    java 取模與取余的區(qū)別說(shuō)明

    這篇文章主要介紹了java 取模與取余的區(qū)別說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-10-10
  • 十分簡(jiǎn)單易懂的Java應(yīng)用程序性能調(diào)優(yōu)技巧分享

    十分簡(jiǎn)單易懂的Java應(yīng)用程序性能調(diào)優(yōu)技巧分享

    這篇文章主要介紹了十分簡(jiǎn)單易懂的Java性能調(diào)優(yōu)技巧分享,具有一定參考價(jià)值,需要的朋友可以了解下。
    2017-11-11

最新評(píng)論