Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Хранилища данных и OLAP-технологии. Учебное пособие.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
☆
41
В данном случае есть три события, отражающих продажу одного и того же количества материала одному клиенту. Но то, что это именно три продажи, а не одна, случайно введенная три раза, мы можем узнать толь­ко по номеру договора. Но номер договора не будет использоваться при построении модели. Поэтому три записи можно объединить в одну, в ко­торой количество проданного материала составит 30 куб. м, а сумма про­даж 195 000 руб. Очевидно, что логика анализа при этом не пострадает. Напротив, удаление двух дублирующих записей с целью оставить только одну приведет к потере информации. Например, если мы захотим ранжи­ровать клиентов по объемам закупок, чтобы выбрать наиболее привлека­тельные для сотрудничества фирмы, то рейтинг ООО «Венец» окажется незаслуженно низким.
Противоречия. Обработка противоречий во многом похожа на обработку дубликатов: противоречивые записи могут удаляться или объединяться в зависимости от логики анализа. Например, пусть име­ются два поля с одинаковыми агрохимическими характеристиками почв, но различной урожайностью (табл. 2.2).
Таблица 2.2. Пример противоречий
Площадь,
га
Кислотность,
pH
Азот,
мг/100 г
Калий,
мг/100 г
Фосфор,
мг/100 г
Юг,
%
Ср.
угол
Урожай-
ность, ц/га
25
4,9
3
18,2
16,42
36,41
1,31
2,36
25
4,9
3
18,2
16,42
36,41
1,31
8,82
Разница в урожайности может быть объяснена факторами, не от­раженными в исходных данных (например, близостью грунтовых вод). Модель, построенная на противоречивых данных, может оказаться не­состоятельной. Например, очевидно, что в кластерной модели оба этих поля окажутся в одном кластере, несмотря на то, что их урожайности значительно различаются. Удалив одну из записей, мы потеряем ин­формацию, которая может оказаться полезной для анализа. Поэтому в данном случае предпочтительно объединить записи в одну, просумми­ровав площадь поля. Значение урожайности можно выбрать суммарное, минимальное, максимальное, или усреднить. В результате получим табл. 2.3.
Таблица 2.3. Результат обработки противоречий
Площадь,
га
Кислотность,
pH
Азот,
мг/100 г
Калий,
мг/100 г
Фосфор,
мг/100 г
Юг,
%
Ср.
угол
Урожайность,
ц/га
50
4,9
3
18,2
16,42
36,41
1,31
5,59
Таким образом, основной проблемой при обработке дубликатов и противоречий является то, что ее результаты сильно зависят от ло-
42
гики и целей анализа, что затрудняет автоматизацию процесса обра­ботки и требует вмешательства аналитика и эксперта в предметной области.

2.3. Пример очистки данных в АП Deductor

