Data Quality Services для управления качеством данных

Последнее обновление: 15.01.2014

Компонент SQL Server Data Quality Services (DQS) предназначен для очистки и/или устранения дубликатов в данных, загружаемых из источников.

Процесс работы с DQS состоит из двух основных этапов.

  1. Создается база знаний DQS, в которой задаются домены (анализируемые атрибуты данных) и правила очистки доменных значений (правила очистки, список правильных значений и альтернативных значений для переименования, внешние данные для сравнения). Далее по мере использования эта база знаний постоянно дополняется.
  2. На основании базы знаний создаются проекты DQS по очистке входных данных. При этом указывается входной источник, соответствия полей источника и доменов, данные из источника проходят автоматическую и ручную обработку, а затем могут быть экспортированы в SQL Server или CSV-файл.

Проекты DQS также можно использовать в пакетах Integrations Services для обработки новых записей в автоматическом режиме (подробности см. в статье про Управление информацией организаций — EIM).

Для решения каких задач можно использовать DQS

DQS можно использовать для следующих задач:

  • автоматическая выверка, очистка и удаление дублей в больших массивах данных о физических и юридических лицах:
  • проверка корректности формата e-mail адресов, телефонов, номеров паспорта, ИНН, КПП, банковских реквизитов, СНИЛС и т.д.;
  • простановка почтовых индексов на основании адреса;
  • проверка корректности, согласованности и определение пола  по имени и отчеству;
  • корректировка и приведение к стандартному виду почтовых адресов (при наличии общей базы адресов);
  • и т.д. (пожалуйста, высылайте дополнения к этим примерам)

Создание базы знаний DQS с использованием составных доменов и бизнес-правил

При создании базы знаний задаются домены (соответствующие колонкам исходных наборов данных), которые будут проходить очистку и дедупликацию. При необходимости можно задавать составные домены, т.е. домены, состоящие из нескольких обычных доменов.

Для имеющихся доменов можно создавать бизнес-правила, обеспечивающие корректность данных в домене, в том числе:

  • типичные альтернативные названия и правила их преобразования в правильные названия;
  • отслеживание допустимых диапазонов значений, правильных типов данных;
  • проверка соответствия шаблону (например, что e-mail представляет одно или несколько слов, разделенных точками плюс символ «@» плюс как минимум два слова разделенных точками; при этом слово – последовательность латинских букв, цифр и некоторых разрешенных символов);
  • правила корректировки составных доменов (например, если город – Екатеринбург, то субъект РФ – Свердловская область);
  • правило по отправке данных для очистки с помощью специального облачного сервиса (например, сверить адрес с общей базой адресов);
  • и так далее.

Очистка данных в автоматическом режиме (проект SSIS c преобразованием DQS Cleansing)

В типовом пакете очистки данных новые справочные данные сравниваются с нормативно-справочной информацией (НСИ). Если данные есть в системе управления НСИ, они направляются в промежуточную область хранилища данных, а если нет, они могут быть направлены в преобразование DQS Cleansing для предварительной очистки (источник: Matt Masson. EIM presentation material from DevTeach Montreal).

Пример потока данных с применением очистки DQS. Источник: Matt Masson. EIM presentation material from DevTeach Montreal

В результате очистки преобразованием DQS Cleansing данные классифицируются: новые, корректные и откорректированные.

Откорректированные данные снова сравниваются с данными в системе управления НСИ. Если соответствие найдено, они направляются в промежуточную область хранилища данных.

Если соответствие откорректированных данных все еще не найдено, данные направляются в промежуточную таблицу для ручной обработки с помощью DQS наравне с новыми записями, а также в систему управления НСИ наравне с корректными записями, которых нет в НСИ.

Гибкая дедупликация данных в ручном режиме (проект DQS)

Для более гибкой настройки дедупликации можно использовать клиентское приложение DQS, где с помощью Matching Policy индивидуально для каждого домена можно задать его вес при сопоставлении, а также при необходимости указать требование изначальной идентичности (источник: Jeremy Kashel. DQS Matching Vs SSIS Fuzzy Grouping and Lookup).

Задание весов доменов в Matching Policy. Источник: Jeremy Kashel. DQS Matching Vs SSIS Fuzzy Grouping and Lookup

DQS выполняет сопоставление данных и дедупликацию путем сравнения каждой строки со всеми остальными строками с использованием настроек Matching Policy, заданных в базе знаний.

Обнаруженые дублирующие записи. Источник: Jeremy Kashel. DQS Matching Vs SSIS Fuzzy Grouping and Lookup

Результат сопоставления с учетом ручных корректировок может быть экспортирован в таблицу SQL Server или файл CSV для дальнейшей обработки.

Дедупликация данных в автоматическом режиме (проект SSIS c преобразованием Fuzzy Gouping)

Для дедупликации данных в автоматическом режиме в SQL Server 2012 можно использовать преобразование Fuzzy Grouping, которое в дополнительной колонке _key_out формирует идентификатор группы (ссылку на канонический идентификатор _key_in), а в колонке _score выдает стпень похожести (между 0 и 1). Источник: BI Monkey. SSIS, DQS Cleansing & the Balanced Data Distributor.

Пример потока обработки данных с использованием преобразования Fuzzy Grouping. Источник: BI Monkey. SSIS, DQS Cleansing & the Balanced Data Distributor SSIS, DQS Cleansing & the Balanced Data Distributor

Уровень похожести записей устанавливается с помощью специального бегунка в дополнительных настройка преобразования Fuzzy Grouping.

Распараллеливание потоков данных для ускорения пакета с DQS

Для применения DQS над большими объемами данных (сотни тысяч и миллионы записей) можно использовать распараллеливание потока данных с помощью компонента «Balanced Data Distributor» (источник: BI Monkey. SSIS, DQS Cleansing & the Balanced Data Distributor).

DQS с применением BDD (Balanced Data Distributor). Источник: BI Monkey. SSIS, DQS Cleansing & the Balanced Data Distributor SSIS, DQS Cleansing & the Balanced Data Distributor

Партнерские решения

Navicon CDI (customer data integration – интеграция данных о клиентах) на базе Microsoft SQL Server 2012 обеспечивает централизацию и синхронизацию информации о клиентах, находящейся в различных информационных системах.

Дополнительные материалы

Доклад о SQL Server Data Quality Services от 18 декабря 2013

В докладе рассказывается о новых контролах DQS Domain Value Import и DQS Matching Transformation. Важный акцент сделан на автоматизацию процесса импорта доменных сущностей, включая синонимы, в существующую базу знаний, а так же использование механизма удаления дубликатов, полагаясь на возвращаемые весовые коэффициенты между каждым набором сравниваемых записей. В результате будет создан SSIS пакет в котором будет реализован весь процесс получения качественных данных.

Докладчик: Константин Хомяков (MVP SQL Server) специализируется в Microsoft Business Inteligence: разработка SSIS пакетов, построение кубов и анализ данных в SSAS. Последние несколько лет занимается интеграцией данных.

Запись: загрузить файл, смотреть виде на YouTube

Лучшие практики

Data Quality Services Performance Best Practices Guide

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

%d такие блоггеры, как: