миллиард строк
Могу ли я прочитать конкретный кусок файла, указав номера строк, или ещё как-то? Допустим кусок 10-15%
Как осуществлять поиск по файлу?
Как можно в принципе объединить два файла по 10 гигов в один?
Можешь. Но если строки произвольной длинны - то без учёта строк. Читать можно в провольной позиции произвольную длинну. В байтах, не в строках
Раз спрашиваете видимо не можете. 10 ГБ по современным меркам это маленький файл. Его проще загрузить в ОЗУ и работать прям там только не забудьте в ограничениях к проге указать 32 ГБ ОЗУ Что касается решения для старых компов. То используем Delphi XE 10. FPC не подходит он с файлами больше 2 ГБ плохо работает. Разве что для него на winapi писать. А на Delphi можно использовать TByteStream и TFileStream. Перемещение можно сделать через seek на нужное число байт. Все остальное в ваших руках.
Ты лучше скажи, что для чего это тебе надо?
Интересно, сколько времени займет загрузка 10Г-файла в память? :)
Есть файлы с пользовательской информацией, весом, который может превышать объем оперативки. Хочу почистить дубли строк, объединить файлы в один, и организовать поиск по нему
Что такое "пользовательская информация"? Какой формат этой информации? В каком она виде? Почему там есть дубли? Зачем их удалять? И зачем по нему искать?
На что повлияет мой ответ на эти вопросы?
если речь о Win, то стоит посмотреть в сторону MMF
Linux, к слову, с MMF тоже вполне справляется :) Linux does this via the mmap system call.
не исключено. я могу говорить только за то, что знаю 🙂
Всё — это данные, о которых я выше говорил Хранить — потому что они мне нужны Хранить на компьютере под виндой на ссд, локально Данные должны ХРАНИТЬСЯ в файле формата тхт, это их цель, их путь, их предназначение, при редкой необходимости нужно делать поиск по этим данным. Первоочередная цель у меня была — научиться работать с файлами, размер которых может быть десятки гигов, плюс привести в порядок имеющиеся данные
Хранить много гигабайт данных в виде простого текстового файла не стоит. ну если конечно волнует скорость работы с ними
У меня вчера в команде аналитики тоже четко знали, что им нужно: что нужно доработать фронт и бэк, чтобы они могли в SQL запросах использовать переменное количество условий... В ходе обсуждения оказалось, что они не знали, что в запросах можно использовать "вот такое-то" условие, чтобы оно "выключалось"... Час обсуждения и выяснения, что же именно им надо, сэкономило часы доработок трёх человек
аналитики видимо не опытные, теперь знают. так и программировать научатся.
Обсуждают сегодня