国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作

這篇具有很好參考價值的文章主要介紹了黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

p48、51、52
https://www.bilibili.com/video/BV1WY4y197g7/?p=48

思考

Hive是分布式運行的框架還是單機運行的?

Hive是單機工具,只需要部署在一臺服務(wù)器即可。
Hive雖然是單機的,但是它可以提交分布式運行的MapReduce程序運行。

規(guī)劃

我們知道Hive是單機工具后,就需要準備一臺服務(wù)器供Hive使用即可。
同時Hive需要使用元數(shù)據(jù)服務(wù),即需要提供一個關(guān)系型數(shù)據(jù)庫,我們也選擇一臺服務(wù)器安裝關(guān)系型數(shù)據(jù)庫即可。

所以:

服務(wù) 機器
Hive本體 部署在node1
元數(shù)據(jù)服務(wù)所需的關(guān)系型數(shù)據(jù)庫(課程選擇最為流行的MySQL) 部署在node1

為了簡單起見,都安裝到node1服務(wù)器上。

安裝MySQL數(shù)據(jù)庫

我們在node1節(jié)點使用yum在線安裝MySQL5.7版本。

在root用戶下執(zhí)行

更新密鑰

rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

安裝Mysql yum庫

rpm -Uvh http://repo.mysql.com//mysql57-community-release-el7-7.noarch.rpm

yum安裝Mysql

yum -y install mysql-community-server

黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作,大數(shù)據(jù),大數(shù)據(jù),學(xué)習(xí),筆記
啟動Mysql設(shè)置開機啟動

systemctl start mysqld
systemctl enable mysqld

檢查Mysql服務(wù)狀態(tài)

systemctl status mysqld

第一次啟動mysql,會在日志文件中生成root用戶的一個隨機密碼,使用下面命令查看該密碼

grep 'temporary password' /var/log/mysqld.log

黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作,大數(shù)據(jù),大數(shù)據(jù),學(xué)習(xí),筆記

修改root用戶密碼

進入mysql

mysql -uroot -p

然后輸入密碼,回車。

如果你想設(shè)置簡單密碼,需要降低Mysql的密碼安全級別
密碼安全級別低

set global validate_password_policy=LOW;

密碼長度最低4位即可

set global validate_password_length=4;

然后就可以用簡單密碼了(課程中使用簡單密碼,為了方便,生產(chǎn)中不要這樣)

修改root本機登錄密碼為123456

ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

/usr/bin/mysqladmin -u root password ‘root’
修改遠程登錄密碼,打開root用戶從任意地方的主機遠程登錄的權(quán)限

grant all privileges on *.* to root@"%" identified by '123456' with grant option;  

刷新權(quán)限

flush privileges;

黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作,大數(shù)據(jù),大數(shù)據(jù),學(xué)習(xí),筆記
ctrl+D退出mysql。
重新進入mysql驗證密碼是否修改完成。

mysql -uroot -p

黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作,大數(shù)據(jù),大數(shù)據(jù),學(xué)習(xí),筆記

配置Hadoop

Hive的運行依賴于Hadoop(HDFS、MapReduce、YARN都依賴)
同時涉及到HDFS文件系統(tǒng)的訪問,所以需要配置Hadoop的代理用戶
即設(shè)置hadoop用戶允許代理(模擬)其它用戶

切換到hadoop用戶

su - hadoop
cd /export/server/hadoop/etc/hadoop/
vim core-site.xml

添加如下內(nèi)容在Hadoop的core-site.xml的<configuration></configuration>之間,并分發(fā)到其它節(jié)點,且重啟HDFS集群。

<property>
	<name>hadoop.proxyuser.hadoop.hosts</name>
	<value>*</value>
</property>

<property>
	<name>hadoop.proxyuser.hadoop.groups</name>
	<value>*</value>
</property>

下載解壓Hive

