Кіріспе

Деректер қоймасындағы фактілер мен өлшемдерді жіктеуге арналған құрылым – деректер қоймасындағы өлшем.

Өлшем – пайдаланушыларға бизнес сұрақтарына жауап беруге мүмкіндік беру үшін фактілер мен өлшемдерді жіктейтін құрылым. Көбінесе адамдар, өнімдер, орын және уақыт өлшемдер ретінде қолданылады. (Ескертпе: Адамдар мен уақыт кейде өлшем ретінде модельденбейді.) Деректер қоймасында өлшемдер, ретсіз сандық өлшемдерге құрылымды таңбалау ақпаратын ұсынады. Өлшем – жеке, бір-бірімен қабаттаспайтын дерек элементтерінен тұратын дерек жиынтығы. Өлшемдердің негізгі функциялары үш түрлі: сүзгілеу, топтастыру және таңбалау. Бұл функциялар көбінесе «кесіп-түйіршіктеу» деп сипатталады. Деректер қоймасының кең таралған мысалы – сатуды өлшем ретінде, ал тұтынушы мен өнімді өлшемдер ретінде пайдалану. Әр сатылымда тұтынушы өнім сатып алады. Деректерді зерттеу тобынан басқа барлық тұтынушыларды алып тастау арқылы кесуге болады, содан кейін өнім бойынша топтастыру арқылы түйіршіктеуге болады. Өлшемдік дерек элементі – статистикадағы категориялық айнымалыға ұқсас. Әдетте деректер қоймасындағы өлшемдер бір немесе бірнеше иерархияға ішкі түрде ұйымдастырылады. «Күн» – бірнеше мүмкін иерархиясы бар кең таралған өлшем:

«Күндер (топтастырылған) Айлар (топтастырылған) Жылдар»,
«Күндер (топтастырылған) Апталар (топтастырылған) Жылдар»
«Күндер (топтастырылған) Айлар (топтастырылған) Тоқсандар (топтастырылған) Жылдар»
және т.б.

Өлшемін баяу өзгерту

Баяу өзгеріп отыратын өлшем – уақыт өте ретсіз, бірақ баяу өзгеріп отыратын дерек атрибуттарының жиынтығы, мысалы, мекенжай немесе есім. Бұл атрибуттар уақыт ішінде өзгеріп, баяу өзгеріп отыратын өлшем ретінде біріктіріледі. Мұндай өлшемдер түрлеріне бөлінеді:

0-түр (Түпнұсқаны сақтау): Атрибуттар ешқашан өзгермейді. Тарих жоқ. 1-түр (Жаңа мәнмен жабу): Атрибут үшін ескі мәндер жаңа мәндермен жабылады. Тарих жоқ. 2-түр (Жаңа қатар қосу): Жаңа мән үшін басталу күні/аяқталу күні немесе нұсқасы бар жаңа қатар құрылады. Бұл тарихты құрайды. 3-түр (Жаңа атрибут қосу): Жаңа мән үшін жаңа баған құрылады. Тарих тарихи деректерді сақтауға арналған бағандар санымен шектеледі. 4-түр (Тарих кестесін қосу): Бір кесте ағымдағы мәнді сақтайды, ал тарих екінші кестеде сақталады. 5-түр (1 + 4 біріктірілген тәсіл): 1-түр мен 4-түрдің комбинациясы. Тарих екінші тарих кестесі арқылы жасалады. 6-түр (1 + 2 + 3 біріктірілген тәсіл): 1-түр, 2-түр және 3-түрдің комбинациясы. Тарих жеке қатарлар мен атрибуттар арқылы құрылады. 7-түр (Гибридтік тәсіл): Суррогаттық және табиғи кілттер қолданылады.

Қалыпты өлшем

