我需要将一组URL(50000 - 100000)与数据库表的记录进行比较,大约有20,000.000行。我有一些遗留代码通过将数据库中的所有数据加载到散列并进行比较来完成此操作。虽然这可行,但它需要在内存方面进行改进(速度目前不是问题)。新数据与大型数据库记录的高效比较
我正在考虑的一种替代方法是分割输入数据(例如按域)并对数据库执行多个选择。这可能适用于某些输入,但不会为所有内容扩展。
另一种替代方法是为每个输入查询数据库,而不是将任何数据加载到内存中。恐怕这可能太慢了。
我正在使用mysql。任何人都会遇到像这样的问题?将所有数据迁移到另一个系统/ dbms是一个选项。
100K可以选择每如果索引设置正确,形成得足够快。 – zerkms
我们是否应该假定通过直接的SQL查询来做到这一点不起作用? –
这是一个选项。我会尽力先做,看看它是如何工作的。我只是想知道在哪里有一个更有效的方法来做到这一点。 – luis