下載Hive安裝包:
http://archive.apache.org/dist/hive/hive-3.1.3/apache-hive-3.1.3-bin.tar.gz
將下載好的文件拖拽上傳
黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作,大數(shù)據(jù),大數(shù)據(jù),學(xué)習(xí),筆記

解壓到node1服務(wù)器的:/export/server/內(nèi)

tar -zxvf apache-hive-3.1.3-bin.tar.gz -C /export/server/

建立軟鏈接

ln -s /export/server/apache-hive-3.1.3-bin /export/server/hive

黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作,大數(shù)據(jù),大數(shù)據(jù),學(xué)習(xí),筆記

提供MySQL Driver包

下載MySQL驅(qū)動包:
https://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.34/mysql-connector-java-5.1.34.jar

將下載好的驅(qū)動jar包,放入:Hive安裝文件夾的lib目錄內(nèi)

mv mysql-connector-java-5.1.34.jar /export/server/apache-hive-3.1.3-bin/lib/

配置Hive

在Hive的conf目錄內(nèi),新建hive-env.sh文件,填入以下環(huán)境變量內(nèi)容:

cd /export/server/hive/conf
mv hive-env.sh.template hive-env.sh
vim hive-env.sh
export HADOOP_HOME=/export/server/hadoop
export HIVE_CONF_DIR=/export/server/hive/conf
export HIVE_AUX_JARS_PATH=/export/server/hive/lib

在Hive的conf目錄內(nèi),新建hive-site.xml文件,填入以下內(nèi)容:

vim hive-site.xml
<configuration>
	<property>
		<name>javax.jdo.option.ConnectionURL</name>
		<value>jdbc:mysql://node1:3306/hive?createDatabaseIfNotExist=true&amp;useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF-8</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>hive.server2.thrift.bind.host</name>
		<value>node1</value>
	</property>

	<property>
		<name>hive.metastore.uris</name>
		<value>thrift://node1:9083</value>
	</property>

	<property>
		<name>hive.metastore.event.db.notification.api.auth</name>
		<value>false</value>
	</property>
</configuration>

初始化元數(shù)據(jù)庫

支持,Hive的配置已經(jīng)完成,現(xiàn)在在啟動Hive前,需要先初始化Hive所需的元數(shù)據(jù)庫。
在MySQL中新建數(shù)據(jù)庫:hive

mysql -uroot -p
show databases;
CREATE DATABASE hive CHARSET UTF8;
show databases;

黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作,大數(shù)據(jù),大數(shù)據(jù),學(xué)習(xí),筆記
退出mysql

exit

執(zhí)行元數(shù)據(jù)庫初始化命令:

cd /export/server/hive/bin
./schematool -initSchema -dbType mysql -verbos

初始化成功后,會在MySQL的hive庫中新建74張元數(shù)據(jù)管理的表。

mysql -uroot -p
show databases;
use hive
show tables;

黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作,大數(shù)據(jù),大數(shù)據(jù),學(xué)習(xí),筆記
退出mysql

exit

啟動Hive(使用Hadoop用戶)

修改文件權(quán)限

chown -R hadoop:hadoop apache-hive-3.1.3-bin hive

黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作,大數(shù)據(jù),大數(shù)據(jù),學(xué)習(xí),筆記

  • 確保Hive文件夾所屬為hadoop用戶
  • 創(chuàng)建一個hive的日志文件夾:
su - hadoop
mkdir /export/server/hive/logs
cd /export/server/hive
  • 啟動元數(shù)據(jù)管理服務(wù)(必須啟動,否則無法工作)

前臺啟動:

bin/hive --service metastore 

后臺啟動:

nohup bin/hive --service metastore >> logs/metastore.log 2>&1 &

查看日志

tail -f  metastore.log

黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作,大數(shù)據(jù),大數(shù)據(jù),學(xué)習(xí),筆記

  • 啟動客戶端,二選一(當前先選擇Hive Shell方式)
    確保metastore、hdfs和yarn都已經(jīng)啟動
    Hive Shell方式(可以直接寫SQL):
bin/hive

