если в каждой строчке 32 символа (что явно много для фамилии), то в 10Гб будет 33кк строк. 33 миллионов значений типа dword (4 байта) будет равно чуть больше 1.3Гб, это для одного файла.
Честно говоря не знаю сколько. По похоже что дофига и больше... Я сутки потратил на эти безрезультатные тесты. Файл на 5МБ sqlite сортирует за секунды. Ну и сначала я попробовал для эксперимента дать ему файл на 2ГБ, с вечера скормил, а на утро никакого результата. Потом решил уменьшить файл до 200МБ и посмотреть сколько у sqlite на него времени уйдет. И был в шоке: комп дулся над этими 200МБ 12 часов и по прежнему нихрена не выдал. После этого я понял, что что-то здесь не так, и наверно и в правду какая-то прогрессия подключается, что время растет экспоненциально, плюнул на базу и сделал проверенным дедовским методом на файлах
Меня просто заклинило, что в конечном итоге нужно получить отсортированный текстовый файл. А это и так индекс.
нет, это не индекс. Если там 10Гб данных то имеет смысл держать специальную информацию по какому смещению начинаются данные на букву "Ж", это типа индекс, иначе перебор или метод тыка (бинарный поиск) по всему файлу.
Гм, а вот это бы я уже называл квантованием индекса в целях оптимизации. Ибо индекс это когда произволные данные + упорядоченная структура смещений на записи (данные структуры тоже квантуюция, хотя там чистая цифирь). Короче, если определиться с понятиями говорить будет не о чем
ага, квантование индекса которого нет, т.к. файл отсортирован... это просто индексная модель, она полезна и в случае уже отсортированного файла