Какво е звездна схема в моделирането на Data Warehouse?

⚡ Умно обобщение

Звездната схема в моделирането на хранилища за данни поставя централна таблица с факти в основата на околните таблици с измерения, създавайки денормализиран, звездообразен дизайн, който опростява аналитичните заявки, ускорява отчитането и захранва OLAP кубове в различни платформи за бизнес разузнаване.

  • 🌟 Основна структура: Централна таблица с факти се свързва директно с денормализирани таблици с измерения, образувайки звездата, която именува схемата.
  • 📊 Таблици с факти: Таблиците с факти съхраняват мерки като продадени единици и приходи, както и външни ключове, които се свързват с всяко околно измерение.
  • 🗂️ Таблици с размери: Таблиците с измерения съдържат описателни атрибути като продукт, дилър, клон и дата, които позволяват на анализаторите да анализират и филтрират фактите.
  • Производителност на заявките: Денормализираните измерения означават по-малко съединения, така че звездната схема предоставя опростен SQL и бързо отчитане върху големи набори от данни.
  • ❄️ Звезда срещу Снежинка: Звездната схема съхранява всяко измерение в една таблица, докато схемата „снежинка“ нормализира измеренията в свързани таблици с подизмерения.
  • 🛠️ Стъпки на проектиране: Изграждането на звездна схема следва потока на Кимбъл: изберете бизнес процеса, задайте зърното, изберете измерения и след това дефинирайте фактите.
  • 🧊 OLAP и бизнес анализ: Звездните схеми захранват OLAP кубове и са широко поддържани от BI инструменти, въпреки че силната денормализация отслабва целостта на данните.

Звездна схема в моделирането на хранилища за данни с централна таблица с факти и околни таблици с измерения

Какво е звездна схема?

A звездна схема В хранилището за данни е моделираща структура, в която една централна таблица с факти се свързва с редица свързани таблици с измерения. Тя се нарича звездна схема, защото оформлението наподобява звезда, като таблицата с факти се намира в центъра, а таблиците с измерения се разпростират лъчевидно навън като точки.

Звездната схема е най-простият тип схема за хранилище за данни и е известна още като схема за звездно присъединяване. Тъй като таблиците с измерения са денормализирани, моделът е оптимизиран за заявки към много големи набори от данни, което го прави често срещан избор за размерно моделиране и докладване.

Какво е многомерна схема?

A многоизмерна схема е проектиран специално за моделиране на системи за хранилища на данни. Тези схеми отговарят на уникалните нужди на много големи бази данни, които са изградени за аналитични цели на OLAP а не за рутинна обработка на транзакции.

Видове схеми за хранилища за данни: Има три основни типа многомерни схеми и всеки от тях предлага своите предимства.

  • Звездна схема – централна таблица с факти, свързана директно с денормализирани таблици с измерения.
  • Схема на снежинка – разширение на звездната схема, в което измеренията са нормализирани в допълнителни таблици с подразмери.
  • Схема на галактиката – наричана още констелация на факти, тя използва множество таблици с факти, които споделят общи таблици с измерения.

Тъй като схемата „снежинка“ се основава директно на звездната схема, е полезно да сравните двата модела, преди да работите върху подробен пример за звездна схема.

Звездна схема срещу схема „Снежинка“

Звездната схема и схема на снежинка И двете организират данните около таблици с факти и измерения, но се различават по начина, по който се съхраняват измеренията. Звездната схема съхранява всяко измерение в една денормализирана таблица, докато схемата „снежинка“ нормализира тези измерения в няколко свързани таблици.

  • Структура: Звездната схема е плоска и проста; схемата на снежинка разклонява измеренията на подизмерения.
  • Скорост на заявката: Звездните схеми се нуждаят от по-малко съединения, така че заявките обикновено се изпълняват по-бързо и SQL кодът остава по-опростен.
  • Съхранение: Схемите тип „снежинка“ премахват излишествата, така че използват по-малко място, но добавят сложност на дизайна.
  • Целостта на данните: Нормализираните размери на снежинките осигуряват по-добра целостност, докато денормализираните размери на звездите благоприятстват производителността.
  • Лесна употреба: Звездната схема е по-лесна за разбиране от анализаторите и по-бърза за поддръжка, докато схемата тип „снежинка“ изисква по-внимателен дизайн.

На практика екипите често избират звездна схема за информационни хранилища и табла за управление, които изискват бързо и лесно отчитане, и схема тип „снежинка“, когато спестяването на място за съхранение и стриктната последователност са от по-голямо значение.

