源代码管理下的中型数据集

时间:2014-11-21 20:36:09

标签: python git svn csv

这是一个关于在源代码管理下存储数据集的可行性的一般性问题。 我有20 000个csv文件,其中包含我每天更新的数字数据。目录的总大小约为100Mbytes,存储在ext4分区的本地磁盘上。 每天的变化应该是大约1千字节的差异。

我可能不得不对数据进行更正,所以我正在考虑对整个目录进行版本控制= 1 toplevel包含10个level1目录,每个目录包含10个level2目录,每个目录包含200个csv文件。

数据由python进程(pandas frames)写入文件。 问题是关于写入的性能,其中增量与整个数据相比较小。

想到svn和git,他们会有python模块来使用它们。 什么效果最好?

我确信其他解决方案可行,但我会坚持将数据保存为文件......

1 个答案:

答案 0 :(得分:0)

如果您问的是根据您对数据的描述将数据集置于版本控制之下是否有效,我相信答案是肯定的。 Mercurial和Git都非常擅长处理数千个文本文件。 Mercurial对你来说可能是更好的选择,因为它是用python编写的,比Git更容易学习。 (据我所知,现在有更好的工具可用于新项目,没有充分理由采用Subversion。)

如果你问是否有办法通过从版本控制系统借用代码来加速你的应用程序的写入,我认为让你的应用程序修改现有文件要容易得多。 (也许这就是你正在做的事情?你写的不清楚。)