«Я планирую выполнить операции с этими данными (например, сумма, разница, средние значения и т. Д.), А также создать, скажем, другой столбец на основе вычислений на входе.»
Это стандартный вариант использования для схемы звездообразной схемы хранилища данных. Купите Kimball's Набор инструментов хранилища данных. Прочтите (и поймите) звездную схему, прежде чем делать что-либо еще.
«Как лучше всего хранить данные и манипулировать ими? »
Схема звезды.
Вы можете реализовать это в виде плоских файлов (CSV в порядке) или СУБД. Если вы используете плоские файлы, вы пишете простые циклы, чтобы сделать математику. Если вы используете СУБД, вы пишете простые циклы SQL и .
«Моя главная задача - скорость / производительность по мере роста количества наборов данных»
Нет ничего быстрее, чем плоский файл. Период. СУРБД медленнее.
Ценностное предложение СУБД связано с тем, что SQL является относительно простым способом указать SELECT SUM(), COUNT() FROM fact JOIN dimension WHERE filter GROUP BY dimension attribute
. Python не такой лаконичный, как SQL, но он такой же быстрый и гибкий. Python конкурирует с SQL.
"подводные камни / ошибки, о которых я должен знать?"
БД дизайн. Если вы не получите схему «звезда» и то, как отделить факты от измерений, все подходы обречены. Как только вы отделяете факты от измерений, все подходы примерно равны.
«По каким причинам один должен быть выбран другим?»
СУБД медленная и гибкая. Плоские файлы быстро и (иногда) менее гибки. Python выравнивает игровое поле.
«Существуют ли какие-либо потенциальные ловушки / повышения скорости / производительности, о которых мне нужно знать перед началом работы, которые могут повлиять на дизайн?»
Звездная схема: центральная таблица фактов, окруженная таблицами измерений. Ничто не сравнится с ним.
«Есть ли какой-либо проект или структура, которые могли бы помочь с этим типом задачи?»
Не совсем.