Есть csv, от десятков ГБ до 1 ТБ, то есть,сильно больше чем моя RAM. В строке таблицы порядка 5 полей. Размер одного поля можно считать нефиксированным, но до 50КБ. Число строк от 100 млн до 2 млрд. Будет именно чтение одним пользователем, никаких записей в файл.
В таблицах есть уникальное поле, «хеш». Во что мне конвертировать csv файл, чтобы максимально быстро получать доступ к строке по индексу?-
А) sql. типа postgre. удобно но эта БД поддерживает многопользовательскую запись, репликации- всё это мне не нужно, оверкилл
Б) sql типа sqllight. на малых объемах летает. но не уверен что она хорошо работает с большими файлами, в том числе сможет быстро создавать индексы
В) nosql база типа mongo?
Г) файлы с индексами - обработка python-ом
Я думаю что вариант Г) - оптимальный. или есть иные варианты? куда именно смотреть?