好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > hive函數(shù)簡介

hive函數(shù)簡介

熱門標(biāo)簽:怎么去開發(fā)一個電銷機(jī)器人 ai電話電話機(jī)器人 泗洪正規(guī)電話機(jī)器人找哪家 簡單的智能語音電銷機(jī)器人 南昌呼叫中心外呼系統(tǒng)哪家好 怎么申請400熱線電話 湖南保險智能外呼系統(tǒng)產(chǎn)品介紹 小程序智能電話機(jī)器人 河北便宜電銷機(jī)器人軟件

首先我們要知道hive到底是做什么的。下面這幾段文字很好的描述了hive的特性: 

 1.hive是基于Hadoop的一個數(shù)據(jù)倉庫工具,可以將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張數(shù)據(jù)庫表,并提供完整的sql查詢功能,可以將sql語句轉(zhuǎn)換為MapReduce任務(wù)進(jìn)行運行。其優(yōu)點是學(xué)習(xí)成本低,可以通過類SQL語句快速實現(xiàn)簡單的MapReduce統(tǒng)計,不必開發(fā)專門的MapReduce應(yīng)用,十分適合數(shù)據(jù)倉庫的統(tǒng)計分析。

  2.Hive是建立在 Hadoop 上的數(shù)據(jù)倉庫基礎(chǔ)構(gòu)架。它提供了一系列的工具,可以用來進(jìn)行數(shù)據(jù)提取轉(zhuǎn)化加載(ETL),這是一種可以存儲、查詢和分析存儲在 Hadoop 中的大規(guī)模數(shù)據(jù)的機(jī)制。Hive 定義了簡單的類 SQL 查詢語言,稱為 HQL,它允許熟悉 SQL 的用戶查詢數(shù)據(jù)。同時,這個語言也允許熟悉 MapReduce 開發(fā)者的開發(fā)自定義的 mapper 和 reducer 來處理內(nèi)建的 mapper 和 reducer 無法完成的復(fù)雜的分析工作。

  要理解hive,必須先理解hadoop和mapreduce,如果有不熟悉的童鞋,可以百度一下。

  使用hive的命令行接口,感覺很像操作關(guān)系數(shù)據(jù)庫,但是hive和關(guān)系數(shù)據(jù)庫還是有很大的不同,下面我就比較下hive與關(guān)系數(shù)據(jù)庫的區(qū)別,具體如下:

1.hive和關(guān)系數(shù)據(jù)庫存儲文件的系統(tǒng)不同,hive使用的是hadoop的HDFS(hadoop的分布式文件系統(tǒng)),關(guān)系數(shù)據(jù)庫則是服務(wù)器本地的文件系統(tǒng);

2.hive使用的計算模型是mapreduce,而關(guān)系數(shù)據(jù)庫則是自己設(shè)計的計算模型;

3.關(guān)系數(shù)據(jù)庫都是為實時查詢的業(yè)務(wù)進(jìn)行設(shè)計的,而hive則是為海量數(shù)據(jù)做數(shù)據(jù)挖掘設(shè)計的,實時性很差;實時性的區(qū)別導(dǎo)致hive的應(yīng)用場景和關(guān)系數(shù)據(jù)庫有很大的不同;

