湖南seo網(wǎng)站設(shè)計(jì)友情鏈接如何添加
Hive架構(gòu)
Hive部署
VMware虛擬機(jī)部署
一、在node1節(jié)點(diǎn)安裝mysql數(shù)據(jù)庫(kù)
二、配置Hadoop
三、下載 解壓Hive
四、提供mysql Driver驅(qū)動(dòng)
五、配置Hive
六、初始化元數(shù)據(jù)庫(kù)
七、啟動(dòng)Hive(Hadoop用戶)
chown -R hadoop:hadoop apache-hive-3.1.3-bin hive
阿里云部署
一、創(chuàng)建云數(shù)據(jù)庫(kù)庫(kù)
二、配置Hive
數(shù)據(jù)庫(kù)連接地址粘貼到配置文件中
通過(guò)yum install -y mysql 安裝mysql客戶端,用于mysql命令的輸入
UCloud云部署
一、創(chuàng)建UDB數(shù)據(jù)庫(kù)
二、創(chuàng)建一個(gè)Hive數(shù)據(jù)庫(kù)(需要通過(guò)yum install -y mysql提前安裝命令)
三、初始化
============================================================
Hive操作
通過(guò)ps -ef | grep 40991更詳細(xì)查看
或者通過(guò)jps查看
通過(guò)瀏覽器可以查看
Hive客戶端
啟動(dòng)Hive客戶端兩種方式:
①、bin/hive即Hive的Shell客戶端,直接寫SQL
②、bin/hive --service hiveserver2 HiveServer2屬于Hive內(nèi)置的一個(gè)ThriftServer服務(wù),提供Thrift端口供其他客戶端鏈接:
可以鏈接ThriftServer的客戶端有:
- Hive內(nèi)置的beeline客戶端工具(命令行工具)
- 第三方圖形化SQL工具DataGrip 或DBeaver或者Navicat
HiveServer2 & Beeline(內(nèi)置客戶端)
①、啟動(dòng)beeline
②、連接hive2
DataGrip & DBeaver(第三方客戶端)
①、DataGrip使用
②、進(jìn)行連接
③、寫SQL語(yǔ)句
①、DBeaver使用
②、構(gòu)建驅(qū)動(dòng)
刪除原來(lái)的驅(qū)動(dòng)
添加自己本地下載好的文件
③、寫好SQL,回車可以運(yùn)行
數(shù)據(jù)庫(kù)操作
表分類:
內(nèi)部表
create table myhive.stu(id int,name string); # 在myhive數(shù)據(jù)庫(kù)中創(chuàng)建stu表# 指定分隔創(chuàng)建表 避免在下面查看表內(nèi)容出現(xiàn)id和name不可見(jiàn)字符導(dǎo)致的緊湊
create table if not exists stu2(id int,name string) row format delimited fields terminated by '\t';insert into myhive.stu values(1,'jordan'),(2,"kobe");
外部表
一、將數(shù)據(jù)上傳到外部表所在的目錄(先有表,再有數(shù)據(jù))
二、先存在數(shù)據(jù),后創(chuàng)建表
兩者對(duì)比:
內(nèi)外部表轉(zhuǎn)換:
①、先查看表類型
②、轉(zhuǎn)換
數(shù)據(jù)的導(dǎo)入:
①、使用LOAD語(yǔ)法,從外部將數(shù)據(jù)加載到Hive內(nèi)
CREATE TABLE myhive.test_load(dt string comment '時(shí)間(時(shí)分秒)',user_id string comment '用戶ID',word string comment '搜索詞',url string comment '用戶訪問(wèn)地址'
) comment '搜索引擎日志表' ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t';
# 本地linux系統(tǒng)上傳
load data local inpath '/home/hadoop/search_log.txt' into table myhive.test_load;# 本質(zhì)上是文件移動(dòng)
load data inpath '/tmp/search_log.txt' overwrite into table myhive.test_load
【基于HDFS進(jìn)行l(wèi)oad加載數(shù)據(jù),元數(shù)據(jù)文件會(huì)消失(本質(zhì)是被移動(dòng)到表所在的目錄中)】
②、從其他表加載數(shù)據(jù)
數(shù)據(jù)的導(dǎo)出:
①、將hive表中的數(shù)據(jù)導(dǎo)出到其他任意目錄,例如linux本地磁盤,hdfs,mysql等
②、通過(guò)hive shell方式導(dǎo)出
分區(qū)表
構(gòu)建分區(qū)表
分桶表
分桶表創(chuàng)建
修改表操作
復(fù)雜類型
array數(shù)組
map映射
struct結(jié)構(gòu)
常用的基本查詢
正則表達(dá)式
UNION聯(lián)合
隨機(jī)采樣
虛擬列
函數(shù)
案例:
一、需求:
數(shù)據(jù)
二、ETL數(shù)據(jù)清洗:
三、指標(biāo)
四、可視化
①、下載FineBI
②、將Hive驅(qū)動(dòng)包放到FineBI安裝目錄下,以及安裝隔離插件
③、建立數(shù)據(jù)庫(kù)連接
④、構(gòu)建數(shù)據(jù)集(選擇數(shù)據(jù)庫(kù)表)
添加組件和儀表盤