天天看點

[Hadoop大資料]——Hive初識

Hadoop提供了大資料的通用解決方案,比如存儲提供了Hdfs,計算提供了MapReduce思想。但是想要寫出MapReduce算法還是比較繁瑣的,對于開發者來說,需要了解底層的hadoop api。如果不是開發者想要使用mapreduce就會很困難....

另一方面,大部分的開發者都有使用SQL的經驗。SQL成為開發者必備的技能...

那麼可以不可以使用SQL來完成MapReduce的過程呢?—— 答案就是,Hive

Hive可以幫助開發者從現有的資料基礎架構轉移到Hadoop上,而這個基礎架構是基于傳統關系型資料庫和SQL的。Hive提供了Hive查詢語言,即HQL,它可以使用SQL方言查詢存儲在hadoop中的資料。

Hive本身不會生成java的mapreduce程式,而是通過XML檔案 驅動執行内置的、原生的Mapper和Reducer。

1 不支援記錄級别的更新、插入或者删除

2 查詢延遲比較嚴重

3 不支援事務

如果想要基于SQL還想具有上面的特性,可以直接使用hadoop提供的nosql資料庫——HBase

Hive适合做 資料倉庫 應用程式,可以維護海量資料,對資料進行挖掘,形成意見和報表。

同類型的工具就是Pig

[Hadoop大資料]——Hive初識