Здесь будут большие данные (от 2 до 200 ГБ)
200 ГБ - это не большие данные, но я скажу, что от 2 до 200 - это 2 порядка, не большая часть оценки.
Можете ли вы предложить что-то еще?
Да: SQL. Мне еще предстоит увидеть, как Pandas превзойдет SQLite, а тем более полноценную SQL СУБД, и чем больше набор данных, тем лучше будет SQL. SQL также предоставит вам более выразительный, более всеобъемлющий синтаксис и избавит вас от некоторых скуок Pandas. Кстати,
SQL был изобретен для запросов "на лету".
Я бы предложил загрузить ваши данные в SQLite. Похоже, у вас есть только одна или две таблицы. Затем попробуйте несколько запросов и посмотрите, как вы делаете. Не пропустите индексы для вашего любимого поиска и критериев присоединения. Я думаю, вы можете быть приятно удивлены тем, как быстро он вычисляет, скажем, inventory level
, и как мало усилий с вашей стороны.
Это не так, как будто вы должны отказаться от Python. Для SQLite есть две Python библиотеки, одна из которых используется с большинством SQL движков. Вы сохраняете Python для работы интерфейса и позволяете SQL обрабатывать данные.