Қалыптасқан өлшем – бірнеше деректер кестесінде бірдей кілт мәнін пайдалана отырып, бірдей құрылымға, атрибуттарға, домендік мәндерге, анықтамалар мен түсініктерге физикалық сілтеме жасалған деректер атрибуттарының жиынтығы. Қалыптасқан өлшем көптеген фактілермен байланысты болады. Өлшемдер бір-біріне сәйкес келеді, егер олар толықтай бірдей болса (кілттерді қоса алғанда) немесе біреуі екіншісінің кіші жиыны болса. Ең маңыздысы, бір және де сол қалыптасқан өлшем(дер)ден алынған екі әртүрлі жауап жиынтығындағы қатар тақырыптары толық сәйкес келуі керек. Қалыптасқан өлшемдер ең ұсақ, егжей-тегжейлі өлшеммен толықтай бірдей немесе оның қатаң математикалық кіші жиыны болып табылады. Егер атрибуттар әртүрлі атаулармен белгіленген немесе әртүрлі мәндерді қамтитын болса, өлшем кестелері сәйкес келмейді. Қалыптасқан өлшемдердің түрлі нұсқалары бар. Ең қарапайым деңгейде, қалыптасқан өлшемдер олармен байланыстырылған барлық мүмкін фактілік кестелер үшін бірдей мағынаны білдіреді. Сату фактілеріне қосылған күндік өлшем кестесі, қор фактілеріне қосылған күндік өлшеммен толықтай сәйкес келеді.

Жүктілік өлшемі

Жәнкелді өлшем – әдетте төмен кардиналдылықтағы жалаушалар мен көрсеткіштердің ыңғайлы тобы. Абстрактілі өлшем құру арқылы осы жалаушалар мен көрсеткіштер фактілер кестесінен алынып, пайдалы өлшемдік құрылымға орналастырылады. Жәнкелді өлшем – фактілер кестесіне немесе қолданыстағы өлшем кестелерінің ешқайсысына жатпайтын атрибуттардан тұратын өлшем кестесі. Бұл атрибуттардың сипаты көбінесе мәтін немесе әртүрлі жалаулар, мысалы, жалпылама түсініктемелер немесе қарапайым «иә/жоқ» немесе «дұрыс/жалған» көрсеткіштері болады. Мұндай атрибуттар көбінесе бизнес-процестегі барлық анық өлшемдер анықталғаннан кейін қалады, сондықтан дизайнер осы атрибуттарды басқа өлшемдерге жатпайтын жерге қалай орналастыру керектігіне тап болады. Бір шешім – қалған атрибуттардың әрқайсысы үшін жаңа өлшем жасау, бірақ олардың сипатына байланысты көптеген жаңа өлшемдер жасау қажет болуы мүмкін, нәтижесінде көптеген сыртқы кілттері бар фактілер кестесі пайда болады. Дизайнер қалған атрибуттарды фактілер кестесінде қалдыруды да шеше алады, бірақ бұл, мысалы, атрибут ұзақ мәтіндік тізбе болса, кестедегі қатар ұзындығын қажетсіз түрде ұлғайтуы мүмкін. Бұл қиындыққа шешім – барлық атрибуттарды анықтап, оларды бір немесе бірнеше жәнкелді өлшемдерге орналастыру. Бір жәнкелді өлшемде бір-бірімен байланысы жоқ бірнеше «дұрыс/жалған» немесе «иә/жоқ» көрсеткіштері болуы мүмкін, сондықтан көрсеткіштерді сипаттамалық атрибутқа түрлендіру ыңғайлы. Мысалы, пакет келгені туралы көрсеткішті «иә» немесе «жоқ» деп көрсетудің орнына, оны жәнкелді өлшемде «келді» немесе «күтілуде» деп түрлендіруге болады. Дизайнер өлшем кестесін барлық комбинациялар қамтылған басқа көрсеткіштермен кездесетін барлық көрсеткіштерді қамтитындай етіп құруды таңдай алады. Бұл кесте үшін 2x қатар құрайды, мұнда x – көрсеткіштер саны. Бұл шешім дизайнер көптеген әртүрлі комбинацияларды күтетін және мүмкін комбинациялардың саны қанағаттанарлық деңгейде шектелген жағдайларда орынды. Егер көрсеткіштердің саны көп болса, яғни өте үлкен кесте пайда болса немесе дизайнер мүмкін болатын комбинациялардың аз ғана бөлігін күтсе, жаңа комбинациялар кездескен сайын жәнкелді өлшемде әр қатарды құру орындырақ болар еді. Кестелердің мөлшерін шектеу үшін әртүрлі көрсеткіштер арасындағы байланысқа байланысты бірнеше жәнкелді өлшемдерді пайдалану орынды болуы мүмкін. Жәнкелді өлшемдер фактілер кестесінен жалпылама түсініктемелер сияқты атрибуттарды орналастыру үшін де қолайлы. Мұндай атрибуттар клиент тапсырыс берген кездегі қосымша түсініктемелерден алынған деректерден тұруы мүмкін, сондықтан көп жағдайда бос болады. Сондықтан, жәнкелді өлшемде бос мәндерді білдіретін бір қатар болуы керек, ол бос түсініктемелермен қайтарылған әрбір қатар үшін фактілер кестесінде пайдаланылатын орынбасар кілт ретінде қолданылады.

