2023-02-09
模式 數(shù)據(jù) hive 使用 數(shù)據(jù)庫
Hive是大數(shù)據(jù)開發(fā)的時(shí)候必須要用到的工具之一,也是學(xué)習(xí)大數(shù)據(jù)的時(shí)候最重要的知識(shí)組件之一。因?yàn)槭褂肏ive來進(jìn)行數(shù)據(jù)的處理,可以非常簡單的完成。那么使用Hive的時(shí)候,我們需要先安裝Hive。Hive在安裝、運(yùn)行的時(shí)候,有著本地模式和遠(yuǎn)程模式的區(qū)分,那么什么是本地模式?什么又是遠(yuǎn)程模式呢?
我們首先需要知道的是,Hive其實(shí)并不是數(shù)據(jù)庫,而是對(duì)HDFS上的結(jié)構(gòu)化的數(shù)據(jù)文件進(jìn)行的映射,將結(jié)構(gòu)化的數(shù)據(jù)映射成為一張表,然后就可以使用類似SQL的方式,對(duì)文件中的數(shù)據(jù)進(jìn)行處理。那么在這個(gè)過程中,有一些信息需要被記錄下來:
●數(shù)據(jù)文件映射成為了什么表?叫什么名字?
●表中有什么字段?叫什么名字?是什么類型?
●表存在于什么數(shù)據(jù)庫中?
●...
這些信息都是需要被記錄下來的,否則我們下一次啟動(dòng)Hive的時(shí)候豈不是要重新映射?而這樣的信息我們稱為“元數(shù)據(jù)”。Hive需要將元數(shù)據(jù)保存起來,默認(rèn)保存在derby的數(shù)據(jù)庫中。不過在實(shí)際使用中,我們經(jīng)常會(huì)將元數(shù)據(jù)保存在其他的數(shù)據(jù)庫中,例如MySQL。因此,我們就可以將這個(gè)存儲(chǔ)元數(shù)據(jù)的數(shù)據(jù)庫為“元數(shù)據(jù)庫”。
如果你會(huì)MySQL的話,應(yīng)該知道無論在Windows、macOS還是Linux中,我們想要使用MySQL數(shù)據(jù)庫的話,需要先啟動(dòng)MySQL的服務(wù)。例如在Linux中,我們需要使用 systemctl start mysqld 來啟動(dòng)MySQL的服務(wù),然后才可以使用 mysql 的命令連接到這個(gè)服務(wù),登錄到MySQL客戶端進(jìn)行操作。
那么,我們?cè)谑褂肏ive的時(shí)候,其實(shí)也是這樣的原理。如果需要使用Hive的話,必需先啟動(dòng)Hive的元數(shù)據(jù)服務(wù),Hive的元數(shù)據(jù)服務(wù)分為兩種:metastore 和 hiveserver2 。但是無論是哪一種元數(shù)據(jù)服務(wù),都是要連接到元數(shù)據(jù)庫的。
本地模式 和 遠(yuǎn)程模式
其實(shí)本地模式和遠(yuǎn)程模式只有一個(gè)區(qū)別:客戶端和服務(wù)端是否在同一臺(tái)機(jī)器上!
●本地模式:客戶端和服務(wù)端在同一個(gè)節(jié)點(diǎn)上,就是本地模式
●遠(yuǎn)程模式:客戶端和服務(wù)端不在同一個(gè)節(jié)點(diǎn)上,就是遠(yuǎn)程模式
其實(shí)在實(shí)際使用中,無論是本地模式還是遠(yuǎn)程模式,基本上沒有什么區(qū)別。只要能夠保證連接到的是同一個(gè)元數(shù)據(jù)庫,那么無論是本地模式還是遠(yuǎn)程模式,都是可以正常的使用的。
開班時(shí)間:2021-04-12(深圳)
開班盛況開班時(shí)間:2021-05-17(北京)
開班盛況開班時(shí)間:2021-03-22(杭州)
開班盛況開班時(shí)間:2021-04-26(北京)
開班盛況開班時(shí)間:2021-05-10(北京)
開班盛況開班時(shí)間:2021-02-22(北京)
開班盛況開班時(shí)間:2021-07-12(北京)
預(yù)約報(bào)名開班時(shí)間:2020-09-21(上海)
開班盛況開班時(shí)間:2021-07-12(北京)
預(yù)約報(bào)名開班時(shí)間:2019-07-22(北京)
開班盛況Copyright 2011-2023 北京千鋒互聯(lián)科技有限公司 .All Right 京ICP備12003911號(hào)-5 京公網(wǎng)安備 11010802035720號(hào)