Рассмотрим набор данных на рис. 2.1.
Рис. 2.1. Фрагмент набора данных, содержащих аномальные значения,
дубликаты и противоречия
На рис. 2.1 первые две строки (поле № 1) образуют дубликаты, 3-я и 4-я строки (поле № 2) образуют противоречие – для полей с оди­наковыми характеристиками различные классы урожайности. И, нако­нец, в 5-й строке содержатся два аномальных значения – кислотность, равная 55,6, и урожайность 630 ц/га. В 6-й строке имеется два пропус­ка. Нашей задачей будет обнаружить эти проблемы в данных и испра­вить их с помощью модуля очистки данных аналитической системы
Deductor.
Очистку данных следует начинать с общей оценки их качества, поскольку качество данных может оказаться таким низким, что ника­кого смысла выполнять их очистку не будет. Для этого нужно открыть «Мастер обработки» и в разделе «Очистка данных» выбрать пункт «Качество данных». Первым шагом в настройке оценки качества дан­ных является выбор способа и параметров обнаружения аномалий (рис. 2.2).
Для обнаружения аномальных значений может быть выбран критерий на основе стандартного отклонения или интерквартильного размаха. Первый рекомендуется, если значения признака имеют нор­мальное распределение или близкое к нему. В противном случае ре­комендуется выбрать критерий на основе интерквартильного размаха. Для выбранного критерия требуется указать число интервалов для установки порогов для выбросов и экстремальных значений.
43
Рис. 2.2. Настройка параметров определения выбросов и
экстремальных значений
На следующем шаге требуется выбрать столбцы, для которых будет производиться оценка качества данных (рис. 2.3). Это необхо­димо в том случае, если нужно выполнить предобработку не всех столбцов, а только некоторых. При больших объемах данных это мо­жет позволить существенно сократить время, затрачиваемое на обра­ботку.
Рис. 2.3. Выбор столбцов для оценки качества данных
После запуска и успешного завершения процедуры оценки ка­чества данных должен быть сформирован отчёт об обнаруженных проблемах и сформулированы рекомендации по их решению. Для это­го в списке доступных визуализаторов следует выбрать пункт «Оценка качества», в результате чего будет сформирован отчет по качеству данных, форма которого представлена на рис. 2.4. В отчете для каждо­го столбца указывается обнаруженное количество пропусков, выбро­сов и экстремальных значений, а также предлагаются варианты дейст­вия по их обработке - заменять (на медиану, среднее, наиболее вероят­ное значение и т.д.), ограничивать значения или удалять записи, со­держащие проблему.
44
Рис. 2.4. Форма отчёта по качеству данных.
В поле «Резюме» указывается, является ли столбец пригодным для обработки без процедуры очистки или требует её применения. За­тем, основываясь на результатах, представленных в отчёте, следует при­ступить собственно к обработке проблем в данных. Для этого в окне «Качество данных» следует настроить способ обработки пропусков и аномальных значений. Чтобы задать способ обработки пропусков, мож­но использовать кнопку - «Задать обработку пропусков», которая позволит выбрать наиболее подходящий способ. Аналогично кнопки
позволят задать способ обработки для выбросов и экстремальных значений. Если кнопки не активны, то соответствующих проблем в дан­ных не обнаружено. После этого перейти в «Мастер обработки» и в раз­деле «Очистка данных» использовать обработчики «Заполнение про­пусков» и «Редактирование выбросов и аномальных значений». В ре­зультате будут сформированы новые наборы данных (представленные в Панели сценариев), в которых пропуски и аномальные значения будут исправлены либо содержащие их записи удалены (рис. 2.5).
Рис. 2.5. Представление результатов очистки данных
в сценарии обработки
Обработка дубликатов и противоречий. Обратите внимание,
что отчёт «Качество данных» не содержит информации относительно
45
таких проблем, как дубликаты и противоречия. Это связано с двумя причинами. Первая причина в том, что пропуски и аномалии – это проблемы уровня отдельного столбца набора данных. Т.е. значение может быть аномальным только относительно значений, которые со­держатся с ним в одном столбце. В то же время дубликаты и противо­речия - это проблемы уровня записей (строк). Образовывать противо­речие или дубликат одна запись не может, для этого нужны как мини­мум две записи. Вторая причина заключается в том, что обнаружение дубликатов и противоречий должно производиться в соответствии с логикой анализа, а не по формальным критериям. Поэтому в системе предусмотрены отдельные средства для обнаружения дубликатов и противоречий.
Для обнаружения дубликатов и противоречий в разделе «Очистка
данных» «Мастера обработки» предусмотрен сервис «Дубликаты и про­тиворечия». Для правильного обнаружении проблем этого вида важно корректно выбрать используемые при обработке столбцы, а также опре­делить, какие из них будут входными или выходными (рис. 2.6).
Рис. 2.6. Выбор столбцов для обнаружения дубликатов и противоречий
Очевидно, что для некоторых записей значения одних столбцов
могут совпадать, а других – нет. Соответственно если для некоторого множества записей будут выбраны только столбцы с совпадающими значениями, то такие записи будут идентифицированы как дубликаты, а в противном случае - нет. Аналогично противоречие возникает то­гда, когда двум записям с одинаковым «входом» соответствуют раз­ные «выходы» (логически одному и тому же набору условий соответ­ствуют различные следствия). А будут ли «входы» одинаковыми, а «выходы» разными, зависит от того, какие столбцы при этом исполь­зуются.
Таким образом, обнаружение дубликатов и противоречий про-
изводится не по формальным критериям, а в зависимости от того, ка-
46
кие столбцы выберет аналитик. То есть данный процесс является ин­вариантным и субъективным. По результатам поиска дубликатов и противоречий формируется отчёт, представленный на рис. 2.7.
Рис. 2.7. Отчет по результатам поиска дубликатов и противоречий
Дубликаты или противоречия всегда образуются двумя или более
записями. Поэтому набор идентичных записей или записей, образую­щих противоречие, удобно представлять в виде группы. Групп может быть несколько. В отчёте содержатся два дополнительных столбца – «Дубликаты» и «Противоречия», каждый из которых содержит два поля
- «Признак» и «Группа». В поле «Признак» устанавливается флажок для записей, для которых обнаружены дубликаты или противоречия, а в поле «Группа» отображается номер группы, к которой относится запись. Сервис «Дубликаты и противоречия» аналитического приложения Deductor позволяет только обнаруживать дубликаты и противоречия, но не предоставляет возможностей по их обработке.
Вопросы для самопроверки
1. Перечислите основные факторы, снижающие качество дан-
ных. Приведите примеры.
2. Что собой представляют пропуски в данных и каково их про-
исхождение?
3. Какие методы обработки можно использовать для пропусков
в данных?
4. Что такое дубликаты и противоречия в данных? Приведите
примеры.
5. Какие способы обработки дубликатов и противоречий могут
быть использованы?
6. Какие значения в данных называются выбросами и экстре-
мальными значениями? В чем их отличие. Почему используется такое разделение?
7. Как можно обнаруживать выбросы и экстремальные значения?
8. Почему необходимо производить очистку данных?
47

