91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Hive的基本概念

發布時間:2021-09-17 21:44:59 來源:億速云 閱讀:170 作者:chen 欄目:數據庫

這篇文章主要介紹“Hive的基本概念”,在日常操作中,相信很多人在Hive的基本概念問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Hive的基本概念”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

Hive簡介

什么是Hive

Hive是基于Hadoop的一個數據倉庫工具,可以將結構化的數據文件映射為一張數據庫表,并提供類SQL查詢功能(HQL)。

其本質是將SQL轉換為MapReduce的任務進行運算,底層由HDFS來提供數據的存儲,hive可以理解為一個將SQL轉換為MapReduce的任務的工具。

Hive可以對數據進行存儲與計算

數據存儲依賴于HDFS

數據計算依賴于MapReduce

為什么使用Hive

直接使用hadoop所面臨的問題

人員學習成本太高

項目周期要求太短

MapReduce實現復雜查詢邏輯開發難度太大

為什么要使用Hive

操作接口采用類SQL語法,提供快速開發的能力。

避免了去寫MapReduce,減少開發人員的學習成本。

功能擴展很方便。

Hive的特點

可擴展

Hive可以自由的擴展集群的規模,一般情況下不需要重啟服務。

延展性

Hive支持用戶自定義函數,用戶可以根據自己的需求來實現自己的函數。

容錯

良好的容錯性,節點出現問題SQL仍可完成執行。

Hive架構

Hive的基本概念

元數據:

描述數據的數據就是元數據

表的名字,

表的列

列的類型

Hive內部執行過程:

解釋器 -> 編譯器(會使用到元數據) -> 優化器 -> 執行器

基本組成

用戶接口:包括CLI、JDBC/ODBC、WebGUI。其中,CLI(command line interface)為shell命令行;JDBC/ODBC是Hive的JAVA實現,與傳統數據庫JDBC類似;WebGUI是通過瀏覽器訪問Hive。

元數據存儲:通常是存儲在關系數據庫如mysql/derby中。Hive 將元數據存儲在數據庫中。Hive 中的元數據包括表的名字,表的列和分區及其屬性,表的屬性(是否為外部表等),表的數據所在目錄等。

**解釋器、編譯器、優化器、執行器:**完成HQL 查詢語句從詞法分析、語法分析、編譯、優化以及查詢計劃的生成。生成的查詢計劃存儲在HDFS 中,并在隨后有MapReduce 調用執行。

Hive與Hadoop的關系

Hive利用HDFS存儲數據,利用MapReduce查詢分析數據

Hive的基本概念

Hive與傳統數據庫對比

hive用于海量數據的離線數據分析

Hive的基本概念

1.數據格式。Hive中沒有定義專門的數據格式

數據格式可以由用戶指定,用戶定義數據格式需要指定三個屬性:

列分隔符(通常為空格、”\t”、”\x001″)、

行分隔符(”\n”)以及

讀取文件數據的方法(Hive 中默認有三個文件格式 TextFile,SequenceFile 以及 RCFile)。

2.Hive在加載數據的過程中,不需要從用戶數據格式到 Hive 定義的數據格式的轉換。

3.Hive 在加載的過程中==不會對數據本身進行任何修改,甚至不會對數據進行掃描。==而只是將數據內容復制或者移動到相應的 HDFS 目錄中。

4.Hive 中不支持對數據的改寫和添加,所有的數據都是在加載的時候中確定好的。

5.Hive 在加載數據的過程中不會對數據中的某些 Key 建立索引。Hive 要訪問數據中滿足條件的特定值時,需要暴力掃描整個數據,因此訪問延遲較高。由于數據的訪問延遲較高,決定了Hive 不適合在線數據查詢。

6.Hive 是建立在 Hadoop 之上的,因此 Hive 的可擴展性是和 Hadoop 的可擴展性是一致的。

總結:hive具有sql數據庫的外表,但應用場景完全不同,hive只適合用來做批量數據統計分析

Hive的數據存儲

1、Hive中所有的數據都存儲在 HDFS 中,沒有專門的數據存儲格式(可支持Text,SequenceFile,ParquetFile,ORC格式RCFILE等)

2.只需要在創建表的時候告訴 Hive 數據中的列分隔符和行分隔符,Hive 就可以解析數據。

3.Hive 中包含以下數據模型:DB、Table,External Table,Partition,Bucket。

db:在hdfs中表現為${hive.metastore.warehouse.dir}目錄下一個文件夾

table:在hdfs中表現所屬db目錄下一個文件夾

external table:與table類似,不過其數據存放位置可以在任意指定路徑

partition:在hdfs中表現為table目錄下的子目錄

bucket:在hdfs中表現為同一個表目錄下根據hash散列之后的多個文件

到此,關于“Hive的基本概念”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

滕州市| 蒲江县| 太康县| 惠东县| 新巴尔虎左旗| 缙云县| 郓城县| 平度市| 泰州市| 车险| 永福县| 漠河县| 攀枝花市| 特克斯县| 且末县| 德保县| 承德市| 巫山县| 布尔津县| 逊克县| 梨树县| 临湘市| 枝江市| 澄江县| 民勤县| 嫩江县| 安平县| 紫阳县| 西盟| 靖州| 阿克| 浪卡子县| 永仁县| 万源市| 黄山市| 安远县| 和顺县| 台江县| 汝南县| 天峻县| 祁门县|