Hive ThriftServer方式(不可直接寫SQL,需要外部客戶端鏈接使用):

bin/hive --service hiveserver2

黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作,大數(shù)據(jù),大數(shù)據(jù),學(xué)習(xí),筆記

Hive體驗

首先,確保啟動了Metastore服務(wù)、hdfs和yarn集群。

start-dfs.sh
start-yarn.sh
mapred --daemon start historyserver
nohup /export/server/hive/bin/hive --service metastore >> /export/server/hive/logs/metastore.log 2>&1 &

可以執(zhí)行:

cd /export/server/hive
bin/hive

進入到Hive Shell環(huán)境中,可以直接執(zhí)行SQL語句。
創(chuàng)建表

CREATE TABLE test(id INT, name STRING, gender STRING);
show tables;

插入數(shù)據(jù)

insert into test values(1,'mm','nan');
INSERT INTO test VALUES(2,'王力紅','男'),(3,'李華','女');

會執(zhí)行得有點慢。。。

查詢數(shù)據(jù)

SELECT gender, COUNT(*) AS cnt FROM test GROUP BY gender;

黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作,大數(shù)據(jù),大數(shù)據(jù),學(xué)習(xí),筆記

驗證SQL語句啟動的MapReduce程序
打開YARN的WEB UI頁面查看任務(wù)情況:http://node1:8088
黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作,大數(shù)據(jù),大數(shù)據(jù),學(xué)習(xí),筆記

ctrl+c退出hive。

驗證Hive的數(shù)據(jù)存儲
Hive的數(shù)據(jù)存儲在HDFS的:/user/hive/warehouse中
黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作,大數(shù)據(jù),大數(shù)據(jù),學(xué)習(xí),筆記

HiveServer2

在啟動Hive的時候,除了必備的Metastore服務(wù)外,有2種方式使用Hive:

  • 方式1:
bin/hive

即Hive的Shell客戶端,可以直接寫SQL

  • 方式2:
bin/hive --service hiveserver2

后臺執(zhí)行腳本:

nohup bin/hive --service hiveserver2 >> logs/hiveserver2.log 2>&1 &

bin/hive --service metastore,啟動的是元數(shù)據(jù)管理服務(wù)
bin/hive --service hiveserver2,啟動的是HiveServer2服務(wù)

HiveServer2是Hive內(nèi)置的一個ThriftServer服務(wù),提供Thrift端口供其它客戶端鏈接
可以連接ThriftServer的客戶端有:

  • Hive內(nèi)置的 beeline客戶端工具(命令行工具)
  • 第三方的圖形化SQL工具,如DataGrip、DBeaver、Navicat等

HiveServer2服務(wù)

Hive的客戶端體系如下
黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作,大數(shù)據(jù),大數(shù)據(jù),學(xué)習(xí),筆記

啟動

在hive安裝的服務(wù)器上,首先啟動metastore服務(wù),然后啟動hiveserver2服務(wù)。

nohup bin/hive --service metastore >> logs/metastore.log 2>&1 &
nohup bin/hive --service hiveserver2 >> logs/hiveserver2.log 2>&1 &
ps -ef|grep 32094
ps -ef|grep 32429

黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作,大數(shù)據(jù),大數(shù)據(jù),學(xué)習(xí),筆記
黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作,大數(shù)據(jù),大數(shù)據(jù),學(xué)習(xí),筆記
hiveserver2監(jiān)聽了10000端口,金對外提供的thrift端口,默認10000

netstat -anp|grep 10000

黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作,大數(shù)據(jù),大數(shù)據(jù),學(xué)習(xí),筆記

Beeline

在node1上使用beeline客戶端進行連接訪問。需要注意hiveserver2服務(wù)啟動之后需要稍等一會才可以對外提供服務(wù)。
Beeline是JDBC的客戶端,通過JDBC協(xié)議和Hiveserver2服務(wù)進行通信,協(xié)議的地址是:jdbc:hive2://node1:10000

