schema types data warehouse modeling star snowflake schema
Овај водич објашњава различите типове шема складишта података. Сазнајте шта је шема звезда и шема пахуљица и разлика између шеме звезда и шеме пахуљица:
У ово Водичи за складиште датума за почетнике , имали смо детаљни увид Димензионални модел података у складишту података у нашем претходном водичу.
У овом упутству научићемо све о шемама складишта података које се користе за структурирање тачака података (или) табела складишта података.
ка вс кц у тестирању софтвера
Почнимо!!
Циљна група
- Програмери складишта података / ЕТЛ програмери и тестери.
- Стручњаци за базе података са основним знањем о концептима база података.
- Администратори базе података / стручњаци за велике податке који желе да разумеју подручја складишта података / ЕТЛ.
- Дипломирани студенти / студенти који траже посао у складишту података.
Шта ћете научити:
Шема складишта података
У складишту података, шема се користи за дефинисање начина организације система са свим ентитетима базе података (табеле чињеница, табеле димензија) и њихово логичко повезивање.
Ево различитих типова шема у ДВ:
- Звездан распоред
- СновФлаке Сцхема
- Дијаграм галаксије
- Шема звезданих јата
# 1) Звездан распоред
Ово је најједноставнија и најефикаснија шема у складишту података. Табела чињеница у центру окружена табелама са више димензија подсећа на звезду у моделу Звездине шеме.
Табела чињеница одржава односе један према више са свим табелама димензија. Сваки ред у табели чињеница повезан је са својим редовима табеле димензија референцом страног кључа.
Због горе наведеног разлога, навигација између табела у овом моделу је једноставна за постављање упита о агрегираним подацима. Крајњи корисник може лако разумети ову структуру. Отуда сви алати за пословну интелигенцију (БИ) у великој мери подржавају модел шеме Стар.
Током дизајнирања шема звезда, табеле димензија су наменски денормализоване. Широки су са много атрибута за чување контекстуалних података за бољу анализу и извештавање.
Предности звездане шеме
- Упити користе врло једноставна спајања током преузимања података и тиме се побољшавају перформансе упита.
- Једноставно је доћи до података за извештавање, у било ком тренутку за било који период.
Мане звездане шеме
- Ако има много промена у захтевима, не препоручује се дугорочна модификација и поновна употреба постојеће шеме звезда.
- Прекомерност података је већа јер табеле нису хијерархијски подељене.
Пример звездане шеме је дат у наставку.
Упит о звезданој шеми
Крајњи корисник може затражити извештај помоћу алата за пословну интелигенцију. Сви такви захтеви ће се обрађивати стварањем ланца „СЕЛЕЦТ упита“ интерно. Изведба ових упита имаће утицаја на време извршавања извештаја.
Из горњег примера шеме Стар, ако пословни корисник жели да зна колико је романа и ДВД-а продато у држави Керала у јануару 2018. године, тада можете применити упит на табеле шеме звезда како следи:
SELECT pdim.Name Product_Name, Sum (sfact.sales_units) Quanity_Sold FROM Product pdim, Sales sfact, Store sdim, Date ddim WHERE sfact.product_id = pdim.product_id AND sfact.store_id = sdim.store_id AND sfact.date_id = ddim.date_id AND sdim.state = 'Kerala' AND ddim.month = 1 AND ddim.year = 2018 AND pdim.Name in (‘Novels’, ‘DVDs’) GROUP BY pdim.Name
Резултати:
Назив производа | Куантити_Солд | |
---|---|---|
7 | Свако може лако разумети и дизајнирати шему. | Тешко је разумети и дизајнирати шему. |
Новеле | 12.702 | |
ДВД-ови | 32,919 |
Надам се да сте разумели како је лако поставити упит о звезданој шеми.
# 2) Схема СновФлаке
Шема звезда делује као улаз за дизајн шеме СновФлаке. Отпадање снега је процес који у потпуности нормализује све табеле димензија из шеме звезда.
Распоред табеле чињеница у центру окружен вишеструком хијерархијом табела димензија изгледа као СновФлаке у моделу схеме СновФлаке. Сваки ред табеле чињеница повезан је са својим редовима табеле димензија референцом страног кључа.
Током дизајнирања СновФлаке шема, табеле димензија су наменски нормализоване. Страни кључеви ће се додати на сваки ниво табела димензија да би се повезали са његовим родитељским атрибутом. Сложеност шеме СновФлаке је директно пропорционална хијерархијским нивоима табела димензија.
Предности СновФлаке шеме:
- Сувишност података се у потпуности уклања стварањем нових табела димензија.
- У поређењу са звезданом шемом, табеле димензија Снов Флакинг користе мање простора за складиштење.
- Лако је ажурирати (или) одржавати табеле Снов Флакинг.
Мане СновФлаке шеме:
- Због нормализованих табела димензија, ЕТЛ систем мора учитати број табела.
- За извршавање упита можда ће вам требати сложени спојеви због броја додатих табела. Стога ће перформансе упита бити погоршане.
Пример шеме СновФлаке дат је у наставку.
Табеле димензија у горњем дијаграму СновФлаке нормализоване су како је објашњено у наставку:
- Димензија датума нормализује се у кварталне, месечне и недељне табеле остављањем ИД-ова страног кључа у табели датума.
- Димензија складишта је нормализована тако да садржи табелу за стање.
- Димензија производа је нормализована у Бранд.
- У димензији Купац, атрибути повезани са градом премештају се у нову табелу Град остављањем ИД-а страног кључа у табели Купац.
На исти начин, једна димензија може одржавати више нивоа хијерархије.
Различити нивои хијерархија из горњег дијаграма могу се назвати на следећи начин:
- Квартални ид, Месечни ид и Недељни ид су нови сурогат кључеви који се креирају за хијерархије димензија Датум, а они су додати као страни кључеви у табели димензија Датум.
- ИД државе је нови сурогат кључ креиран за хијерархију димензија Сторе и додат је као страни кључ у табели Сторе димензија.
- ИД марке је нови сурогат кључ створен за хијерархију димензија производа и додат је као страни кључ у табели димензија производа.
- ИД града је нови сурогат кључ креиран за хијерархију димензија купца и додат је као страни кључ у табели димензија клијента.
Упит о схеми пахуљица
Можемо да генеришемо исте врсте извештаја за крајње кориснике као и они код структура звезданих шема са СновФлаке шемама. Али овде су упити мало сложени.
Из горњег примера СновФлаке шеме, генерисаћемо исти упит који смо дизајнирали током примера упита шеме Стар.
То јест, ако пословни корисник жели да зна колико је романа и ДВД-а продато у држави Керала у јануару 2018. године, можете да примените упит на табеле шема СновФлаке како следи.
SELECT pdim.Name Product_Name, Sum (sfact.sales_units) Quanity_Sold FROM Sales sfact INNER JOIN Product pdim ON sfact.product_id = pdim.product_id INNER JOIN Store sdim ON sfact.store_id = sdim.store_id INNER JOIN State stdim ON sdim.state_id = stdim.state_id INNER JOIN Date ddim ON sfact.date_id = ddim.date_id INNER JOIN Month mdim ON ddim.month_id = mdim.month_id WHERE stdim.state = 'Kerala' AND mdim.month = 1 AND ddim.year = 2018 AND pdim.Name in (‘Novels’, ‘DVDs’) GROUP BY pdim.Name
Резултати:
Назив производа | Куантити_Солд |
---|---|
Новеле | 12.702 |
ДВД-ови | 32,919 |
Тачке које треба запамтити током испитивања табела са звездицама (или) СновФлаке схемама
Било који упит се може дизајнирати са следећом структуром:
Клаузула СЕЛЕЦТ:
- Атрибути наведени у клаузули за избор приказани су у резултатима упита.
- Израз Селецт такође користи групе за проналажење агрегираних вредности, па стога морамо користити клаузулу по клаузули у услову вхере.
ФРОМ клаузула:
- Све табеле битних чињеница и табеле димензија морају бити одабране према контексту.
Где клаузула:
- Одговарајући атрибути димензије поменути су у клаузули вхере спајањем са атрибутима табеле чињеница. Сурогат кључеви из табела димензија спојени су са одговарајућим страним кључевима из табела чињеница да би се поправио опсег података који се траже. Молимо вас да погледате горе написани пример упита шеме звезда да бисте то разумели. Такође можете филтрирати податке у самој клаузули фром ако у случају да тамо користите унутрашње / спољне спојеве, као што је написано у примеру шеме СновФлаке.
- Атрибути димензије се такође помињу као ограничења података у клаузули вхере.
- Филтрирањем података у свим горе наведеним корацима враћају се одговарајући подаци за извештаје.
У складу са пословним потребама, можете додати (или) уклонити чињенице, димензије, атрибуте и ограничења у звездасту шему (или) упит СновФлаке шеме пратећи горњу структуру. Такође можете додати потупите (или) објединити различите резултате упита да бисте генерисали податке за било које сложене извештаје.
# 3) Дијаграм Галаксије
Шема галаксије позната је и као Шема сазвежђа чињеница. У овој шеми више табела чињеница дели исте табеле димензија. Распоред табела чињеница и табела димензија изгледа као колекција звезда у моделу Галаки шеме.
Заједничке димензије у овом моделу познате су као усклађене димензије.
Ова врста шеме користи се за софистициране захтеве и за обједињене табеле чињеница које су сложеније да би их подржала шема Звезде (или) СновФлаке. Ову шему је тешко одржавати због њене сложености.
Пример шеме Галаксије дат је у наставку.
# 4) Шема звезданих јата
СновФлаке шема са многим табелама димензија можда ће захтевати сложенија спајања током упита. Шема звезда са мање табела димензија може имати већу сувишност. Стога је шема звезданих јата дошла на слику комбиновањем карактеристика горње две шеме.
Шема звезда је основа за дизајнирање шеме звезданих јата, а неколико табела битних димензија из шеме звезда је пахуљасто, а то заузврат формира стабилнију структуру шеме.
Пример шеме звезданих јата дат је у наставку.
Шта је боље шема пахуљица или шема звезда?
Платформа складишта података и БИ алати који се користе у вашем ДВ систему играће виталну улогу у одлучивању о одговарајућој шеми коју треба дизајнирати. Звезда и СновФлаке су најчешће коришћене шеме у ДВ.
Звездана шема је пожељнија ако БИ алати омогућавају пословним корисницима једноставну интеракцију са структурама табела помоћу једноставних упита. СновФлаке шема је пожељнија ако су БИ алати компликованији за пословне кориснике ради директне интеракције са структурама табела због више придруживања и сложених упита.
Можете наставити са СновФлаке шемом ако желите да уштедите мало простора за складиштење или ако је ваш ДВ систем оптимизовао алате за дизајнирање ове шеме.
Шема звезда против шеме пахуљица
Доље су дате кључне разлике између шеме звезда и шеме СновФлаке.
С.Но | Звездан распоред | Шема пахуљица снега |
---|---|---|
1 | Вишак података је већи. | Прекомерност података је мања. |
два | Простора за складиштење табела димензија је више. | Простор за одлагање табеларних табела је релативно мањи. |
3 | Садржи денормализоване табеле димензија. | Садржи табеле нормализованих димензија. |
4 | Табела појединачних чињеница окружена је табелама са више димензија. | Табела појединачних чињеница окружена је вишеструком хијерархијом табела димензија. |
5 | Упити користе директно спајање чињеница и димензија за дохватање података. | Упити користе сложене спојеве између чињеница и димензија за дохватање података. |
6 | Време извршавања упита је мање. | Време извршавања упита је дуже. |
8 | Користи приступ одозго надоле. | Користи приступ одоздо према горе. |
Закључак
Надамо се да сте добро разумели различите типове шема складишта података, заједно са њиховим предностима и недостацима из овог водича.
Такође смо научили како се Стар Схема и СновФлаке Схема могу испитивати и која шема треба да се бира између ове две заједно са њиховим разликама.
Пратите наш предстојећи водич да бисте сазнали више о Дата Март-у у ЕТЛ-у !!
=> Овде припазите на једноставну серију тренинга о складиштењу података.
Препоручено читање
- Питхон типови података
- Типови података Ц ++
- Водич за тестирање складишта података са примерима | ЕТЛ Водич за тестирање
- 10 најпопуларнијих алата за складиште података и технологија за тестирање
- Димензионални модел података у складишту података - Водич са примерима
- Водич за тестирање складишта података ЕТЛ (комплетан водич)
- Шта је ЕТЛ (екстракт, трансформација, учитавање) поступак у складишту података?
- Рударство података: процес, технике и главни проблеми у анализи података