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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Hive学习笔记 —— Hive的体系结构

發(fā)布時(shí)間:2025/4/16 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Hive学习笔记 —— Hive的体系结构 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1. Hive的體系結(jié)構(gòu)

  • Hadoop

    用HDFS進(jìn)行存儲(chǔ),利用MapReduce進(jìn)行計(jì)算

  • 元數(shù)據(jù)存儲(chǔ)(MetaStore)

    通常是存儲(chǔ)在關(guān)心數(shù)據(jù)庫(kù),如mysql、derby中

在Hive執(zhí)行HQL語(yǔ)句,其HQL語(yǔ)句會(huì)被解析成一個(gè)MapReduce作業(yè),并提交到Hadoop集群上進(jìn)行運(yùn)行,得到的結(jié)果返回給客戶端程序,這個(gè)過(guò)程主要是由JobTracker進(jìn)行任務(wù)調(diào)度。

2. Hive的體系結(jié)構(gòu)之元數(shù)據(jù)

Hive的元數(shù)據(jù)

元數(shù)據(jù)與表中存儲(chǔ)的具體數(shù)據(jù)無(wú)關(guān),反映的是表本身的信息,這種信息就是元信息,即元數(shù)據(jù)。

  • Hive將元數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)庫(kù)中(metastore),支持mysql、derby、oracle等數(shù)據(jù)庫(kù)

    默認(rèn)采用derby數(shù)據(jù)庫(kù)來(lái)存儲(chǔ)Hive的元數(shù)據(jù)

  • Hive中的元數(shù)據(jù)包括表的名字、表的列和分區(qū)及其屬性、表的屬性(是否為外部表等)、表的數(shù)據(jù)所在目錄等

    圖中的左邊為存儲(chǔ)在hive中的數(shù)據(jù)表,右邊為相應(yīng)的數(shù)據(jù)表的元數(shù)據(jù)信息。

3. Hive的體系結(jié)構(gòu)之HQL的執(zhí)行過(guò)程

舉例:一條HQL語(yǔ)句如何在hive中進(jìn)行查詢

在hive中,提供了三個(gè)組件來(lái)幫助我們工作,即解釋器、編譯器、優(yōu)化器

解析器、編譯器、優(yōu)化器完成HQL查詢語(yǔ)句從詞法分析、語(yǔ)法分析、編譯、優(yōu)化以及查詢計(jì)劃(Plan)的生成。生成的查詢計(jì)劃存儲(chǔ)在HDFS中,并在隨后由MapReduce調(diào)用執(zhí)行。

執(zhí)行計(jì)劃,類(lèi)似于javac命令,將.java的源文件編譯成 .class文件,最后執(zhí)行的就是 .class 這個(gè)文件

連接oracle數(shù)據(jù)庫(kù)

查詢10號(hào)部門(mén)的員工信息

生成執(zhí)行計(jì)劃



(由于沒(méi)有對(duì)部門(mén)創(chuàng)建索引,所以需要進(jìn)行全表掃描)

全表掃描的代價(jià)會(huì)相對(duì)較高。

基于部門(mén)號(hào)創(chuàng)建索引

重新生成執(zhí)行計(jì)劃

重新查看該select的執(zhí)行計(jì)劃


(會(huì)根據(jù)索引進(jìn)行掃描)

總結(jié)

以上是生活随笔為你收集整理的Hive学习笔记 —— Hive的体系结构的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。