Основни концепции за хранилище на данни
Основните разпоредби на концепцията за HD
Концепцията за HD се основава на следните разпоредби:
- интегриране и координиране на данни от различни източници, като конвенционални системи за онлайн обработка, бази данни, счетоводни системи, офис документи, електронни архиви, разположени както в предприятието, така и във външната среда;
- разделяне на набори от данни, използвани от системите за изпълнение на транзакции и DSS.
Inmon дефинира склад за данни като специфичен за домейн, интегриран, неизменен и хронологичен набор от данни, предназначен да подпомага вземането на управленски решения.
В този случай предметната ориентация означава, че хранилището на данни трябва да бъде разработено, като се вземат предвид спецификите на конкретна предметна област, а не аналитичните приложения, с които се предполага, че се използва. Структурата на хранилището за данни трябва да отразява представите на анализатора за информацията, с която той трябва да работи.
Интеграцията означава, че трябва да е възможно да се зарежда информация в хранилището на данни от източници, които поддържат различни формати на данни и са създадени в различни приложения - счетоводни системи, бази данни, електронни таблици и други офис приложения, които поддържат структурирани данни (например текстови файлове с разделители). В същото време данните, които позволяват различен формат (например числа, дата и час), трябва да бъдат преобразувани в едно представяне по време на процеса на изтегляне. Освен това е много важно да проверявате качените данни за цялост и последователност, за да осигурите необходимото ниво на обобщаване (агрегиране). Обемът на данните в хранилището трябва да е достатъчен за ефективно решаване на аналитични проблеми, така че данните за няколко години да могат да се натрупват в хранилището на даннии дори десетилетия.
Принципът на неизменността предполага, че за разлика от конвенционалните системи за онлайн обработка на данни, данните в хранилището на данни след зареждане не трябва да подлежат на никакви промени, с изключение на добавянето на нови данни.
И накрая, поддръжката на хронология означава спазване на реда на записите, за които ключовите атрибути Дата и Час са въведени в структурата на хранилището на данни. Освен това, ако физически подредите записите в хронологичен ред, като например възходящ ред на атрибута Дата, можете да намалите времето за изпълнение на аналитични заявки.
Използването на концепцията за HD в DSS и анализ на данни допринася за постигането на такива цели като:
- своевременно предоставяне на анализатори и мениджъри на цялата информация, необходима за разработване на разумни и висококачествени управленски решения;
- създаване на единен модел за представяне на данни в организацията;
- Създаване на интегриран източник на данни, който осигурява лесен достъп до разнородна информация и гарантира еднакви отговори на едни и същи заявки от различни аналитични приложения.
Задачи, решени от HD
Процесът на разработване на хранилище за данни отнема много време, някои организации отделят няколко месеца и дори години за него, а също така инвестират значителни финансови ресурси. Основните задачи, които трябва да бъдат решени в процеса на разработване на хранилище за данни са:
- избор на структура за съхранение на данни, която осигурява висока скорост на изпълнение на заявките и минимизира обема на RAM;
- първоначално зареждане и последващо попълване на склада;
- осигуряване на унифицирана методология за работа с разнородни данни и създаване на удобен потребителски интерфейс.
Обхватът на задачите на извличането на данни е много широк иЗадачите са много различни по отношение на трудност. Следователно, в зависимост от спецификата на решаваните задачи и нивото на тяхната сложност, архитектурата на хранилището на данни и моделите на данни, използвани за изграждането им, могат да се различават. Обобщената концептуална схема на HD е показана на фиг. 4.
Фиг. 4. Концептуална схема HDСпоред схемата данните се извличат от различни източници и се зареждат в хранилище на данни, което съдържа както самите данни, представени в съответствие с определен модел, така и метаданни.
Подробни и обобщени данни
Данните в хранилището на данни се съхраняват както в подробна, така и в обобщена форма. Подробните данни идват директно от източници на данни и съответстват на елементарни събития, регистрирани от OLTP системи. Такива данни могат да бъдат дневни продажби, брой произведени артикули и др. Това са неделими стойности, опит за допълнително детайлизиране, което ги лишава от логически смисъл.
Много задачи за анализ (например прогнозиране) изискват използването на данни с определена степен на обобщение. Например сумите от продажби, взети по дни, могат да дадат много неравномерна поредица от данни, което затруднява идентифицирането на характерни периоди, модели или тенденции. Въпреки това, ако обобщим тези данни в рамките на седмица или месец и вземем сумата, средните, максималните и минималните стойности за съответния период, тогава получената серия може да се окаже по-информативна. Процесът на обобщаване на подробни данни се нарича агрегиране, а самите обобщени данни се наричат агрегирани (понякога агрегати). Обикновено числените данни (факти) се агрегират, изчисляват се и се съдържат в хранилището на данни заедно с подробни данни.
Тъй като същият набор от подробни данни можегенерира няколко набора от агрегирани данни с различна степен на обобщение, обемът на хранилището за данни се увеличава, понякога значително. Например набор, съдържащ данни за продажби по дни през годината, в допълнение към своите 360 стойности, генерира 52 стойности, обобщени по седмици и 12 по месеци. Ако всички видове агрегиране се изчисляват едновременно - сумата, средните, максималните и минималните стойности за съответния период - тогава броят на съхранените агрегирани стойности вече ще бъде (52 + 12) • 4 = 256. Понякога това води до "експлозивен", неконтролиран растеж на хранилището на данни и причинява сериозни технически проблеми: съхранението "набъбва" поради факта, че непрекъснатият поток от входни данни автоматично се агрегира в в съответствие с настройките на системата за съхранение на данни. Трябва обаче да се примирим с това: ако агрегираните данни не се съдържат в хранилището на данни, а се изчисляват по време на изпълнение на заявки, времето за изпълнение на заявките ще се увеличи няколко пъти.
метаданни
Думата „метаданни“ (от гръцки meta и латински data) буквално се превежда като „данни за данни“. Метаданните в широк смисъл са необходими, за да опишат значението и свойствата на информацията, за да я разбираме, използваме и управляваме по-добре. Всеки, който е чел книги или е използвал библиотека, се е сблъсквал с метаданни по един или друг начин.
От гледна точка на ИТ технологиите метаданните са всяка информация, необходима за анализа, проектирането, изграждането, внедряването и използването на компютърна информационна система. Една от основните цели на метаданните е да подобрят ефективността на търсенето. Заявките за търсене, които използват метаданни, правят възможно извършването на сложни операции за филтриране и избор на данни.
Ако разгледаме концепцията за "метаданни" в контекста на технологията за съхранение на данни, тогава тя може да бъде дефинирана по следния начин.
Метаданните са средство на високо ниво за отразяване на информационния модел и описване на структурата на данните, използвана в хранилището на данни. Метаданните трябва да съдържат описание на структурата на данните на хранилището и структурата на данните на импортираните източници. Метаданните се съхраняват отделно от данните в така нареченото хранилище на метаданни.
Метаданните са ключов фактор за успех при разработването и внедряването на хранилище за данни. Те съдържат цялата необходима информация за извличане, трансформиране и зареждане на данни от различни източници, както и за последващо използване и интерпретиране на данните, съдържащи се в хранилището на данни.
Има две нива на метаданни – техническо (административно) и бизнес ниво. Техническото ниво съдържа метаданните, необходими за осигуряване на функционирането на хранилището (статистически данни за изтегляне и използване, описание на модела на данни и др.). Бизнес метаданните позволяват на потребителя да се съсредоточи върху процеса на анализ, а не върху техническите аспекти на работата с хранилището; те включват бизнес термини и определения, с които потребителят е свикнал.
Всъщност бизнес метаданните са описание на предметната област, за която се създава аналитична система или хранилище на данни. Във формирането на бизнес метаданни трябва активно да участват експерти и анализатори, които впоследствие да използват системата за получаване на аналитични справки.
Бизнес метаданните описват обектите от предметната област, информацията за които се съдържа в хранилището на данни - атрибутите на обектите и техните възможни стойности, съответните полета в таблици и др. Бизнес метаданните формират това, което е известно като семантичен слой. Потребителят оперира с близки до него термини на домейна: продукт, клиент, продажби, покупки и т.н., а семантичният слой превежда бизнесаусловия в заявки на ниско ниво за данните в магазина.
Начини за използване на HD
С помощта на аналитично приложение, използвано във връзка със склада за данни, можете да създавате заявки и да получавате данни от хранилището въз основа на тях. Данните могат да бъдат визуализирани директно или обработени с помощта на аналитично приложение, след което резултатите от тази обработка се визуализират.
Обхватът на аналитичните задачи е много широк. Съответно методите за прилагане на HD за решаване на определени проблеми са много разнообразни. Въпреки това има три основни подхода за използване на DW:
- редовни отчети - изготвяне на отчети по стандартни форми, получени многократно с определена периодичност;
- ad hoc заявки - възможност за получаване на отговори на нестандартни, формирани "при поискване" въпроси;
- извличане на данни - поддръжка на процеса на извличане на големи масиви от данни с цел идентифициране на скрити модели, структури и обекти, изграждане на модели, прогнози и др.
Кратък преглед на HD архитектурите
Проектирането и изграждането на корпоративно хранилище за данни е скъпа и отнемаща време задача. Успехът на внедряването на хранилище за данни до голяма степен зависи от нивото на информатизация на бизнес процесите в компанията, установените информационни потоци, обема и структурата на използваните данни, изискванията за скорост на изпълнение на заявките и честотата на обновяване на хранилището, характера на решаваните аналитични задачи и др. За да се доближи хранилището на данни до условията и спецификата на конкретна организация, вече са разработени няколко архитектури за съхранение - релационна, многомерна, хибридна и виртуална.
Релационните хранилища на данни използват класическия релационен модел, който е типичен за OLTP системите за онлайн регистриране. Даннисе съхраняват в релационни таблици, но образуват специални структури, които емулират многомерно представяне на данни. Тази технология е съкратено ROLAP - Relational OLAP.
Многомерните хранилища за данни реализират многомерно представяне на данни на физическо ниво под формата на многомерни кубове. Тази технология се нарича MOLAP - Multidimensional OLAP.
Хибридните хранилища на данни комбинират свойствата както на релационни, така и на многомерни модели на данни. В хибридните хранилища за данни подробните данни се съхраняват в релационни таблици, докато агрегатите се съхраняват в многомерни кубове. Тази технология за изграждане на склад за данни се нарича HOLAP – Hybrid OLAP.
Виртуалните DW не са хранилища на данни в обичайния смисъл. В такива системи работата се извършва с отделни източници на данни, но се емулира работата на конвенционален склад за данни. С други думи, данните не се консолидират физически, а се събират директно по време на изпълнение на заявката.
Освен това всички HD могат да бъдат разделени на едноплатформени и междуплатформени. Едноплатформените хранилища за данни се изграждат на базата само на една СУБД, докато кросплатформените могат да се изграждат на базата на няколко СУБД.