Поиск строк в очень больших текстовых файлах

Поиск строк в очень больших текстовых файлах

У меня есть около 100 огромных файлов «log.txt» объемом по 66 гигабайт (log1.txt, log2.txt, log3.txt и т. д.), в которых мне нужно искать различные строки.

У меня все 42 000 строк находятся в текстовом файле.

Сейчас я использую grep ( grep -F -f strings.txt log.txt), но поиск в одном файле log.txt занимает около 50 минут.

Знаете ли вы более быстрый способ поиска по всем файлам? После поиска по всем 100 файлам будет создан новый набор из 100 файлов для поиска.

решение1

Есть опасность быть обвиненным в продвижении продукта, но если эта проблема структурная (например, ежедневная трата времени), я бы рекомендовалElasticsearch.

Как они это делают, я не знаю, но у меня есть файлы по 80 ГБ, импортируемые ежедневно, из которых Elastic возвращает ответымиллисекунды.

Отказ от ответственности: Я не имею отношения к этой компании, не получаю никакой выгоды. Просто счастливый пользователь их продукции.

Связанный контент