Hive和Impala加載和存儲數據功能曝光

Hive與Impala都是構建在Hadoop之上的數據查詢工具,那麼在實際的應用中,它們是如何加載和存儲數據的呢?

Hive和Impala存儲和加載表,和所有的關係型數據庫一樣,有自己的數據管理結構,從它的Server到Database再到表和視圖。

在其他的數據庫中,表都是以自己特定的文件格式來存儲的,比如Oracle有自己的存儲格式,而對Hive而言,一個表就是包含一個或多個文件的HDFS目錄,這個文件是屬於表下面的內容,默認存儲路徑:/user/hive/warehouse/<table_name>,支持多種存儲格式。

以上就是數據的存儲,那麼每一個表、每一個結構都有自己的列或者類型定義的信息,這些信息該如何去保存呢?它們存儲在Metastore裏,而所有的數據都存儲在HDFS之上,所以我們想要獲得表結構信息,就需要知道hive的元數據中每個表的含義和結構。在hive中,有簡單的命令可以大概的查看錶的結構信息:describe formatted tableName; hive metastore表結構如下:


因爲Hive和Impala使用相同的數據,表在HDFS,元數據在Metastore,所以以上的存儲及結構介紹同樣適用於Impala。

數據加載及存儲示例


在這裏呢我們必須要區分兩個概念:數據和元數據。數據指的是你存儲和處理的信息,比如賬單記錄、傳感器讀數和服務日誌等。而元數據用來描述數據的形態,比如字段名和順序等。


關於Hive和Impala的介紹,是自己經驗的分享,希望可以幫助大家瞭解和認識到Hive和Impala的功能,平常的時候我們做技術的也可以多關注一些大數據資訊。比如微信服務號“大數據cn”,“大數據時代學習中心”,對於改善我們自己的知識架構來說都是有很大的幫助和促進作用的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章