HIVE入門

Hive概述

什么是 Hive?
* Hive 是建立在 Hadoop HDFS 上的數據庫倉庫基礎建構
* Hive 可以用來進行數據庫提取轉化加載(ETL)
* Hive 定義了簡單的類似 SQL 查詢語言,稱為 HQL,它允許熟悉 SQL 的用戶查詢數據
* Hive 允許熟悉 MapReduce 的開發者自定義 mapper 和 reducer 來處理內建的 mapper 和 reducer 無法完成的復雜工作
* Hive 是 SQL 解析引擎,它將 SQL 語句轉化成 M/R Job,然后在 Hadoop 執行
* Hive 的表其實就是 HDFS 的目錄/文件

Q:數據倉庫與數據庫的區別?
A:數據倉庫是一個面向主題(用戶關注的重點)的集成的(來自于分散的數據,可以來自于Oracle、Mysql、文本等)不可更新的(方便決策,所以一般只有查詢功能)、隨時間不變化的數據集合,它用于支持企業或組織的決策分析處理。

數據倉庫的結構和建立過程
首先要有數據源,數據源可以不限;接著對不同的數據進行存儲和管理,即ETL(抽取、轉換(轉換成符合格式要求的數據)、裝載);最后要有數據倉庫引擎,需要有不同的服務器提供不同的服務,例如,前端展示(數據查詢、數據報表、數據分析、各類應用)。

OLTP應用與OLAP應用
OLTP應用:面向事物,頻率非常高,例如,銀行轉賬。轉賬和扣錢要同步
OLAP應用:面向分析查詢,不會更新、刪除、和更新操作,例如,推薦系統

Hive安裝的三種方式

Hive的數據模型

  1. 星型模型:例如,推薦系統,以商品為中心,有很多訂單信息、客戶信息、廠家信息、促銷信息、物流信息等邊沿,構成了星星一樣的模型。
  2. 雪花模型:基于星型模型發展起來的。例如,上述還可以客戶信息模型為中心繼續反戰家庭信息、銀行信息等,還可以以別的主題為中心繼續發展,模型越發展越大,成為一個雪花模型。

Hive的體系結構

一、元數據
- Hive將元數據存儲在數據庫中(metastore),支持mysql、derby等數據庫。默認存儲在derby數據庫中。
- Hive中的元數據包括表的名字,表的列和分區及其屬性,表的屬性(是否為外部表等),標的數據所在目錄等
元數據例子

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

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/386046.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/386046.shtml
英文地址,請注明出處:http://en.pswp.cn/news/386046.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

java線程面試題博客園,超詳細

簡介 HikariCP 是用于創建和管理連接,利用“池”的方式復用連接減少資源開銷,和其他數據源一樣,也具有連接數控制、連接可靠性測試、連接泄露控制、緩存語句等功能,另外,和 druid 一樣,HikariCP 也支持監控…

java編寫斐波那契數列,實戰案例

前言 提到插件,相信大家都知道,插件的存在主要是用來改變或者增強原有的功能,MyBatis中也一樣。然而如果我們對MyBatis的工作原理不是很清楚的話,最好不要輕易使用插件,否則的話如果因為使用插件導致了底層工作邏輯被…

用戶畫像

用戶畫像:標簽化、 用標簽描述用戶行為 用戶畫像:動態信息數據 用戶行為產生的數據:注冊、瀏覽、點擊、購買、簽收、評價 比較重要的行為:購買商品、瀏覽商品、放入購物車、關注商品 用戶畫像的用途:分類統計&…

java編程代寫有哪些平臺,學習路線+知識點梳理

前言 今天剛好有空,跟大家聊聊如何學好算法進大廠。 前兩天一個讀者和我說,他堅持刷算法題2個月,薪資翻番去了他夢寐以求的大廠,期間面字節跳動還遇到了原題…其實據我所知目前國內的大廠和一些獨角獸,已經越來越效仿…

大話數據結構—棧與隊列

棧 一、棧的定義 棧是(stack)是限定盡在表尾進行插入和刪除操作的線性表。 棧又稱為后進先出(Last In First Out)的線性表,簡稱LIFO結構。 二、進棧出棧變化形式 注意: 并不是最新進棧的元素只能最后處棧。如,我們…

【工作感悟】java編程規范pdf下載

前言 要相信,你現在所有的努力和付出都會在將來的某一天回報給你! 首先阿里巴巴作為國內互聯網行業的領頭羊,培養了一代又一代的IT技術人才,很多想進阿里這些互聯網大廠的程序員看中的不僅僅是高薪豐厚的福利待遇,同樣…

大話數據結構——串

串(string)是由零個或多個字符組成的有限序列,又名字符串。 字符串有很多函數,replace、ToUpper、ToLower(轉小寫)、Trim(去掉兩邊空格)、IndexOf(從左到右查找子串的位…

【工作感悟】全網最經典26道Spring面試題總結

開頭 學習如逆水行舟,尤其是IT行業有著日新月異的節奏。 而且現在這個浮躁而又拜金的社會,我相信很多人做技術并非出于熱愛,只是被互聯網的高薪吸引,畢竟技術崗位非常枯燥,不僅要面對奇奇怪怪的需求,還要…

大話數據結構——樹

一、樹的定義 樹(Tree)是n(n>0)個結點的有限集。 n0又稱為空樹。在任意一課非空的樹中:(1)有且僅有一個特定的稱為跟(Root)的結點;(2&#xf…

大話數據結構——圖

圖(Graph)是由定點的又窮非空集合和頂點之間邊的集合組成,通常表示為:G(V,E),其中,G表示一個圖,V是圖G中頂點的集合,E是圖G中邊的集合。 一、各種圖的定義 …

【工作感悟】達內java大數據課程

前言 其實前幾篇文章已經寫了好多有關于Spring源碼的文章,事實上,很多同學雖然一直在跟著閱讀、學習這些Spring的源碼教程,但是一直都很迷茫,這些Spring的源碼學習,似乎只是為了面試吹逼用,我大概問過一些…

大話數據結構——查找

查找(Searching)是根據給定的某個值,在查找表中確定一個其關鍵字等于給定值的數據元素(或記錄)。 一、順序表查找 順序查找又叫線性查找,是最基本的查找技術,它的查找過程是:從表中…

【工作經驗分享】java圖片轉文字

前言 又到一年金九銀十之際。 Java作為目前用戶最多,使用范圍最廣的軟件開發技術之一。 Java的技術體系主要由支撐Java程序運行的虛擬機,提供各開發領域接口支持的Java,Java編程語言及許多第三方Jvav框架構成。 其中,以Java的虛擬器為今天的著…

數據挖掘工程師的面試問題與答題思路

一個Java程序可以認為是一系列對象的集合,而這些對象通過調用彼此的方法來協同工作。下面簡要介紹下類、對象、方法和實例變量的概念。 對象:對象是類的一個實例,有狀態和行為。例如,一條狗是一個對象,它的狀態有&…

【干貨】java課程實戰培訓

開頭 消息隊列 RocketMQ 是阿里巴巴集團基于高可用分布式集群技術,自主研發的云正式商用的專業消息中間件,既可為分布式應用系統提供異步解耦和削峰填谷的能力,同時也具備互聯網應用所需的海量消息堆積、高吞吐、可靠重試等特性,…

Java的幾個特點

Java語言是簡單的: Java語言的語法與C語言和C語言很接近,使得大多數程序員很容易學習和使用。另一方面,Java丟棄了C中很少使用的、很難理解的、令人迷惑的那些特性,如操作符重載、多繼承、自動的強制類型轉換。特別地&#xff0c…

【干貨】mysql建表語句注釋

前言 難道程序員的職業生命線是青春飯?答案是的。 35歲考慮轉行,然后35歲又成了一個新人,而外國可以做到60歲,啥也不說了,可能是覺得中年大叔油膩,不及小鮮肉便宜,唉,可嘆市場更新…

軟件測試知識整理

在一個測試計劃匯總能包含哪些內容? 答:在一個測試計劃中可以包含需要測試的產品的特點和主要功能模塊,列出需要測試的功能點,并標明側重點;測試的策略和記錄(測試工具的確認,測試用例等文檔模…

【干貨】mysql查詢重復數據sql

前言 本系列的目的是明明白白、徹徹底底的搞定日期/時間處理的幾乎所有case。上篇文章鋪設所有涉及到的概念解釋,例如GMT、UTC、夏令時、時間戳等等,若你還沒看過,不僅強烈建議而是強制建議你前往用花5分鐘看一下,因為日期時間處…

【微信小程序】java最簡單觀察者模式

開頭 對于一個Java程序員而言,能否熟練掌握并發編程是判斷他優秀與否的重要標準之一。因為并發編程是Java語言中最為晦澀的知識點,它涉及操作系統、內存、CPU、編程語言等多方面的基礎能力,更為考驗一個程序員的內功。 那到底應該怎么學習并…