Для вашего первичного ключа рассмотрите возможность использования суррогатного или альтернативного ключа; вам нужно учитывать медленно меняющиеся размеры, например, если в течение последних 5 лет вы составляете отчет о средних продажах на одного женатого / неженатого продавца, вам нужно зарегистрировать тот факт, что кто-то не был женат в течение 2 лет, а затем женился в течение последних 3. Это означает, что ваше хранилище данных будет иметь две строки таблицы измерений для одного человека. Следовать структуре OLTP для этого будет сложно:)
Ограничения менее важны; DW в значительной степени оптимизированы для чтения (при условии, что вы заполняете пакет), а ограничения не влияют на операции чтения. Как правило, вы можете обойти любые проблемы с заданием, заполняющим DW, и, при необходимости, иметь дело с нулями и т. Д. В инструменте отчетности. Гораздо важнее убедиться, что значения по умолчанию соответствуют вашей концептуальной модели данных, и не создавать проблем в клиентских инструментах DW.