4.Hive很容易擴(kuò)展自己的存儲能力和計算能力,這個是繼承hadoop的,而關(guān)系數(shù)據(jù)庫在這個方面要比數(shù)據(jù)庫差很多。

  以上都是從宏觀的角度比較hive和關(guān)系數(shù)據(jù)庫的區(qū)別,hive和關(guān)系數(shù)據(jù)庫的異同還有很多,我在文章的后面會一一描述。

  下面我來講講hive的技術(shù)架構(gòu),大家先看下面的架構(gòu)圖: 

  由上圖可知,hadoop和mapreduce是hive架構(gòu)的根基。Hive架構(gòu)包括如下組件:CLI(command line interface)、JDBC/ODBC、Thrift Server、WEB GUI、metastore和Driver(Complier、Optimizer和Executor),這些組件我可以分為兩大類:服務(wù)端組件和客戶端組件。

   首先講講服務(wù)端組件:

  Driver組件:該組件包括Complier、Optimizer和Executor,它的作用是將我們寫的HiveQL(類SQL)語句進(jìn)行解析、編譯優(yōu)化,生成執(zhí)行計劃,然后調(diào)用底層的mapreduce計算框架。

  Metastore組件:元數(shù)據(jù)服務(wù)組件,這個組件存儲hive的元數(shù)據(jù),hive的元數(shù)據(jù)存儲在關(guān)系數(shù)據(jù)庫里,hive支持的關(guān)系數(shù)據(jù)庫有derby、mysql。元數(shù)據(jù)對于hive十分重要,因此hive支持把metastore服務(wù)獨立出來,安裝到遠(yuǎn)程的服務(wù)器集群里,從而解耦hive服務(wù)和metastore服務(wù),保證hive運行的健壯性,這個方面的知識,我會在后面的metastore小節(jié)里做詳細(xì)的講解。

  Thrift服務(wù):thrift是facebook開發(fā)的一個軟件框架,它用來進(jìn)行可擴(kuò)展且跨語言的服務(wù)的開發(fā),hive集成了該服務(wù),能讓不同的編程語言調(diào)用hive的接口。

  客戶端組件:

  CLI:command line interface,命令行接口。

  Thrift客戶端:上面的架構(gòu)圖里沒有寫上Thrift客戶端,但是hive架構(gòu)的許多客戶端接口是建立在thrift客戶端之上,包括JDBC和ODBC接口。

  WEBGUI:hive客戶端提供了一種通過網(wǎng)頁的方式訪問hive所提供的服務(wù)。這個接口對應(yīng)hive的hwi組件(hive web interface),使用前要啟動hwi服務(wù)。

  下面我著重講講metastore組件,具體如下:

  Hive的metastore組件是hive元數(shù)據(jù)集中存放地。Metastore組件包括兩個部分:metastore服務(wù)和后臺數(shù)據(jù)的存儲。后臺數(shù)據(jù)存儲的介質(zhì)就是關(guān)系數(shù)據(jù)庫,例如hive默認(rèn)的嵌入式磁盤數(shù)據(jù)庫derby,還有mysql數(shù)據(jù)庫。Metastore服務(wù)是建立在后臺數(shù)據(jù)存儲介質(zhì)之上,并且可以和hive服務(wù)進(jìn)行交互的服務(wù)組件,默認(rèn)情況下,metastore服務(wù)和hive服務(wù)是安裝在一起的,運行在同一個進(jìn)程當(dāng)中。我也可以把metastore服務(wù)從hive服務(wù)里剝離出來,metastore獨立安裝在一個集群里,hive遠(yuǎn)程調(diào)用metastore服務(wù),這樣我們可以把元數(shù)據(jù)這一層放到防火墻之后,客戶端訪問hive服務(wù),就可以連接到元數(shù)據(jù)這一層,從而提供了更好的管理性和安全保障。使用遠(yuǎn)程的metastore服務(wù),可以讓metastore服務(wù)和hive服務(wù)運行在不同的進(jìn)程里,這樣也保證了hive的穩(wěn)定性,提升了hive服務(wù)的效率。

  Hive的執(zhí)行流程如下圖所示:

圖描述的很清晰了,我這里就不在累述了。

下面我給大家展示一個簡單的例子,看看hive是怎么操作的。

首先我們創(chuàng)建一個普通的文本文件,里面只有一行數(shù)據(jù),該行也只存儲一個字符串,命令如下:

echo ‘sharpxiajun' > /home/hadoop/test.txt

然后我們建一張hive的表:

hive –e “create table test (value string);

接下來加載數(shù)據(jù):

Load data local inpath ‘home/hadoop/test.txt' overwrite into table test

最后我們查詢下表:

hive –e ‘select * from test';

  大家看到了吧,hive十分簡單,很好入門,操作和sql很像,下面我就要深入分析下hive與關(guān)系數(shù)據(jù)庫的區(qū)別,這部分可能有些人看的不是很明白,但是很有必要提前提出,以后我的文章里將進(jìn)一步講述hive,那時不太明白的童鞋在看看這部分,很多問題就會清晰很多,具體如下:

