簡體   English   中英

在MRJob中連接HIVE

[英]Connecting HIVE in MRJob

場景是我需要處理一個文件(輸入),對於每個記錄,我需要檢查輸入文件中的某些字段是否與Hadoop集群中存儲的字段匹配。

我們考慮使用MRJob處理輸入文件,並使用HIVE從hadoop集群獲取數據。 我想知道是否可以在MRJob模塊內連接HIVE。 如果是這樣,該怎么做?

如果沒有,那么滿足我的要求的理想方法是什么。

我是Hadoop,MRJob和Hive的新手。

請提供一些建議。

“匹配存儲在Hadoop集群中的字段。” ->您的意思是您還需要搜索該文件中是否還存在這些字段?

您總共需要掃描多少個文件?

一種解決方案是加載HBase表中的每個項目以及輸入文件中的每個記錄,從表中“獲取”記錄。 如果GET成功,則該記錄存在於HDFS中的其他位置,否則就不存在。 每個HBase記錄都需要一個唯一的標識符,並且輸入文件中也應存在相同的標識符。

您也可以連接到Hive,但是架構必須嚴格,以便所有HDFS文件都可以加載到單個Hive表中。 HBase並不真正在乎列(僅需要ColumnFamilies)。 MapReduce和Hive的另一個缺點是,與HBase(近實時)相比,速度將較低。

希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM