我有几百个文本文件;分隔值,每个文件大200-300 mb。我怀疑问题是两列中输入的值,每列有一个索引,有六位小数。
这是在python中创建的SQLite表:
cur.execute("CREATE TABLE MessageType1(port int, userid int, longitude INT, latitude INT, cog INT, heading INT, unixtime int)")
cur.execute("CREATE INDEX latitude_index ON MessageType1 (latitude)")
cur.execute("CREATE INDEX longitude_index ON MessageType1 (longitude)")
使用此脚本输入值:
for f in *.txt
do
sqlite3 -separator ';' database/database.db ".import $f MessageType1"
echo ${f%.*}.database
done
典型输入是:
32;25743255;70.384123;59.693545;261.60;242.00;134433400
经过一些测试后,我发现将一个文件输入数据库可能需要三个多小时。我应该尝试减少小数位数吗?