我有大约 100 个 66 GB 巨大的“log.txt”(log1.txt、log2.txt、log3.txt 等)文件,我需要搜索不同的字符串。
我在一个文本文件中包含所有 42.000 个字符串。
现在,我正在使用 grep ( grep -F -f strings.txt log.txt
),但搜索一个 log.txt 大约需要 50 分钟。
您知道搜索所有文件的更快方法吗?搜索完所有 100 个文件后,将生成一组新的 100 个文件用于搜索。
答案1
冒着被指控产品促销的危险,但如果这个问题是结构性的(如日常耗时),我会建议弹性搜索。
我不知道他们是如何做到的,但我每天都会导入 80GB 的文件,然后 Elastic 会返回答案毫秒。
免责声明:我与该公司没有任何关系,不会以任何方式受益。只是他们产品的快乐用户。