我正在处理一个基本上监视设置的远程目录(FTP,联网路径和另一个)的项目,如果该文件被认为是新的并且符合我们下载并处理它的标准。但是我坚持最好的方式是跟踪我们已经下载的文件。我不想下载任何重复的文件,所以我需要跟踪已下载的内容。python的数据持久性当很多查找但很少写入?
Orignally我是把它作为一个树:
server->directory->file_name
当服务关闭它,它写入一个文件,当它启动时重新读取回来。但是,如果有大约20,000个左右的文件开始减速很多,
有没有更好的方法来做到这一点?
编辑
的查找时间开始放缓了很多,我基本实现是一个字典的字典。在磁盘上存储的东西很好,或多或少只是查找时间。我知道我可以优化树并对其进行分区。然而,对于这样一个小项目来说,这似乎过分了,我希望python会有类似的东西。
如何使用'dict'的'dict'并使用'pickle'将数据序列化/反序列化到磁盘?你有没有试过这个选项? – 2010-10-24 18:31:54
这就是我所做的事情,但是字典的字典在某个点后开始减慢。当存储大量文件时。 – UberJumper 2010-10-24 18:32:30
如何使用像sqlite这样的嵌入式SQL数据库? Python有它的库。 – 2010-10-24 18:39:20