3. OLAP-технологии

3.1. Цели и задачи OLAP

Большинство бизнес-процессов и явлений достаточно сложны, поэтому требуют для описания большого числа параметров и характе­ристик. Поэтому наборы данных, описывающие эти процессы и явле­ния, оказываются многомерными и требуют использования многомер­ных методов обработки и визуализации при их анализе.
Как правило, анализ данных начинается не с непосредственного применения к ним каких-либо алгоритмов аналитической обработки, а с выдвижения некоторых предположений и гипотез, которые позво­ляют сформулировать цели анализа и разработать его стратегию. Час­то для этого оказывается полезным простой визуальный анализ дан­ных в различных разрезах (пространственных, временных), группи­ровках, уровнях детализации и т.д. Но если данные имеют сложную многомерную структуру, то такой визуальный анализ неэффективен. Поэтому на практике используют различные методы визуализации и представления многомерных данных, которые позволяют решать эту проблему.
В 1993 году Э. Коддом, известным исследователем в области тех­нологий баз данных и автором реляционной модели, была предложена концепция комплексного многомерного анализа данных, которая получи­ла название OLAP (On-Line Analytical Processing – оперативная аналити­ческая обработка). Системы OLAP должны обеспечивать характеристики, описываемые так называемым тестом FASMI (Fast Analysis of Shared Multidimensional Information - быстрый анализ разделяемой многомерной информации). Тест был создан в 1995 г. Найджелом Пендсом и Ричардом Критом на основе анализа правил Кодда и включает 5 базовых определе­ний:
Fast (быстрый) – предполагает, что отклик системы на запрос не должен превышать 5 секунд. Если это время окажется больше, то аналитик может потерять нить рассуждений, сбиться с мысли и эф­фективность анализа снизится.
Analysis (анализ) - возможность осуществления любого логиче­ского и статистического анализа, характерного для данного приложе­ния, и его сохранения в доступном для конечного пользователя виде.
Shared (разделяемый) – реализация в приложениях многополь­зовательского доступа к данным с поддержкой соответствующих ме­ханизмов администрирования и авторизации доступа.
Multidimensional (многомерный) - система должна обеспечить многомерное концептуальное представление данных, включая полную поддержку иерархий и множественных иерархий.
48
Information – обеспечение возможности обращения к любой нужной информации независимо от ее объема и места хранения.
Несмотря на наличие в названии OLAP слов «аналитическая
обработка», сама технология не предполагает применения к данным каких-либо алгоритмов или методов их преобразования или изменения структуры. Скорее OLAP следует рассматривать как средство много­мерной визуализации данных и быстрого формирования отчётности в требуемом разрезе [11].