Өршілі өлшем

Бұзылған өлшем – атрибуттары жоқ, сондықтан нақты өлшем кестесімен байланыспайтын транзакция нөмірі, шот-фактура нөмірі, билет нөмірі немесе жүкқұжат нөмірі сияқты кілт. Бұзылған өлшемдер факт кестесінің гранулярлығы жеке транзакция элементін немесе жол элементін көрсететін кезде жиі кездеседі, себебі бұзылған өлшем ата-ананың бірегей идентификаторын ұсынады. Бұзылған өлшемдер көбінесе факт кестесінің біріншілік кілтінің құрамында маңызды рөл атқарады.

Рөлдік ойын өлшемдері

Өлшемдер бір дерекқорында әртүрлі қолданыстар үшін жиі қайта қолданылады. Мысалы, "Күн" өлішемін "Сату күні", "Жеткізу күні" немесе "Жұмысқа қабылдану күні" үшін де пайдалануға болады. Мұндай өлішеме "рольдік өлішем" деп аталады. Бұл бір өлішем кестесі арқылы көрініс жасау арқылы іске асырылуы мүмкін.

Ауыспалы тұтқаның өлшемдері

Көбінесе өлшем кестелері сыртқы кілттер арқылы басқа өлшемдерге сілтеме жасамайды. Егер мұндай жағдай туындаса, сілтеме жасалған өлшемге «қосымша өлшем» (outrigger dimension) деп аталады. Қосымша өлшемдер деректер қоймасының дұрыс емес құрылымы саналады: екі өлшемді байланыстыратын фактілік кестелерді пайдалану артық көріледі.

Кішірейтілген өлшем

Қалыптасқан өлшем, егер ол бастапқы өлшемнің қатарларының және/немесе бағандарының бір бөлігін қамтитын болса, қысқартылған өлшем деп айтылады.

Күнтізбелік күн өлшемі

Күндік дәлдікпен күндерді көрсету үшін арнайы өлшем түрін пайдалануға болады. Күндер фактілер кестесінде күн өлшеміне сыртқы кілттер арқылы сілтеме жасалады. Күн өлшемінің біріншілік кілті YYYYMMDD форматындағы сан немесе жасалма кілт болуы мүмкін. Күн өлшемі жылдың аптасы сияқты басқа да атрибуттарды, сондай-ақ жұмыс күндерін, мерекелерді білдіретін белгілерді қамтуы мүмкін. Сондай-ақ, ол әлі белгілі емес немесе анықталмаған күндерді көрсететін арнайы қатарларды қамтуы мүмкін. Күн өлшемі барлық қажетті күндермен, мысалы, келесі 10 жылға немесе қажет болған жағдайда одан да көпке, ал өткен оқиғалар болса – өткен күндермен басталуы керек. Ал уақытты фактілер кестесінде уақыт белгісі ретінде көрсету әдетте тиімдірек.

ISO-ның бейнелеу терминдерін қолдану

ISO/IEC 11179 сияқты метадеректер тізілімінен деректерді сілтемелеген кезде "Индикатор" (нағыз/жалған бульдік мәні), "Код" (бірін бірі жаппай алмастырмайтын санамаланған мәндер жиынтығы) сияқты көрсетімдер өлшемдер ретінде қолданылады. Мысалы, Ұлттық ақпарат алмасу моделін (NIEM) пайдаланғанда дерек элементінің атауы "PersonGenderCode" болып келеді, ал санамаланған мәндер "ер", "әйел" және "белгісіз" болуы мүмкін.