2 つのキーと値のデータ セット (データ セット A と B) があるとします。セット A のすべてのデータを、2 つのキーが一致するセット B のデータで更新したいと考えています。
私は非常に大量のデータを扱っているため、Hadoop を使用して MapReduce を行っています。私が懸念しているのは、A と B の間でこのキー マッチングを行うには、すべてのセット A (大量のデータ) をすべてのマッパー インスタンスのメモリにロードする必要があることです。それはかなり非効率的なようです。
毎回 A にロードする作業を繰り返す必要のない、これを行うための推奨される方法はありますか?
私が現在行っていることを明確にするための擬似コード:
Load in Data Set A # This seems like the expensive step to always be doing
Foreach key/value in Data Set B:
If key is in Data Set A:
Update Data Seta A