分布式數(shù)據(jù)倉庫hive學(xué)習(xí)筆記

———沉寂了一個(gè)寒假建车,沒有更新一篇文章椒惨,仿佛一切都是陌生的。所見的的人领斥,所看的景。

????


hive的服務(wù)組成:

??????? Hive是建立在Hadoop平臺(tái)上的月洛,本身沒有特定的數(shù)據(jù)存儲(chǔ)模式,也不會(huì)為數(shù)據(jù)建立索引导而。數(shù)據(jù)以任意的形式存儲(chǔ)在Hdfs上隔崎,或者以特定分類的形式存儲(chǔ)在分布式數(shù)據(jù)庫HBase(Nosql的一種)。在創(chuàng)建Hive表時(shí)候指明數(shù)據(jù)的列分隔符和行分隔符即可解析存儲(chǔ)在HDFS和HBase上的數(shù)據(jù)虚缎。

???????? hive 建立在Hadoop平臺(tái)上钓株。主要是提供一個(gè)sql解析的過程。把外部sql命令解析成一個(gè)mapreduce作業(yè)計(jì)劃轴合,并把按照該計(jì)劃生成的Mapreduce任務(wù)交給Hadoop集群處理。所以题涨,要進(jìn)行hive 處理总滩,必須要保證Hadoop 集群正常啟動(dòng)。

??????? 簡而言之 hive是一個(gè)數(shù)據(jù)倉庫工具席函,作用是可以將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張數(shù)據(jù)庫表冈涧,并提供簡單查詢功能,可以將sql語句轉(zhuǎn)化為Mapreduce任務(wù)進(jìn)行督弓,是在Hadoop上的數(shù)據(jù)庫基礎(chǔ)架構(gòu)。數(shù)據(jù)倉庫面向主題是集成的溶推,不可更新 ,不隨時(shí)間改變的虱痕。

???????? hive的運(yùn)行方式底層走的是maoreduce辐赞,可任意實(shí)現(xiàn)自定義的mapper 和reduce 任務(wù)、hive是SQL解析引擎响委,它將SQL語句解析翻譯成M/PJob管理 運(yùn)行在Hadoop上執(zhí)行

?????? hive表其實(shí)就是HDFS的目錄赘风。按照表名把文件夾分開,如果是分區(qū)表邀窃,則分區(qū)值是文件夾,可以直接在Mr/job中使用這些數(shù)據(jù)鞍历。hive 相當(dāng)于是Hadoop客服端工具肪虎,部署時(shí)候不放在,不一定集群上扇救,可以放在某個(gè)節(jié)點(diǎn)上爵政。

按照原理標(biāo)準(zhǔn)圖word手繪圖如下:




hive的安裝
步驟:

1.上傳安裝包并解壓

2.配置環(huán)境變量,指定安裝路徑, 要配置 path hive_home等

3饱岸,安裝MySQL 數(shù)據(jù)庫。

我在安裝MySQL數(shù)據(jù)庫遇到問題了汤锨,先是用的是tmp包百框,也就是源碼包,不能·達(dá)到預(yù)期結(jié)果柬泽,然后改成rmp二進(jìn)制包,安裝成功后锨并,但是hive不能與MySQL建立連接,問題出在MySQL密碼與hive-site.xml設(shè)置的不一樣導(dǎo)致無法建立連接解幼,之后修改密碼連接成功

包警,之所以安裝MySQL是因?yàn)閔ive 默認(rèn)的數(shù)據(jù)庫是Derby數(shù)據(jù)庫,其與MySQL數(shù)據(jù)庫比較存在缺陷台汇。

hive shell

hive shell是運(yùn)行在Hadoop環(huán)境上的篱瞎,是hive提供的命令行接口,在hive提示符出現(xiàn)后輸入hive命令俐筋,hiveshell會(huì)把這些hiveSQL查詢轉(zhuǎn)換一系列的mapreduce作業(yè)任務(wù)進(jìn)行并行處理澄者。然后返回處理結(jié)果。

hiveshell 還可以在非交互式模式下運(yùn)行

HiveQLq與SQL語言非常類似粱挡,hive

不存儲(chǔ)數(shù)據(jù),只是管理存儲(chǔ)在hdfs上的數(shù)據(jù)榕堰,也就是管理hdfs上文件的目錄嫌套,也可以稱作是管理元數(shù)據(jù)信息的。通過hive表導(dǎo)入數(shù)據(jù)只是簡單的將數(shù)據(jù)移動(dòng)【如果數(shù)據(jù)在hdfs上】或復(fù)制【如果數(shù)據(jù)是本地文件系統(tǒng)中】到hive表所在的HDFS目錄中

hive 管理數(shù)據(jù)有以下幾種方式魏蔗,內(nèi)部表痹筛,外部表廓鞠,分區(qū)谣旁,桶。


1夕土、內(nèi)部表:Hive中的表和關(guān)系型數(shù)據(jù)庫中的表在概念上很類似瘟判,每個(gè)表在HDFS中都有相應(yīng)的目錄用來存儲(chǔ)表的數(shù)據(jù),這個(gè)目錄可以通

過${HIVE_HOME}/conf/hive-site.xml配置文件中的hive.metastore.warehouse.dir屬性來配置篮撑,

這個(gè)屬性默認(rèn)的值是/user/hive/warehouse(這個(gè)目錄在HDFS上)匆瓜,我們可以根據(jù)實(shí)際的情況來修改這個(gè)配置。如果我有一個(gè)表wyp驮吱,

那么在HDFS中會(huì)創(chuàng)建/user/hive/warehouse/wyp目錄(這里假定hive.metastore.warehouse.dir配置

為/user/hive/warehouse);wyp表所有的數(shù)據(jù)都存放在這個(gè)目錄中桐筏。這個(gè)例外是外部表拇砰。

2、外部表:Hive中的外部表和表很類似牧氮,但是其數(shù)據(jù)不是放在自己表所屬的目錄中瑰枫,而是存放到別處,這樣的好處是如果你要?jiǎng)h除這個(gè)外部表剖毯,該

外部表所指向的數(shù)據(jù)是不會(huì)被刪除的教馆,它只會(huì)刪除外部表對(duì)應(yīng)的元數(shù)據(jù)擂达;而如果你要?jiǎng)h除表胶滋,該表對(duì)應(yīng)的所有數(shù)據(jù)包括元數(shù)據(jù)都會(huì)被刪除悲敷。

3、分區(qū):在Hive中部宿,表的每一個(gè)分區(qū)對(duì)應(yīng)表下的相應(yīng)目錄瓢湃,所有分區(qū)的數(shù)據(jù)都是存儲(chǔ)在對(duì)應(yīng)的目錄中。比如wyp表有dt和city兩個(gè)分區(qū)绵患,

則對(duì)應(yīng)dt=20131218,city=BJ對(duì)應(yīng)表的目錄為/user/hive/warehouse/dt=20131218/city=BJ落蝙,所有

屬于這個(gè)分區(qū)的數(shù)據(jù)都存放在這個(gè)目錄中。

4筏勒、桶:對(duì)指定的列計(jì)算其hash,根據(jù)hash值切分?jǐn)?shù)據(jù)厨埋,目的是為了并行病瞳,每一個(gè)桶對(duì)應(yīng)一個(gè)文件(注意和分區(qū)的區(qū)別)。比如將wyp表id

列分散至16個(gè)桶中亲善,首先對(duì)id列的值計(jì)算hash逗柴,對(duì)應(yīng)hash值為0和16的數(shù)據(jù)存儲(chǔ)的HDFS目錄為:/user/hive/warehouse

/wyp/part-00000;而hash值為2的數(shù)據(jù)存儲(chǔ)的HDFS

目錄為:/user/hive/warehouse/wyp/part-00002渣蜗。

hive表DDL操作

create /drop/ alter 數(shù)據(jù)庫

eg: create database shopping

location '/hive/shopping'

with dbproperties('creator'='bush','date'='2017-1-1')

使用hdfs? dfs -ls 可以查看hdfs上的/hive 目錄

接下來就是hive 的DDL 和 DML 操作了


更多?

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末耕拷,一起剝皮案震驚了整個(gè)濱河市托享,隨后出現(xiàn)的幾起案子浸赫,更是在濱河造成了極大的恐慌赃绊,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,470評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件运敢,死亡現(xiàn)場離奇詭異忠售,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)涉枫,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,393評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門腐螟,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人衬廷,你說我怎么就攤上這事汽绢。” “怎么了跌宛?”我有些...
    開封第一講書人閱讀 162,577評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵积仗,是天一觀的道長。 經(jīng)常有香客問我哎迄,道長隆圆,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,176評(píng)論 1 292
  • 正文 為了忘掉前任旨涝,我火速辦了婚禮侣背,結(jié)果婚禮上哩治,老公的妹妹穿的比我還像新娘衬鱼。我一直安慰自己鸟赫,他們只是感情好消别,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,189評(píng)論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著岁经,像睡著了一般蛇券。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上纠亚,一...
    開封第一講書人閱讀 51,155評(píng)論 1 299
  • 那天蒂胞,我揣著相機(jī)與錄音,去河邊找鬼蛤织。 笑死鸿染,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的牡昆。 我是一名探鬼主播丢烘,決...
    沈念sama閱讀 40,041評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼掸刊!你這毒婦竟也來了赢乓?” 一聲冷哼從身側(cè)響起石窑,我...
    開封第一講書人閱讀 38,903評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤蚓炬,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后经宏,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體驯击,經(jīng)...
    沈念sama閱讀 45,319評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡徊都,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,539評(píng)論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了主之。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片袱耽。...
    茶點(diǎn)故事閱讀 39,703評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡朱巨,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出冀续,到底是詐尸還是另有隱情,我是刑警寧澤钻蹬,帶...
    沈念sama閱讀 35,417評(píng)論 5 343
  • 正文 年R本政府宣布凭需,位于F島的核電站,受9級(jí)特大地震影響粒蜈,放射性物質(zhì)發(fā)生泄漏枯怖。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,013評(píng)論 3 325
  • 文/蒙蒙 一肿轨、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧椒袍,春花似錦、人聲如沸曙蒸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,664評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至视搏,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間县袱,已是汗流浹背浑娜。 一陣腳步聲響...
    開封第一講書人閱讀 32,818評(píng)論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留式散,地道東北人筋遭。 一個(gè)月前我還...
    沈念sama閱讀 47,711評(píng)論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像暴拄,于是被迫代替她去往敵國和親漓滔。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,601評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容