10'000'000 以上のエンティティを相互に比較するプログラムを作成する必要があります。エンティティは基本的に、データベース/csv ファイル内のフラットな行です。
比較アルゴリズムは非常に柔軟である必要があり、エンド ユーザーがルールを入力すると、各エンティティが他のすべてのエンティティと照合されるルール エンジンに基づいています。
このタスクをより小さなワークロードに分割する方法を考えていますが、まだ何も見つかりません。ルールはエンド ユーザーによって入力されるため、DataSet を事前にソートすることは不可能に思えます。
私が今やろうとしているのは、DataSet 全体をメモリに収め、各項目を処理することです。しかし、それは非常に効率的ではなく、約が必要です。20 GB のメモリ (圧縮)。
ワークロードを分割したり、サイズを縮小したりする方法を知っていますか?
ありがとう