Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:Sqlite只需一个磁盘操作即可进行多个插入_Python_Sqlite_Python Shove - Fatal编程技术网

Python:Sqlite只需一个磁盘操作即可进行多个插入

Python:Sqlite只需一个磁盘操作即可进行多个插入,python,sqlite,python-shove,Python,Sqlite,Python Shove,我在部署到docker实例时遇到了一些问题,但我还不知道如何解决它 在docker实例中,有一个进程使用sqlite作为后端将数据作为字典保存到磁盘(我正在保存大约20万条记录) 出现这个问题是因为我使用了SHOW作为字典来保存,这使得每个\uuuu setitem\uuu操作都成为sqlite中的一个insert 现在,spow提供了一个sync(一个整数)参数来指定何时将实际存储执行到磁盘中,但这只会在内存中保存一个临时字典,当时间到来时,它仍然会将sync操作的数量输入磁盘(我不想要) 我

我在部署到docker实例时遇到了一些问题,但我还不知道如何解决它

在docker实例中,有一个进程使用sqlite作为后端将数据作为字典保存到磁盘(我正在保存大约20万条记录)

出现这个问题是因为我使用了SHOW作为字典来保存,这使得每个
\uuuu setitem\uuu
操作都成为sqlite中的一个insert

现在,spow提供了一个
sync
(一个整数)参数来指定何时将实际存储执行到磁盘中,但这只会在内存中保存一个临时字典,当时间到来时,它仍然会将
sync
操作的数量输入磁盘(我不想要)

我检查了sqlite是否提供了一个可以减少方法调用开销的操作,但它是否真的对磁盘执行1(或至少接近1)个操作?我似乎找不到一个明确的解释

我还检查了a,但是python没有解释它,所以我应该用
execute
调用它并创建一个非常大的字符串吗?(我希望一次至少能保存1000条记录)

那么,以最少的操作量写入磁盘的最佳方式应该是什么呢