繁体   English   中英

从 Python 中的存储加载数据库转储的最快方法

[英]Fastest way to load a database dump from storage in Python

我有一个远程数据库,我需要多次提取大约 300 万条记录(我正在试验数据)。 由于数据库是远程的,重复查询它需要很长时间。 所以我正在考虑一次提取数据,并以某种格式将其存储在本地。 本地存储空间不是大问题; 我可以管理几千兆字节。 在本地存储这些数据的最快方法是什么,以便快速检索? 我猜优化可以在 2 个级别上进行; 数据结构和存储技术。 在数据格式方面,我一直在使用tuples 我猜pandas dataframe 会比tuples快。 有更快的格式吗?

在存储技术上,我一直在使用pickle ,但这可能不是最好的方法。 我读过有关HDF5cPickle的信息,但我不确定哪一个最适合数据库转储,以及底层数据结构是否重要。 还有其他选择吗?

我认为您将使用sqlite3获得最快的结果,在我看来是最有效的。 处理大量数据(在本例中是 300 万条记录)非常适合。

也许您已经阅读过它并且知道它不能单独与远程数据库一起使用(因为它本身没有网络功能),但是如果您使数据库在共享的、网络可访问的驱动器上可用,它就可以正常工作. 你也可以使用Navicat通过 SSH 连接到远程sqlite数据库来完成此操作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM