我的文本文件包含大约12gbs的推文,需要从关键字中搜索此数据集。这样做的最佳方法是什么?
熟悉Java,Python,R。我不认为我的计算机可以处理这些文件,例如,我在python中执行某些遍历每个文本文件的脚本
答案 0 :(得分:1)
“哦,Python,或任何其他语言,最能肯定的。”可能需要几秒钟,但工作将完成。我建议你解决问题的最佳方法是:“直线前进”。编写一次一行处理文件的脚本。
虽然“12千兆字节”对我们来说听起来很重要,对于任何现代机器来说都不是那么大。
根据需要在内存中构建哈希(关联数组)。通常避免数据库操作(除了“SQLite”数据库文件,可能......),但是,如果您碰巧发现自己需要“索引文件存储”,SQLite是一个了不起的工具。
。 。 。有一个非常重要的警告:“当使用SQLite时,使用事务,即使在阅读时也是如此。”默认情况下,SQLite将物理提交每次写入并物理验证每次读取,除非您在事务中。然后,只有这样,它才会“懒惰读/写”,正如您可能期望它一直在做的那样。 (然后,“那个傻瓜的 f-a-s-t ......!”)
答案 1 :(得分:0)
如果你想要准确,那么你需要在每个文件上看一次,所以如果你的计算机无法承担这个负载,那么告别准确。
另一种方法是使用速度比精确速度快的approximation algorithms,但这会导致失去准确性。
这应该让你开始,我会在这里停止我的回答,因为这个主题太宽泛了,无法从这里继续。