Кіріспе
Көпөлшемді деректер базасындағы есептеу кестелерінің логикалық құрылымы. Компьютерлік технологияда қар жапырағы схемасы немесе қар жапырағы моделі – көпөлшемді деректер базасындағы кестелердің логикалық құрылымы, онда объектілер арасындағы қатынастар диаграммасы қар жапырағының пішінін еске түсіреді. Қар жапырағы схемасы орталықтандырылған факт кестелері арқылы көрсетіледі, олар бірнеше өлшемдерге қосылған. "Қар жару" – жұлдыз схемасындағы өлшем кестелерін нормализациялау әдісі. Егер барлық өлшем кестелері толық нормализацияланған болса, нәтижедегі құрылым ортасында факт кестесі бар қар жапырағына ұқсайды. Қар жарудың принципі – төмен кардиналдық атрибуттарды жойып, жеке кестелер құру арқылы өлшем кестелерін нормализациялау. Қар жапырағы схемасы жұлдыз схемасына ұқсас. Дегенмен, қар жапырағы схемасында өлшемдер бірнеше байланысты кестелерге нормализацияланады, ал жұлдыз схемасының өлшемдері денормализацияланады, әр өлшем бір кестемен көрсетіледі. Қар жапырағы схемасының өлшемдері күрделі және көп деңгейлі қатынастарға ие болғанда, сондай-ақ бағынышты кестелерде бірнеше басты кестелер болғанда ("жолдың шатырлары") күрделі қар жапырағы пішіні пайда болады.
In computing, a snowflake schema or snowflake model is a logical arrangement of tables in a multidimensional database such that the entity relationship diagram resembles a snowflake shape. The snowflake schema is represented by centralized fact tables which are connected to multiple dimensions. "Snowflaking" is a method of normalizing the dimension tables in a star schema. When it is completely normalized along all the dimension tables, the resultant structure resembles a snowflake with the fact table in the middle. The principle behind snowflaking is normalization of the dimension tables by removing low cardinality attributes and forming separate tables. The snowflake schema is similar to the star schema. However, in the snowflake schema, dimensions are normalized into multiple related tables, whereas the star schema's dimensions are denormalized with each dimension represented by a single table. A complex snowflake shape emerges when the dimensions of a snowflake schema are elaborate, having multiple levels of relationships, and the child tables have multiple parent tables ("forks in the road").
Жалпы қолданылу
Жұлдыз және қар түйіршігі схемалары ең көп кездесетін орын – өлшемдік деректер қоймалары мен деректер базары, онда деректерді алу жылдамдығы деректерді өңдеу тиімділігінен артық саналады. Сондықтан, осы схемалардағы кестелер көбінесе толық қалыпқа келтірілмейді және жиі үшінші қалыпты формадан төмен деңгейде жасалады.
Деректерді қалыпқа келтіру және сақтау
Нормалдастыру деректерді артықшылықты (көшірмелеуді) болдырмау үшін, жиі қайталанатын деректер топтарын жаңа кестелерге көшіру арқылы бөледі. Сондықтан нормалдау берілген сұранысты орындау үшін қосылуы қажет кестелердің санын арттыруға бейім, бірақ деректерді сақтау үшін қажетті кеңістікті және деректер өзгертілген жағдайда жаңартылуы керек орындардың санын азайтады. Ғарышты сақтау тұрғысынан қарағанда, өлшемдік кестелер әдетте фактілік кестелерге қарағанда кішірек болады. Бұл көбінесе жұлдыз схемасымен салыстырғанда қар жапырағы схемасының ықтимал сақтау кеңістігінің артықшылықтарын жоққа шығарады. Мысал: 220 елдегі 300 дүкенде 1 миллион сату операциясы жұлдыз схемасында 1 000 300 жазбаны (фактілік кестеде 1 000 000 жазба және өлшемдік кестеде 300 жазба) құрайды, онда әрбір ел сол елдегі әрбір дүкен үшін тізімделеді. Ел кестесіне сілтеме жасайтын ел кілттері бар қар жапырағы схемасы 1 000 000 жазбадан тұратын деректер кестесінен, 300 жазбадан тұратын дүкен кестесінен және 220 жазбадан тұратын ел кестесінен тұрады. Бұл жағдайда жұлдыз схемасы, одан әрі денормализацияланса да, жазбалар санын (маргіналды) ~0,02% ғана азайтады ([1 000 000+300] орнына [1 000 000+300+220]). Кейбір деректер базасын әзірлеушілер жұлдыз схемасын симуляциялау үшін көптеген қажетті қосылыстарды орындайтын оның үстінде салынған көріністермен негізгі қар жапырағы схемасын құру арқылы келісімге келеді. Бұл өлшемдерді нормалдау арқылы қол жеткізілген сақтау артықшылықтарын жұлдыз схемасы ұсынатын сұраныстың қарапайымдылығымен қамтамасыз етеді. Алайда, сервердің негізгі қосылуларды автоматты түрде орындауын талап ету сұранысқа жауап беру кезінде өнімділіктің төмендеуіне және белгілі бір сұраныстарды орындау үшін қажет болмауы мүмкін кестелерге қосымша қосылуларға әкелуі мүмкін.
Some database developers compromise by creating an underlying snowflake schema with views built on top of it that perform many of the necessary joins to simulate a star schema. This provides the storage benefits achieved through the normalization of dimensions with the ease of querying that the star schema provides. The tradeoff is that requiring the server to perform the underlying joins automatically can result in a performance hit when querying as well as extra joins to tables that may not be necessary to fulfill certain queries.
Артықшылықтары
Қар түйіршігі схемасы жұлдыз схемасы логикалық моделімен бір туыс. Шындығында, жұлдыз схемасы қар түйіршігі схемасының ерекше түрі болып есептеледі. Қар түйіршігі схемасы кейбір жағдайларда жұлдыз схемасына қарағанда артықшылықтар береді, олардың ішінде:
Кейбір OLAP көпөлшемді деректер базасын модельдеу құралдары қар түйіршігі схемалары үшін жақсырақ оңтайландырылған. Атрибуттарды нормализациялау сақтау көлемін азайтуға мүмкіндік береді, бірақ бұл дереккөз сұранысының біріктірулеріндегі күрделілікті арттырады.
Кемшіліктер
Қар жапырағы схемасының басты кемшілігі – жұлдыз схемасына қарағанда, атрибуттардың нормализациясының қосымша деңгейлері дереккөз сұраныс қосылымдарын күрделендіреді. Жалпақ, бір кестелі өлшемдермен салыстырғанда, қар жапырағы схемалары көп сынға ұшыраған. Олардың мақсаты – нормаланған деректерді тиімді және ықшам түрде сақтау, бірақ бұл осы өлшемдегі қосылымдарды қарау кезінде нашар өнімділікке әкеледі. Бұл кемшілік, оны алғаш танығаннан бері өткен жылдарда, шолу құралдарында сұраныстың жақсырақ орындалуының арқасында азайып қалуы мүмкін.