hive-1.2集羣搭建

Linux-MySQL-5.6安裝

Hadoop-2.5.1-HA搭建

Hbase-1.1.3-HA搭建

hive與hbase整合版本兼容說明

HIVE 0.9.0,HBASE整合至少需要HBASE 0.92,HIVE的早期版本與HBase 0.89/0.90一起使用。
hive1.X將保持與HBase 0.98.x和更低版本兼容。hive2x將與HBASE 1 x兼容。希望使用Hive 1.x與HBase 1.x一起工作的消費者將需要自己編譯Hive 1.x流代碼。

這裏沒有編譯依然可以使用,可能存在未知的兼容性問題

先停止zookeeper、hbase和hadoop

zkServer.sh stop

stop-dfs.sh

stop-hbase.sh

node3 ~]#

tar -zxvf apache-hive-1.2.1-bin.tar.gz

mv apache-hive-1.2.1-bin /home/hive-1.2

cd /home/hive-1.2/conf

cp hive-default.xml.template hive-site.xml

配置環境變量 vi ~/.bash_profile    source ~/.bash_profile

export HIVE_HOME=/home/hive-1.2
export PATH=$PATH:$HIVE_HOME/bin

從configuration標籤開始刪除到configuration標籤結束,編輯模式

.,$-1d

1、配置元數據+ZK

vi hive-site.xml

<configuration>  

<property>  

  <name>javax.jdo.option.ConnectionURL</name>  

  <value>jdbc:mysql://node4:3306/hive_db</value>  

</property>  

<property>  

  <name>javax.jdo.option.ConnectionDriverName</name>  

  <value>com.mysql.jdbc.Driver</value>  

</property>  

<property>  

  <name>javax.jdo.option.ConnectionUserName</name>  

  <value>root</value>  

</property>  

<property>  

  <name>javax.jdo.option.ConnectionPassword</name>  

  <value>123456</value>  

</property>  

<property>

<name>hbase.zookeeper.quorum</name>

<value>node3,node4,node5</value>

</property>

</configuration>  

2、jar包配置,在hive的conf目錄下執行

rm -rf /home/hadoop-2.5.1/share/hadoop/yarn/lib/jline-0.9.94.jar

cp ../lib/jline-2.12.jar /home/hadoop-2.5.1/share/hadoop/yarn/lib/

cp ../lib/hive-hbase-handler-1.2.1.jar /home/hbase-1.1.3/lib/

再把hbase中的所有的jar,cp到hive/lib

# -n 表示對於目標路徑下已經存在的文件,則不復制過去

cp -n /home/hbase-1.1.3/lib/*.jar /home/hive-1.2/lib/

3、在hive中配置MySQL的驅動包

cp mysql-connector-java-5.1.26-bin.jar /home/hive-1.2/lib/

node4節點上創建數據庫

create database hive_db;

4、拷貝配置集羣,切換到home目錄下

scp -r hive-1.2/ root@node4:/home/

scp -r hive-1.2/ root@node5:/home/

scp -r hive-1.2/ root@node6:/home/

node4、5、6三個節點在hive的conf目錄下都執行以下操作

rm -rf /home/hadoop-2.5.1/share/hadoop/yarn/lib/jline-0.9.94.jar

cp ../lib/jline-2.12.jar /home/hadoop-2.5.1/share/hadoop/yarn/lib/

cp ../lib/hive-hbase-handler-1.2.1.jar /home/hbase-1.1.3/lib/

5、按照流程啓動hadoop 和 hbase

切換到hive的bin目錄下,啓動hive

hive

一般來講,HiveServer2是用來提交查詢的,也就是用來訪問數據的。MetaStore纔是用來訪問元數據的。

CliDriver是SQL本地直接編譯,再訪問MetaStore,提交作業,是重客戶端。
BeeLine是把SQL提交給HiveServer2,由HiveServer2編譯,然後訪問MetaStore,提交作業,是輕客戶端

Beeline 要與HiveServer2配合使用,支持嵌入模式和遠程模式

啓動HiverServer2 , ./bin/hiveserver2 

啓動Beeline 

beeline> !connect jdbc:hive2://localhost:10000

默認 用戶名就是登錄賬號 密碼爲空

** Hive基本數據操作

-- 更改表的字段名、類型  
Alter table dw_coogle_amazing.t_amazing_send_use_statistics change column today_get_count  today_get_count  bigint comment '今日領取數'
Alter table dw_coogle_amazing.t_amazing_send_use_statistics change column discount_degree  discount_degree  decimal(11,2) comment '優惠折扣'
ALTER TABLE dw_coogle_amazing.t_grow_send_engine_rule CHANGE COLUMN avg_discount avg_discount decimal(19,4)  comment '平均折扣'
ALTER TABLE dw_coogle_amazing.t_grow_send_engine_rule CHANGE COLUMN rebuy_rate rebuy_rate decimal(19,4)  comment '復購率'
Alter table dw_coogle_marketing.t_amazing_olap_v2 change column member_id  member_id  int  

-- 新增字段  
alter table dw_coogle_operation.t_shop_olap_domain_v2 add columns(immediate_count int comment '')  

-- 刪除hive視圖  
drop view kylin_view.t_amazing_olap_another  

-- 刪除表  
drop table dw_coogle_amazing_order.t_amazing_olap  

-- 刪除表數據  
truncate table dw_coogle_marketing.t_amazing_olap_v2  

--  刪除分區  
alter table dw_coogle_marketing.t_amazing_olap_v2 drop partition (dt>='2019-07-01')  

-- 插入數據  
insert into  dw_coogle_marketing.t_amazing_olap_v2 partition(dt = '2019-09-01') values(...)  
insert into  dw_coogle_marketing.t_amazing_olap_v2 values(...) 
 
-- 修改表名
ALTER TABLE dw_coogle_operation.t_dispatch_rang_tea RENAME TO dw_coogle_operation.t_coogle_shop_dispatch_rang_tea

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章