Пример за звездна схема

В следващия пример със звездна схема, таблицата с факти се намира в центъра и съдържа ключовете за всяка таблица с измерения, като например Dealer_ID, Model_ID, Date_ID, Product_ID и Branch_ID, заедно с измерими атрибути като продадени бройки и приходи.

Пример за моделиране на данни със звездна схема с централна таблица с факти за продажби, свързана с таблици с измерения на продукти, дилъри, клонове, дати и модели
Пример за диаграма на звездна схема

Всяка таблица с околни измерения добавя описателен контекст към тези мерки, така че една заявка може да групира или филтрира фактите за продажбите по дилър, модел, дата, продукт или клон, без да се свързва с други таблици.

Таблици с факти

Таблица с факти в звездна схема съдържа факти и е свързана с измеренията. Таблицата с факти съдържа два вида колони:

  • Колона, която съхранява фактите или мерките.
  • Външни ключове, които се свързват с всяка таблица с измерения.

Обикновено първичният ключ на таблица с факти е съставен ключ, съставен от всички външни ключове, които съставляват таблицата.

Таблиците с факти могат да съдържат факти на ниво детайли или обобщени факти. Таблиците с факти, които включват обобщени факти, често се наричат ​​обобщени таблици и обикновено съдържат факти, които вече са обобщени до някакво ниво.

Таблици с размери

Измерението е структура, която категоризира данните в йерархия. Измерение без йерархии и нива се нарича плоско измерение или списък. Първичният ключ на всяка таблица с измерения е част от съставния първичен ключ на таблицата с факти.

Атрибутът на измерението е описателен текстов атрибут, който помага да се опише стойност на измерението, като например име на продукт или град. Тъй като таблиците с измерения съхраняват този описателен контекст, а не транзакционни събития, таблиците с факти обикновено са много по-големи от таблиците с измерения.

Как да проектирате звездна схема

Проектирането на звездна схема следва подхода за моделиране на размери, популяризиран от Ралф Кимбъл. Целта е да се организират бизнес показателите около ясни, многократно използваеми размери, така че крайният модел да е лесен за запитване и бърз за отчитане. Петте стъпки по-долу очертават процеса, който следват повечето проекти за моделиране на размери, преминавайки от бизнес въпроса на най-високо ниво надолу към таблиците с физически факти и размери.

  1. Идентифицирайте бизнес процеса: Изберете дейността, която искате да анализирате, като например продажби, доставкаpingили инвентаризация. Това решение определя какво ще измерва таблицата с факти.
  2. Декларирайте зърното: Определете нивото на детайлност, което представлява всеки ред с факти, например един ред на елемент, на транзакция или на ден. Ясната структура поддържа модела последователен.
  3. Определете размерите: Избройте описателния контекст, необходим за разделяне на фактите, като например продукт, клиент, дилър, клон и дата. Всеки един от тях се превръща в таблица с измерения на атрибутите.
  4. Определете фактите: Определете числовите мерки, които бизнесът иска track, като например продадени бройки, приходи или разходи, и ги поставете в централната таблица с факти.
  5. Изградете звездата: Свържете таблицата с факти с всяко измерение чрез външни ключове, keeping размерите са денормализирани, така че диаграмата образува единна централна таблица с факти, обградена от своите размери.

След като звездата е построена, добавете сурогатен ключ към всяко измерение, уверете се, че всяка таблица с факти има свързано измерение за дати и потвърдете, че всички факти са в една и съща структура. Също така е добра практика първо да се зареждат атомарни данни от най-ниско ниво, тъй като обобщените таблици винаги могат да бъдат извлечени по-късно. Спазването на тези правила поддържа схемата оптимизирана за висока производителност и простота. склад за данни докладване.

Характеристики на звездната схема

  • Всяко измерение в звездна схема е представено само от една таблица с измерения.
  • Всяка таблица с измерения съдържа собствен набор от атрибути.
  • Таблицата с измерения се свързва с таблицата с факти чрез външен ключ.
  • Таблиците с размери не са свързани помежду си.
  • Таблицата с факти съдържа ключове и мерки.
  • Звездната схема е лесна за разбиране и осигурява оптимално използване на дисковото пространство.
  • Таблиците с измерения не са нормализирани. Например, в горния пример, Country_ID няма отделна таблица за търсене на държави, както е при OLTP дизайнът би.
  • Схемата е широко поддържана от BI инструменти.

Предимства на Star Schema

