首页 > 解决方案 > 在分布式环境中匹配大表数据

问题描述

我有一个 shell 脚本作业,它提供需要与 n 个巨大表匹配和抑制的输入数据(表大小从 2000 万到 15000 万条记录不等)。可以同时提交多个作业

输入数据大小从 500k 到 3MM 记录不等。表格数量从5到40不等。巨大的表格数据将实时更新;匹配列将创建索引。

目前,我正在 Linux Sever(Intel(R) Xeon(R) CPU E5-2637 v3 @ 3.50GHz 和 Ram 128Gb)上使用 Mysql 执行此任务,这需要很长时间。我提供了 shell 脚本,它接受输入数据文件作为参数并点击数据库以执行下面的查询并取回干净的数据。我正在寻找解决这个问题的更好方法。

delete a from inputTableName a, table1 b where a.email=b.email;
delete a from inputTableName a, table2 b where a.email=b.email;
delete a from inputTableName a, table3 b where a.email=b.email;
delete a from inputTableName a, table4 b where a.email=b.email;
delete a from inputTableName a, table5 b where a.email=b.email;
delete a from inputTableName a, table6 b where a.email=b.email;

每个作业需要 3 到 5 分钟的结果。想知道这个问题是否可以使用分布式方法解决。我愿意使用任何语言或技术。

标签: mysqlapache-sparknosqlhadoop2in-memory-database

解决方案


推荐阅读