日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【数据仓库】Hive环境搭建和基础用法

發布時間:2024/9/30 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【数据仓库】Hive环境搭建和基础用法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

簡介

Hive是基于Hadoop的一個數據倉庫工具,用來進行數據提取、轉化、加載,是一個可以對Hadoop中的大規模存儲的數據進行查詢和分析存儲的組件,Hive數據倉庫工具能將結構化的數據文件映射為一張數據庫表,并提供SQL查詢功能,能將SQL語句轉變成MapReduce任務來執行,使用成本低,可以通過類似SQL語句實現快速MapReduce統計,使MapReduce變得更加簡單,而不必開發專門的MapReduce應用程序。hive十分適合對數據倉庫進行統計分析。

一、Hive基礎簡介

1、基礎描述

Hive是基于Hadoop的一個數據倉庫工具,用來進行數據提取、轉化、加載,是一個可以對Hadoop中的大規模存儲的數據進行查詢和分析存儲的組件,Hive數據倉庫工具能將結構化的數據文件映射為一張數據庫表,并提供SQL查詢功能,能將SQL語句轉變成MapReduce任務來執行,使用成本低,可以通過類似SQL語句實現快速MapReduce統計,使MapReduce變得更加簡單,而不必開發專門的MapReduce應用程序。hive十分適合對數據倉庫進行統計分析。

2、組成與架構

用戶接口:ClientCLI、JDBC訪問Hive、WEBUI瀏覽器訪問Hive。

元數據:Hive將元數據存儲在數據庫中,如mysql、derby。Hive中的元數據包括表的名字,表的列和分區以及屬性,表的屬性(是否為外部表等),表的數據所在目錄等。

驅動器:基于解釋器、編輯器、優化器完成HQL查詢語句從詞法分析、語法分析、編譯、優化以及查詢計劃的生成。

執行器引擎:ExecutionEngine把邏輯執行計劃轉換成可以運行的物理計劃。

Hadoop底層:基于HDFS進行存儲,使用MapReduce進行計算,基于Yarn的調度機制。

Hive收到給客戶端發送的交互請求,接收到操作指令(SQL),并將指令翻譯成MapReduce,提交到Hadoop中執行,最后將執行結果輸出到客戶端。

二、Hive環境安裝

準備安裝包

hive-3.1.2,依賴Hadoop集群環境,位置放在 hadoop102 服務上。

解壓重命名

tar -zxvf apache-hive-hive-3.1.2-bin.tar.gz mv apache-hive-hive-3.1.2-bin/ hive-3.1.2

修改配置文件

創建配置文件

[codingce@linuxmxz conf]$ pwd /opt/module/hive-3.1.2/conf [codingce@linuxmxz conf]$ mv hive-env.sh.template hive-env.sh

添加內容

[codingce@linuxmxz conf]$ vim hive-env.sh export HADOOP_HOM=/opt/module/hadoop-3.1.1 export HIVE_CONF_DIR=/opt/module/hive-3.1.2/conf

[codingce@linuxmxz conf]$ vim /etc/profile.d/my_env.sh

# JAVA_HOME export JAVA_HOME=/opt/module/jdk1.8.0_221 export PATH=$PATH:$JAVA_HOME/bin export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar#HADOOP_HOME export HADOOP_HOME=/opt/module/hadoop-3.1.1 export PATH=$PATH:$HADOOP_HOME/bin export PATH=$PATH:$HADOOP_HOME/sbin#ZOOKEEPER_HOME export ZOOKEEPER_HOME=/opt/module/zookeeper-3.5.6 export PATH=.:$HADOOP_HOME/bin:$ZOOKEEPER_HOME/bin:$JAVA_HOME/bin:$PATH# HBASE_HOME export HBASE_HOME=/opt/module/hbase-2.2.7 export PATH=$HBASE_HOME/bin:$PATH# HIVE_HOME export HIVE_HOME=/opt/module/hive-3.1.2 export PATH=$PATH:$HIVE_HOME/bin

配置內容一個是Hadoop路徑,和hive配置文件路徑。

創建hive-site.xml

[codingce@linuxmxz conf]$ vim hive-site.xml <?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration><property><name>hive.metastore.warehouse.dir</name><value>/usr/local/hadoop/hive/warehouse</value><description>location of default database for the warehouse</description></property><property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://localhost:3306/metastore</value><description>JDBC connect string for a JDBC metastore</description></property><property><name>javax.jdo.option.ConnectionDriverName</name><value>com.mysql.cj.jdbc.Driver</value><description>Driver class name for a JDBC metastore</description></property><property><name>javax.jdo.option.ConnectionPassword </name><value>1234567</value></property><property><name>javax.jdo.option.ConnectionUserName</name><value>root</value><description>Username to use against metastore database</description></property> </configuration>

lib文件夾導入mysql jar 包

Hadoop配置

首先啟動hdfs和yarn;然后在HDFS上創建/tmp和/user/hive/warehouse兩個目錄并修改賦予權限。

hadoop fs -mkdir /tmp hadoop fs -mkdir -p /user/hive/warehouse hadoop fs -chmod g+w /tmp hadoop fs -chmod g+w /user/hive/warehouse

啟動Hive

hive

基礎操作

查看數據庫

hive> show databases ;

選擇數據庫

hive> use default;

查看數據表

hive> show tables;

創建數據庫使用

hive> create database mytestdb; hive> show databases ; default mytestdb hive> use mytestdb;

創建表

create table hv_user (id int, name string, age int);

查看表結構

hive> desc hv_user; id int name string age int

添加表數據

insert into hv_user values (1, "test-user", 23);

查詢表數據

hive> select * from hv_user ;

注意:這里通過對查詢日志的觀察,明顯看出Hive執行的流程。

刪除表

hive> drop table hv_user ;

退出Hive

hive> quit;

查看Hadoop目錄

# hadoop fs -ls /user/hive/warehouse /user/hive/warehouse/mytestdb.db

通過Hive創建的數據庫和數據存儲在HDFS上。

總結

以上是生活随笔為你收集整理的【数据仓库】Hive环境搭建和基础用法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。