熊猫:加快查询大型SQLite数据库

时间:2015-05-07 10:10:05

标签: python sqlite pandas

我创建了一个包含32GB财务数据的SQLite数据库(我从csv文件开始,然后在to_sql中使用pandas命令)。更具体地说,该数据库有超过5.5亿行和6列(3个字符串列,2个浮点列和一个日期时间列)。我想使用pandas按群组查询执行简单计数,但这似乎需要很长时间。我做了以下事情:

import pandas as pd
from sqlalchemy import create_engine

disk_engine = create_engine('sqlite:///trade_data.db') 
df = pd.read_sql_query('SELECT Type, COUNT(Type) as `number_of_trades`'
                   'FROM data '
                   'GROUP BY Type ', disk_engine)  

但是,在我的机器(标准笔记本电脑)上执行此操作时,此简单查询大约需要1小时10分钟。有没有人知道如何加快速度?谢谢!

1 个答案:

答案 0 :(得分:0)

您可以为sqlite表添加索引。请参阅this