我想在大桌子上进行分析(10,000,000行/ 40列)。所以我已经将表加载到SQLite中进行查询。我有一个像
这样的查询SELECT x, y FROM table WHERE x in (10,20,30)
现在我注意到SQLite中的速度非常慢,因为我只有x
的索引。我想这是由于硬盘驱动器访问,它在文件中的不同位置之间跳转。覆盖索引(x, y)
可以解决问题,但我不想为我所做的每种查询创建覆盖索引。
所以我的问题是:我可以调整SQLite更快吗?或者,哪个数据库可能比我的解决方案更快(其他SQL DB更快)?
PS:查询速度如此之慢的实际原因是什么?