Сложность моделирования звездной схемы
Прежде всего, я сожалею о названии... Как только кто-то ответит на него, и я пойму, в чем заключалась моя настоящая проблема, я поставлю более подходящую.
Я создаю таблицу фактов, которая будет измерять количество ресурсов, связанных со школами:
Количество школ
Количество студентов
Количество работников
Количество компьютеров (для административного использования и использования студентами)
FACT_SCHOOL_RESOURCES
Школа (ФК)
Расположение (ФК)
Тип образования (FK)
Total_Schools *
Total_Students
Total_Employees
Total_Students_Computers
Total_Administration_Computers
* в количестве школ каждая строка будет иметь одинаковое значение (1).
Моя проблема заключается в том, что есть некоторые "инфраструктурные" проблемы, связанные со школами, которые я не могу на самом деле назвать одним из его атрибутов (атрибут с именем "инфраструктура"), поскольку существует более одного типа (источник энергии, источник воды)., Утилизация отходов...) и я не могу использовать каждый тип в качестве атрибута, потому что для каждого типа у меня есть отношение многие ко многим со своим школьным измерением, например:
Источник питания
Солнечная панель
Генератор
Городское энергоснабжение
...
Утилизация отходов
Полигон
сжигание
Переработка отходов
Компостирование
Отходы к энергии
...
Используя эти примеры, школа может использовать как полигон для захоронения отходов, так и утилизацию отходов, так как она утилизирует отходы или использует энергоснабжение города и одновременно генератор или солнечные батареи.
Все это необходимо, потому что исследования показывают, что некоторые из этих вопросов (и многие другие, которые я не упомянул) связаны с "качеством преподавания", и должен быть способ проанализировать все это.
Как лучше всего решить эту проблему на схеме "звезда"? Является ли это возможным?
2 ответа
Я думаю, что вы ищете что-то, что выходит за рамки звездной схемы. Если вы хотите провести многовариантный анализ того, какие факторы наиболее сильно коррелируют с какой-либо метрикой (например, качество обучения), то вам может потребоваться рассмотреть куб.
Рассматривайте наличие каждого из типов источников питания и утилизацию отходов как атрибут. Возможно, вы можете начать с чего-то такого простого, как бинарные флаги для каждого фактора. Затем вы можете проверить корреляцию между вашей метрикой и вашими факторами с помощью различных срезов в кубе.
СУРБД, которую вы запускаете, будет состоять из миллиона частей и объединять их туда, где вы хотите, кубы, которые вы начинаете с одного куска и разрываете его туда, где хотите, в основном вы получаете один и тот же ответ, просто зависит от того, свертываете ли вы или детализируете :)