3.2. Представление данных в виде гиперкубов

В основе идеи OLAP лежит многомерная модель данных в виде так называемых гиперкубов или OLAP-кубов. Грани такого куба опи­раются на оси измерений многомерной модели, а внутри куба распо­ложены факты (рис. 3.1).
Рис. 3.1. OLAP-куб (гиперкуб)
Элементами многомерной модели данных в гиперкубе являются ячейки и срезы. Ячейки содержат отдельные факты бизнес-процессов, представляемых в кубе. Например, на рис. 3.1 выделенная ячейка со­держит факт отгрузки 300 мешков цемента организацией «ИП Ива­нов» в г. Липецк. Срез куба представляет собой множество ячеек, со­держащих факты, связанные с определенным значением измерения. Так, на рис. 3.1 срез 1 содержит всю информацию по виду строймате­риалов «Блоки», а срез 2 содержит все данные о деятельности по горо­ду Тверь.
Таким образом, извлекая из куба нужные срезы, можно опера­тивно получать нужную информацию, в требуемом разрезе и наиболее удобном для восприятия виде. По срезам могут вычисляться агрегиро­ванные значения (суммы, количества и т.д.). На практике приложения,
49
реализующие функциональность OLAP, предоставляют пользователю удобный интерфейс, с помощью которого он выбирает нужные изме­рения, срезы и агрегаты.
В некоторых случаях в OLAP-кубе могут оказываться пустые ячейки. Это означает, что в таблицах фактов многомерной модели данных отсутствуют соответствующие значения.
Благодаря детальному структурированию информации OLAP­кубы позволяют оперативно осуществлять анализ данных и формиро­вать отчёты в различных разрезах и с произвольной глубиной детали­зации. Отчёты могут создаваться как аналитиками, так и любыми дру­гими категориями специалистов - менеджерами, финансистами, руко­водителями подразделений в интерактивном режиме для того, чтобы оперативно получить информацию, необходимую для корректного принятия управленческих решений. При этом сотрудникам для фор­мирования отчетов нет необходимости прибегать к услугам програм­мистов.
Результатом работы OLAP-модуля являются сводные таблицы (pivot table) или кросс-таблицы, которые по своей структуре являются «плоскими». Но благодаря тому, что пользователь может оперативно выбирать или скрывать нужные измерения и срезы, менять их местами и изменять детализацию данных, OLAP-кубы позволяют эффективно визуализировать многомерные структуры [6].
При работе с OLAP кубами определяют четыре основных опе­рации: срез, вращение, консолидацию и детализацию.
1. Срез – извлечение из куба массива данных, соответствующего единственному значению одного или нескольких элементов измере­ний многомерной модели (рис. 3.2).
Рис. 3.2. Операция среза OLAP-куба
2. Вращение – заключается в изменении расположения измере­ний, в результате чего (рис. 3.3), например, в итоговых отчётах строки и столбцы таблиц буду меняться местами.
50
Рис. 3.3. Вращение OLAP-куба
3. Консолидация – операция перехода от более детального
представления данных к менее детальному (агрегирование). Напри­мер, переход от просмотра данных от ежедневных продаж к ежене­дельному или ежемесячному (рис. 3.4).
Рис. 3.4. Консолидация OLAP-куба
4. Детализация – операция, обратная консолидации: переход от более детализированного представления данных к менее детализиро­ванному (рис. 3.5).
Рис. 3.5. Детализация OLAP-куба
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]