Удалите ненужные записи из BIG-файла, используя Python или Map Reduce. - PullRequest
0 голосов
/ 08 октября 2018

У меня есть 37 млн. Записей в исходном файле, но у меня есть только 3000 записей. Я хочу удалить дополнительные записи и мне нужны только эти 3000 записей.Какое самое быстрое решение в Python?

1 Ответ

0 голосов
/ 06 ноября 2018

Я не могу сказать, проще ли удалить то, что вы не хотите, или просто оставить то, что вы хотите, потому что вы не предоставили никаких образцов данных.Во всяком случае, я только что протестировал приведенный ниже скрипт, и он отлично сработал для меня.

with open("C:\\path_here\\test.txt","r+") as f:
    new_f = f.readlines()
    f.seek(0)
    for line in new_f:
        if "return_3y" in line:
            f.write(line)
    f.truncate()

Для файла размером 5 МБ работа заняла всего секунду.Я полагаю, что для вашего файла размером 37 МБ все займет несколько секунд.Не так уж плохо ...

...