Хранилище данных Microsoft Azure: плоские таблицы или звездообразная схема - PullRequest
0 голосов
/ 02 января 2019

Я создаю модель хранилища данных на многочисленных таблицах OLTP. а) я могу использовать схему типа «звезда» или б) таблицу модели плоского стола.

Многие думают, что таблица модели размерной схемы звезды не требуется; потому что большинство данных могут сообщать о себе в одной таблице. Кроме того, звездная схема Kimball была создана, когда производительность и хранение являются проблемой. Некоторые претензии с улучшенными технологиями, данные могут быть представлены в одной таблице.

Должен ли я по-прежнему разделять данные на таблицы измерений / фактов или просто использовать плоские таблицы непосредственно в хранилище данных?

В Microsoft Azure рекомендуются плоские широкие таблицы или звездообразная схема?

В этом вопросе я считаю, что сотрудник AWS Redshift предпочитал плоский широкий стол. Производительность плоских столов в сравнении с размерами и фактами

1 Ответ

0 голосов
/ 02 января 2019

Я думаю, что на этот вопрос лучше всего ответить: «Это зависит от потребностей вашего бизнеса, вашего времени и ресурсов». Я думаю, что есть причины поддерживать оба, в зависимости от ваших обстоятельств. Однако, по моему опыту, я бы использовал схему Star, если вы строите эти таблицы для большого количества отчетов и других анализов.

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

  1. Пример: у вас есть таблица продуктов, которую вы строите один раз, и у вас есть факт продаж, к которому вы ее подключаете. В следующие 6 месяцев, возможно, теперь кто-то хочет получить все бизнес-показатели, относящиеся к инвентарю или скидкам, скорее всего, к обоим. У вас уже есть таблица продуктов, которая будет соответствовать этому. Если у вас есть одна выровненная таблица продаж с включенными продуктами, в конечном итоге вы снова выполните ту же работу для запасов и скидок на продукты. Когда продукты разделены, проще просто применить одно соединение к каждой из этих трех таблиц фактов, и еще больше, которые наверняка появятся в будущем. Время, затрачиваемое на Звезду, в конечном итоге меньше, так как вы можете перебирать новые измеримые числа для добавления.

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

  3. В большинстве случаев с любым инструментом моделирования легко работать, если у вас есть схема «звезда» (например, SSAS и PowerPivot), то же самое можно сделать с отчетами перетаскивания (например, сводные таблицы, подключенные к вашим моделям).

...