hive的初步認識(二)

2021-08-29 07:27:30 字數 923 閱讀 6218

管理資料,不同模組的資料最好放在不同的資料庫中,同mysql中的資料庫的概念

內部表:管理表、managed table

表的建立,表的資料的刪除,都是由hive自己決定的,同mysql中的表。

內部表在進行刪除的時候,元資料和原始資料都會被刪除

外部表:external table

和內部表對立面,乙個表不可能同時是內部表又是外部表的,表結構上同內部表,資料自己決定不了。

外部表在進行刪除的時候,只能刪除元資料(描述資訊),表的原始資料(hdfs)不會被刪除

分割槽表:

概念不同於mr中分割槽的概念

如果表資料量大,查詢的時候進行全表掃瞄則會極大降低hive效能  。這時候利用分割槽表,將原來的表儲存的時候分成不          同的資料目錄儲存,查詢的時候只會掃瞄某乙個分割槽的資料

分桶表:

類似於mr中分割槽的概念。

同乙個表的資料,儲存在同乙個目錄下不同的檔案中

指定的分桶的個數對應於mapreduce中reducetask的個數

作用:1)提公升join的效能,當大表和大表關聯時,拆分成小表關聯

2)提公升抽樣的效能       

hive中的檢視,只有邏輯檢視(儲存的僅僅是乙個sql語句,不會進行執行),沒有物化檢視(將檢視代表的sql進行執行結果)查詢檢視的時候才會進行執行。類似於sql語句的快捷方式,儲存的是當前檢視代表的sql語句。

原始資料:hdfs上,預設情況下儲存在hdfs上的: /usr/hive/warehouse

元資料儲存在mysql中:

dbs:描述hive中的資料庫資訊的。

tbls:描述hive資料庫中的表的資訊的。

columns_v2:描述字段資訊的

Hadoop 初步認識Hive

一 hive是什麼?二 hive和常用資料庫的區別 hive基於hadoop,hadoop是批處理系統,不能保證低延遲,因此,hive的查詢也不能保證低延遲。hive的工作模式是提交乙個任務,等到任務結束時被通知,而不是實時查詢。相對應的是,類似於oracle這樣的系統當執行於小資料集的時候,響應非...

HIve的初步認識(一 )

mapreduce中用於統計分析的資料大部分都是結構化的資料,如果資料量比較小的時候,直接使用mysql,當資料量大的時候,針對這個結構化的資料的統計分析,sql更為方便,mapreduce的統計分析針對結構化資料的,絕大部分都可以使用sql語句做,比mapreduce開發成本低。出現了乙個基於mr...

初學HIVE(一) 初步認識HIVE

hive是基於hadoop的資料倉儲工具,可以將結構化的資料檔案對映為一張表,並提供類sql查詢功能。本質是將hql轉化成mapreduce程式,儲存的基礎資料在hdfs上,執行程式執行在yarn上。hive 在查詢資料的時候,由於沒有索引,需要掃瞄整個表,因此延遲較高。還有乙個原因是mapredu...