2010-10-08 2 views
0

В моей базе данных OLTP у меня есть макет, состоящий из инструкторов и студентов. Каждый студент может быть учеником любого количества инструкторов. Студент может также зарегистрироваться для инструктора, но не обязательно заказывать любое обучение (урок).Вопрос проектирования хранилища данных

В хранилище данных, как лучше всего это будет смоделировано? Если я создам таблицу измерений для уроков, инструкторов и студентов и таблицу фактов для уроков, которые были сделаны студентами, это будет работать, когда инструктор захочет посмотреть, какие уроки взял у ученика.

Однако, как инструктор увидит, сколько учеников ЗАРЕГИСТРИРОВАНО с инструктором, но еще не заняло урок?

В моем OLTP у меня есть много-много таблиц (InstructorStudents), которые связывают каждого ученика с еще одним инструктором. В базе данных OLAP это не подходит.

Что было бы лучшей схемой в этом случае? Может ли многим быть подходящим в этом случае? Я не могу сохранить список зарегистрированных учеников для инструкторов в таблице учеников, поэтому я чувствую, что нужна другая таблица измерений, но не может решить, что должно содержаться в ней.

ответ

1

Если факт представляет собой сделку, вы, кажется, есть две разные факты здесь: Знак взлетов & уроки. Всегда есть много способов, но, возможно, вам нужны две таблицы фактов. Они могут иметь сходную размерность, за исключением того, что таблица регистрации будет иметь размер класса (имя класса, имя преподавателя и т. Д.). Таблица «Уроки» привязана к размеру класса, а также к размеру урока (дата, класс и т. Д.).

Есть несколько других способов сделать это, но им будет сложнее с программированием & отчетность.

0

Вам нужна таблица фактов. Посмотрите на следующий ресурс, который ссылается на пример близко к необходимости

http://www.kimballgroup.com/1996/09/02/factless-fact-tables/

+0

Обратите внимание, что [ссылка только ответы] (http://meta.stackoverflow.com/tags/link-only-answers/info) обескуражены, SO-ответы должны быть конечной точкой поиска решения (против еще одной остановки ссылок, которые со временем становятся устаревшими). Пожалуйста, подумайте о добавлении отдельного резюме здесь, сохранив ссылку в качестве ссылки. См. [This] (http://meta.stackexchange.com/a/8259/213634) для получения дополнительной информации. – 2013-11-10 20:36:17

Смежные вопросы