2
我正在設計新一代的分析系統,它需要近乎實時地處理來自多個傳感器的許多事件。爲此,我想使用大數據分析平臺之一,如Hadoop
,Spark Streaming
或Flink
。MapReduce:如何將HashMap傳遞給映射器
爲了分析每個事件,我需要使用表(DB)中的一些元數據或者至少將其加載到緩存映射中。
問題是每個映射器將在幾個節點上並行化。
所以,我有兩兩件事要處理:
- 首先,如何加載/傳遞一個HashMap映射器?
- 有什麼辦法保持映射器之間的HashMap一致嗎?
DistributedCache是你在找什麼 - http://stackoverflow.com/questions/21239722/hadoop-distributedcache-is-deprecated-what-is-the-preferred-api。您可以將元數據文件提供給所有映射器。 –
您也可以通過查詢您的數據庫來在每個映射器的'setup()'方法中構建hashmap。 –
你會使用Hadoop還是Spark?解決方案可能完全不同。 另外,您是否需要每個映射器都具有相同的信息,還是每個映射器都是特定的? –