/export/server/hive/bin/beeline
! connect jdbc:hive2://node1:10000

輸入用戶名和密碼

show databases;

黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作,大數(shù)據(jù),大數(shù)據(jù),學(xué)習(xí),筆記文章來源地址http://www.zghlxwxcb.cn/news/detail-630528.html

到了這里,關(guān)于黑馬大數(shù)據(jù)學(xué)習(xí)筆記4-Hive部署和基本操作的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 大數(shù)據(jù)課程F3——HIve的基本操作

    文章作者郵箱:yugongshiye@sina.cn? ? ? ? ? ? ? 地址:廣東惠州 ??掌握HIve的基本SQL語句和注意問題; ??掌握HIve的表結(jié)構(gòu); ??掌握HIve的數(shù)據(jù)類型; ??掌握HIve的基礎(chǔ)函數(shù)和窗口函數(shù); 1. 通過hive -e的方式來執(zhí)行指定的SQL,例如hive -e \\\'create database demo;\\\'。 2. 通過hive -f的方式

    2024年02月14日
    瀏覽(22)
  • 大數(shù)據(jù)開發(fā)之Hive(基本概念、安裝、數(shù)據(jù)類型、DDL數(shù)據(jù)定義、DML數(shù)據(jù)操作)

    大數(shù)據(jù)開發(fā)之Hive(基本概念、安裝、數(shù)據(jù)類型、DDL數(shù)據(jù)定義、DML數(shù)據(jù)操作)

    1.1.1 Hive產(chǎn)生背景 HDFS來存儲海量的數(shù)據(jù)、MapReduce來對海量數(shù)據(jù)進行分布式并行計算、Yarn來實現(xiàn)資源管理和作業(yè)調(diào)度。但是面對海量的數(shù)據(jù)和負責(zé)的業(yè)務(wù)邏輯,開發(fā)人員要編寫MR對數(shù)據(jù)進行統(tǒng)計分析難度極大,所以就產(chǎn)生了Hive這個數(shù)倉工具。Hive可以幫助開發(fā)人員將SQL語句轉(zhuǎn)化

    2024年01月17日
    瀏覽(68)
  • HIVE 表 DLL 基本操作(一)——第1關(guān):Create/Alter/Drop 數(shù)據(jù)庫

    第1關(guān):Create/Alter/Drop 數(shù)據(jù)庫 任務(wù)描述 本關(guān)任務(wù):根據(jù)編程要求對數(shù)據(jù)庫進行相關(guān)操作。 相關(guān)知識 為了完成本關(guān)任務(wù),你需要掌握: 1.如何創(chuàng)建數(shù)據(jù)庫; 2.如何修改數(shù)據(jù)庫; 3.如何刪除數(shù)據(jù)庫。 Create 創(chuàng)建數(shù)據(jù)庫 數(shù)據(jù)庫本質(zhì)上是一個目錄或命名空間,用于解決表命名沖突。

    2024年02月03日
    瀏覽(22)
  • Linux學(xué)習(xí)筆記——基本操作命令

    Linux學(xué)習(xí)筆記——基本操作命令

    ??Linux 操作系統(tǒng)的 Shell 作為操作系統(tǒng)的外殼,為用戶提供使用操作系統(tǒng)的接口。它是命令語言、命令解釋程序及程序設(shè)計語言系統(tǒng)。 ??Shell 是用戶和 Linux 內(nèi)核之間的接口程序,如果把 Linux 內(nèi)核想象成一個球體的中心,Shell 就是圍繞內(nèi)核的外層。當從 Shell 或其他程序向

    2024年03月12日
    瀏覽(31)
  • 王道操作系統(tǒng)學(xué)習(xí)筆記(1)——操作系統(tǒng)基本概念

    王道操作系統(tǒng)學(xué)習(xí)筆記(1)——操作系統(tǒng)基本概念

    本文介紹了操作系統(tǒng)的基本概念,文章中的內(nèi)容來自B站王道考研操作系統(tǒng)課程,想要完整學(xué)習(xí)的可以到B站官方看完整版。 操作系統(tǒng):系統(tǒng)資源的管理者(處理機管理、存儲器管理、文件管理、設(shè)備管理) 交互式命令(在終端中輸命令)和批處理命令(Shell腳本) 并發(fā): 宏

    2024年02月10日
    瀏覽(25)
  • Unity | HDRP高清渲染管線學(xué)習(xí)筆記:基本操作

    Unity | HDRP高清渲染管線學(xué)習(xí)筆記:基本操作

    目錄 一、場景整體環(huán)境光強度 1.HDRI Sky 2.Shadows 二、屏幕后處理效果(Post Processing) 1.Exposure 2.Post-processing/Tonemapping 三、抗鋸齒 四、添加光源 1.Light Explorer窗口 2.光照探針組 3.反射探針 4.烘焙光照貼圖 本文主要是了解HDRP基本操作: 如何為一個已經(jīng)擺放好模型的場景添加環(huán)境光等

    2024年02月16日
    瀏覽(21)
  • stata學(xué)習(xí)筆記(一)stata入門與基本操作

    stata學(xué)習(xí)筆記(一)stata入門與基本操作

    這里開個新坑,主題有關(guān)stata使用以及定量分析入門,主要內(nèi)容來自于之前與之后的課程學(xué)習(xí)、作業(yè)以及資料查詢整理,主要目的是對個人學(xué)習(xí)過程的一個記錄,方便日后回顧。 方法1:點擊文件選項,選擇導(dǎo)入,根據(jù)數(shù)據(jù)類型選擇即可; 方法2::點擊進入數(shù)據(jù)編輯器界面,點

    2024年02月21日
    瀏覽(26)
  • Matlab基本操作和矩陣輸入(郭彥甫視頻學(xué)習(xí)筆記)

    Matlab基本操作和矩陣輸入(郭彥甫視頻學(xué)習(xí)筆記)

    who/whos ? ? ? ? 查看工作區(qū)當前變量 clear ? ? ? ? 清空工作區(qū)的所有變量(慎用) clear? valuable ? ? ? ? 清除變量valuable clc ? ? ? ? ? ? 清空命令行窗口 clear all ? ? ? ? 清除工作區(qū)所有變量 close all ? ? ? ? 關(guān)閉所有顯示的圖片 一行代碼太長需要換行寫可以在后面加 ...?

    2024年02月06日
    瀏覽(22)
  • 從零開始學(xué)習(xí)Netty - 學(xué)習(xí)筆記 - NIO基礎(chǔ) - ByteBuffer: 簡介和基本操作

    從零開始學(xué)習(xí)Netty - 學(xué)習(xí)筆記 - NIO基礎(chǔ) - ByteBuffer: 簡介和基本操作

    1.1. Channel Buffer Channel 在Java NIO(New I/O)中,“Channel”(通道)是一個重要的概念,用于 在非阻塞I/O操作中進行數(shù)據(jù)的傳輸 。Java NIO提供了一種更為靈活和高效的I/O處理方式,相比于傳統(tǒng)的I/O,它具有更好的性能和可擴展性。 常見的Java NIO中的通道類型: FileChannel(文件通道

    2024年02月20日
    瀏覽(25)
  • 黑馬程序員Docker快速入門到項目部署(學(xué)習(xí)筆記)

    黑馬程序員Docker快速入門到項目部署(學(xué)習(xí)筆記)

    目錄 一、Docker簡介 二、安裝Docker 2.1、卸載舊版 2.2、配置Docker的yum庫 2.3、安裝Docker 2.4、啟動和校驗 2.5、配置鏡像加速 2.5.1、注冊阿里云賬號 2.5.2、開通鏡像服務(wù) 2.5.3、配置鏡像加速 三、快速入門 3.1、部署MYSQL 3.2、命令解讀 四、Docker基礎(chǔ) 4.1、常見命令 4.1.1、命令介紹 4.1

    2024年01月25日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包