Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/322.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 解开巨大的pickle文件_Python_Sqlite_Pickle_Joblib - Fatal编程技术网

Python 解开巨大的pickle文件

Python 解开巨大的pickle文件,python,sqlite,pickle,joblib,Python,Sqlite,Pickle,Joblib,我使用joblib.dump()为Rainforest Classifier培训样本生成了大约6GB的大型pickle文件。每次执行都必须使用joblib.load()加载pickle对象以处理输入数据。加载时间非常长,因此会影响脚本执行的性能 是否有一种方法可以使对象在加载后可以持久化到内存中,并使其可用于后续python执行,而无需调用joblib.load() 使用类似于sqlite的DB是否有助于更快地加载数据?从sqlitedict加载3GB内容是否更快,或者使用joblib.load

我使用joblib.dump()为Rainforest Classifier培训样本生成了大约6GB的大型pickle文件。每次执行都必须使用joblib.load()加载pickle对象以处理输入数据。加载时间非常长,因此会影响脚本执行的性能

是否有一种方法可以使对象在加载后可以持久化到内存中,并使其可用于后续python执行,而无需调用joblib.load()


使用类似于sqlite的DB是否有助于更快地加载数据?

从sqlitedict加载3GB内容是否更快,或者使用joblib.load()取消3 GB pickle文件的pickle?您可以通过如上所述包装joblib调用来大大减少pickle对象的加载时间(在您的情况下,将
pickle
替换为
joblib
)。让我知道这是否适用于您。另外,在执行joblib.dump()时,请指定以获得更好的性能。pickle和joblib使用我已经尝试过的方法,但是我们的数据集非常庞大,所以我们在后台启动了一个http服务器,并将所有pickle文件加载到内存中。这样一来,只有第一个请求会花费很多时间。以后的执行速度会更快。