1.關(guān)系數(shù)據(jù)庫里,表的加載模式是在數(shù)據(jù)加載時候強(qiáng)制確定的(表的加載模式是指數(shù)據(jù)庫存儲數(shù)據(jù)的文件格式),如果加載數(shù)據(jù)時候發(fā)現(xiàn)加載的數(shù)據(jù)不符合模式,關(guān)系數(shù)據(jù)庫則會拒絕加載數(shù)據(jù),這個就叫“寫時模式”,寫時模式會在數(shù)據(jù)加載時候?qū)?shù)據(jù)模式進(jìn)行檢查校驗的操作。Hive在加載數(shù)據(jù)時候和關(guān)系數(shù)據(jù)庫不同,hive在加載數(shù)據(jù)時候不會對數(shù)據(jù)進(jìn)行檢查,也不會更改被加載的數(shù)據(jù)文件,而檢查數(shù)據(jù)格式的操作是在查詢操作時候執(zhí)行,這種模式叫“讀時模式”。在實際應(yīng)用中,寫時模式在加載數(shù)據(jù)時候會對列進(jìn)行索引,對數(shù)據(jù)進(jìn)行壓縮,因此加載數(shù)據(jù)的速度很慢,但是當(dāng)數(shù)據(jù)加載好了,我們?nèi)ゲ樵償?shù)據(jù)的時候,速度很快。但是當(dāng)我們的數(shù)據(jù)是非結(jié)構(gòu)化,存儲模式也是未知時候,關(guān)系數(shù)據(jù)操作這種場景就麻煩多了,這時候hive就會發(fā)揮它的優(yōu)勢。

2.關(guān)系數(shù)據(jù)庫一個重要的特點是可以對某一行或某些行的數(shù)據(jù)進(jìn)行更新、刪除操作,hive不支持對某個具體行的操作,hive對數(shù)據(jù)的操作只支持覆蓋原數(shù)據(jù)和追加數(shù)據(jù)。Hive也不支持事務(wù)和索引。更新、事務(wù)和索引都是關(guān)系數(shù)據(jù)庫的特征,這些hive都不支持,也不打算支持,原因是hive的設(shè)計是海量數(shù)據(jù)進(jìn)行處理,全數(shù)據(jù)的掃描時常態(tài),針對某些具體數(shù)據(jù)進(jìn)行操作的效率是很差的,對于更新操作,hive是通過查詢將原表的數(shù)據(jù)進(jìn)行轉(zhuǎn)化最后存儲在新表里,這和傳統(tǒng)數(shù)據(jù)庫的更新操作有很大不同。

3.Hive也可以在hadoop做實時查詢上做一份自己的貢獻(xiàn),那就是和hbase集成,hbase可以進(jìn)行快速查詢,但是hbase不支持類SQL的語句,那么此時hive可以給hbase提供sql語法解析的外殼,可以用類sql語句操作hbase數(shù)據(jù)庫

您可能感興趣的文章:
  • Mysql 5.7.19 winx64 ZIP Archive 安裝及使用過程問題小結(jié)
  • php使用ZipArchive函數(shù)實現(xiàn)文件的壓縮與解壓縮
  • nodejs下打包模塊archiver詳解
  • php使用ZipArchive提示Fatal error: Class ZipArchive not found in的解決方法
  • php的ZipArchive類用法實例
  • ORACLE DATAGUARD中手工處理日志v$archive_GAP的方法
  • php ZipArchive壓縮函數(shù)詳解實例

標(biāo)簽:景德鎮(zhèn) 江蘇 瀘州 威海 柳州 荊門 那曲 淮安

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《hive函數(shù)簡介》,本文關(guān)鍵詞  hive,函數(shù),簡介,hive,函數(shù),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《hive函數(shù)簡介》相關(guān)的同類信息!
  • 本頁收集關(guān)于hive函數(shù)簡介的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 乡下村妇伦偷人A片| 中文韩国午夜理伦三级好看| 欧美精品成人a在线观看| 欲海双艳在线观看| 丰满中国女人裸交| 国产A级三级三级三111 | 合租嗯啊好猛h| 黄蓉洗澡被杂役| 被迫进入春梦np高H| 红桃精品??国产精品| 国内免费舆情网站有哪些软件| 小雪好紧我太爽了再快点| 亚洲 欧美 国产 综合首页| 岳普湖县| 国产精品极品美女自在线看免费一区二区 | 男人为什么最后要加速| 欧美激情视频7777| 日本被强制侵犯亚洲系列播放| 男人的??伸到??里亲的视频| 免费看欧美成人A片无码| 现在开始showtime| 91麻豆| 欧美男同志freemovie| 在线影院午夜理论片| 被触手强制扒开侵犯动漫女性| 暖暖免费高清日本社区| 男同桌上课把我c高潮了小说| 草草浮力院| 亚洲蜜芽在线观看精品一区 | 亚洲综合无码久久日日网址 | 久久久久久精品免费免费自慰换脸| 换人妻好紧4P| csgo免费开箱网站| 777琪琪午夜伦情电理片| 国产激情片| 午夜福利一区二区三区| 房奴试爱(1)电影| 国产成人精品免费观看A片APP| 国产人成视频在线观看播放| 男人把j放进女人的j无遮挡| 国产精品人妻无码一区牛牛影视|