Звездната схема предлага няколко предимства, които я правят популярна отправна точка за проектиране на хранилища за данни:

  • Звездните схеми използват по-проста логика на свързване от други схеми при извличане на данни от силно нормализирани транзакционни източници.
  • Звездната схема опростява обичайната логика за бизнес отчитане, като например отчитане за период след период и отчитане към датата на настъпване.
  • Звездните схеми се използват широко от OLAP системите за ефективно изграждане на кубове, а звездната схема може да служи като източник без да е необходимо да се проектира структура на куб в повечето основни OLAP системи.
  • Чрез активиране на специфична настройка на производителността, която може да се приложи към заявки, процесорът на заявки може да предложи по-добри планове за изпълнение.

Недостатъци на звездната схема

  • Тъй като схемата е силно денормализирана, целостта на данните не се прилага стриктно.
  • Не е гъвкав по отношение на нуждите от напреднали аналитични данни.
  • Звездните схеми не подсилват връзките „много към много“ между бизнес субектите.

Кога да използвате звездна схема

Звездната схема е правилният избор, когато бързата и предвидима производителност на заявките е по-важна от спестяването на място за съхранение. Тъй като моделът поддържа таблиците си с измерения денормализирани и броят на съединенията нисък, той е подходящ за аналитични натоварвания, при които бизнес потребителите многократно изпълняват подобни отчети, табла за управление и агрегации върху големи обеми от исторически данни.

Типични ситуации, при които звездната схема е силно подходяща, включват:

  • База данни: Ведомствен информационни мрежови складове с прости, добре разбираеми взаимоотношения се възползват от четливата структура.
  • BI табла за управление: Бизнес разузнаване Инструментите се съпоставят ясно със звездни схеми, така че отчетите и визуализациите се изграждат бързо.
  • OLAP кубове: Звездните схеми са естествен източник за OLAP кубове, агрегиране и анализ на срезове и зарчета.

Ако приоритетът се измести към минимално съхранение, стриктна цялост на данните или дълбоки, променящи се йерархии, схема тип „снежинка“ или по-нормализиран дизайн може да са по-подходящи. Много екипи дори комбинират двете, започвайки със звездна схема и нормализирайки само измеренията, които наистина го изискват.

Въпроси и Отговори

Таблицата с факти съхранява измерими, числови бизнес събития, като например продадени бройки или приходи, плюс външни ключове. Таблицата с измерения съхранява описателни атрибути, като например продукт, дата или клон, които дават контекст на тези факти. Таблиците с факти обикновено са много по-големи от таблиците с измерения.

Звездната схема е денормализирана. Всяко измерение се съхранява в една таблица без подтаблици за търсене, което намалява броя на съединенията и ускорява заявките. Компромисът е известна излишък на данни и по-слабо прилагане на целостта на данните в сравнение с нормализирана схема тип „снежинка“.

Галактическата схема, наричана още съзвездие от факти, съдържа множество таблици с факти, които споделят общи таблици с измерения. Тя е подходяща за сложни хранилища, които track няколко бизнес процеса едновременно, но е по-трудно да се проектира и да се правят заявки, отколкото звездна схема с един факт.

Класическата звездна схема използва една централна таблица с факти. Когато даден склад се нуждае от няколко таблици с факти, споделящи измерения, дизайнът се превръща в схема тип „галактика“ или „съзвездие от факти“.ping Една таблица с факти за всяка звезда прави заявките прости, а моделът лесен за разбиране.

Сурогатният ключ е генериран от системата идентификатор, обикновено цяло число, използван като първичен ключ на таблица с измерения вместо бизнес ключ. Той поддържа бързи съединения, остава стабилен при промяна на изходните ключове и поддържа... tracкралски исторически промени в измеренията.

Да. Power BI е оптимизиран за звездни схеми, така че моделирането на данните като една таблица с факти, заобиколена от измерения, подобрява производителността, опростява DAX мерките и прави релациите по-лесни за управление в сравнение със снежинка или плосък дизайн.

Асистентите с изкуствен интелект могат да предложат таблици с факти и измерения от описание на схема, да препоръчат зърнест модел (grain) и да маркират липсващи измерения на дати или сурогатни ключове. Те ускоряват моделирането, но инженерът по данни трябва да прегледа предложения дизайн, преди да го внедри в производство.

Да. ChatGPT намлява Копилот на GitHub може да създава заявки за CREATE TABLE и да обединява заявки за таблици с факти и измерения от кратка подкана. RevПрегледайте генерираните ключове, типове данни и структура, преди да изпълните SQL, защото изкуственият интелект може да разчете погрешно изискванията.

Обобщете тази публикация с: