① 某電商雙11數據分析與預測為什麼會用到hive,可不可以直接用Hadoop
首先明確Hive和Hadoop兩者的關系:
1、Hadoop是一種用於存儲、讀取以及處理海量數據的技術。你可以將他等價理解為個人PC的文件系統,只不過它能夠承載遠比一兩塊硬碟所能儲存的多得多的數據;
2、Hive是一種構建在Hadoop之上的工具,它通過書寫SQL語句的方式部分實現了Hadoop的功能,也就是說,所有Hive具備的能力,Hadoop都有,只不過Hive提供了一套描述工具,讓你用可讀性更強、更通用的方式描述你想解決的問題,然後由Hive將其轉換成Hadoop的底層邏輯,最終解決問題。
所以,你問的問題也就不言自明了,當然可以直接基於Hadoop,使用Java、Python等語言直接編寫MapRece的處理過程;但是,常規的數據分析如果使用Hive,可能只需要若干Select查詢語句即可完成,若編寫代碼完成,可能需要安裝配置本地IDE、完成相關代碼庫的依賴、MapRece完整邏輯的實現、任務的提交、計算結果的獲取等等一系列龐雜的細節。兩廂對比,我認為雖然理論上可以直接用Hadoop,但是在真實業務場景下,就是不能用的。
希望我說明白了~
② hive簡單理解的功能就是把一條sql進行解析成mr任務去給hadoop執行,那麼hive的核心
hive作為數據倉庫平台,其實是來解決mr編寫程序困難的問題,提供了sql介面。目前的hive不止支持mr,還有tez和spark,不過邏輯都是一樣的。現在最新版本提供了內存計算,也就是中間結果不再存入hdfs,而是直接緩存在內存里,提高查詢性能
③ 定時離線分析 hdfs+maprece 和hadoop+hive+hbase的區別
HDFS和MapRece是Hadoop的兩大核心,除此之外Hbase、Hive這兩個核心工具也隨著Hadoop發展變得越來越重要。
《Thinking in BigDate(八)大數據Hadoop核心架構HDFS+MapRece+Hbase+Hive內部機理詳解》從內部機理詳細的分析了HDFS、MapRece、Hbase、Hive的運行機制,從底層到數據管理詳細的將Hadoop進行了一個剖析。
④ 如何使用 Hadoop 提升 Hive 查詢性能
將原始數據大小為260M的txt文件放入hdfs。並配置了Hive環境做數據查詢測試。由於原始數據太小,要做GB以上的文件測試。
並且分別拷貝10、50、100、200、300、400、500份原始數據做成對應的大數據文件。
分別對這些數據使用hiveQL查詢相同的數據,然後記錄不同大小的數據查詢的結果。做成一個圖表。然後再添加一個slave計算節點,負載均衡後再使用相同的hiveQL語言查詢相同的數據集,記錄對應的結果。
⑤ 如何使用Hive&R從Hadoop集群中提取數據進行分析
Hive提供了類似SQL的連接語義。內連接是應用程序中使用的最常見的join操作,可將它視為默認連接類型。內連接基於連接謂詞將兩個表(假設為A(CDR)和B(網路日誌))的列值合並在一起。內部join查詢將A表與B表的每一行進行比較,找出滿足連接謂詞的所有行對。如果滿足連接謂詞,則會將該記錄的A和B的列值合並,以建立新的合成記錄。可以這樣思考內連接:它獲取這兩個表的Cartesian產品,然後返回滿足連接謂詞的記錄。
⑥ 為什麼說 hive 是 hadoop 數據倉庫,從方 面理解
hive是基於Hadoop的一個數據倉庫工具,可以將結構化的數據文件映射為一張資料庫表,並提供簡單的sql查詢功能,可以將sql語句轉換為MapRece任務進行運行。其優點是學習成本低,可以通過類SQL語句快速實現簡單的MapRece統計,不必開發專門的MapRece應用,十分適合數據倉庫的統計分析。它提供了一系列的工具,可以用來進行數據提取轉化載入(ETL),這是一種可以存儲、查詢和分析存儲在 Hadoop中的大規模數據的機制。
(1).hive由FaceBook開源用於解決海量結構化日誌的數據統計。
(2).hive是基於hadoop的一個數據倉庫工具,可以將結構化的數據文件映射成一張表,並提供類SQL查詢功能。
(3).hive是構建在hadoop之上的數據倉庫:
使用HQL語句作為查詢介面
使用HDFS進行存儲
使用maprece進行計算。
(4).hive本質是:將HQL轉化成MapRece程序。
(5).靈活和擴展性比較好:支持UDF,自定義存儲格式。
(6).適合離線處理。
(7).查詢和管理在分布式存儲的大的數據集(資料庫:增刪改查,hive不支持增刪該)。管理主要是對表的管理。
⑦ hadoop 數據分析---hive數據倉庫
用命令行吧。hive查詢語句和SQL非常類似,如果你能用SQL統計出想要結果,用HIVE也肯定沒問題。如果hive查詢結果集很大,你也可以把結果集直接寫進HDFS。
hive底層就是MapRece演算法,用Java寫的話代碼量肯定很大,而且邏輯也要復雜點
⑧ hive中統計數據的問題
大數據(big data),指無法在一定時間范圍內用常規軟體工具進行捕捉、管理和處理的數據集合,是需要新處理模式才能具有更強的決策力、洞察發現力和流程優化能力的海量、高增長率和多樣化的信息資產。大數據的5V特點(IBM提出):Volume(大量)、Velocity(高速)、Variety(多樣)、Value(低價值密度)、Veracity(真實性),平台有hadoop
⑨ hive如何實現數據分析
hive只是基於hadoop的數據倉庫平台,類似一個資料庫而已,分析還是要看做什麼應用了