У бизнеса возникла потребность создания справочной системы Master Data Service (не тот что от Microsoft).
Идея заключается в чем:
На уровне базы данных имеется примерная структура.
Dictionary (справочники)
ValueType (типы данных)
Column (поля справочника) (fk_to_dictionary, fk_to_valuetype)
Value (значения) (fk_to_column)
Такая структура позволит создавать любое кол-во справочников (виртуальных таблиц) с любым кол-во полей.
Из входных данных могу заменить только то, что сейчас на этапе проектирования была выбрана Postgresql и .net core.
Как правильно организовать такие структуры для быстрого извлечения и вставки больших объемов данных (1000-1000000 записей)?
Хватит ли возможностей postgre, для такого объема и нагрузки? Сможем ли на postgre грамотно реализовать версионирование/историчность данных?
Вопрос довольно краткий, потому что пока что все только на этапе проектирования. Сейчас собираем информацию о возможных подходах.
У бизнеса возникла возможность выбора: заплатить или отсосать. Похоже, они решили отсосать не платить.
Ответ довольно краткий, потому что пока что все только на этапе проектирования. Но он очевиден.
Вам лучше и надежнее сделать прототип (или несколько) и сделать ему нагрузочное тестирование
В ходе тестирования определить с заказчиком целевые показатели системы
Скорректировать ожидания заказчика и схему проекта
Тогда у вас будет понимание, что вам подходит
Постгрес на вменяемом железе и хорошем DBA - подходит в большинстве случаев