Очистка данных - Data cleansing

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

После очищения набор данных должны согласовываться с другими подобными наборами данных в системе. Обнаруженные или устраненные несоответствия могут быть изначально вызваны ошибками ввода пользователя, повреждением при передаче или хранении или другими словарь с данными определения похожих объектов в разных магазинах. Очистка данных отличается от проверка достоверности данных в этой проверке почти всегда означает, что данные отклоняются из системы при вводе и выполняется во время ввода, а не для пакетов данных.

Фактический процесс очистки данных может включать удаление опечатки или проверка и корректировка значений по известному списку объектов. Проверка может быть строгой (например, отклонение любого адреса, не имеющего действительного Почтовый индекс ) или же нечеткий (например, исправление записей, частично совпадающих с существующими известными записями). Некоторые решения для очистки данных будут очищать данные путем перекрестной проверки с подтвержденным набором данных. Распространенной практикой очистки данных является улучшение данных, когда данные становятся более полными за счет добавления связанной информации. Например, добавление адресов к любым телефонным номерам, связанным с этим адресом. Очистка данных может также включать гармонизацию (или нормализацию) данных, которая представляет собой процесс объединения данных «различных форматов файлов, соглашений об именах и столбцов»,[2] и преобразовать его в единый набор данных; Простым примером является расширение сокращений («улица, дорога и т. д.» до «улица, дорога и т. д.»).

Мотивация

Административно неверные, непоследовательные данные могут привести к ложным выводам и неверному направлению. инвестиции как в государственном, так и в частном масштабе. Например, правительство может захотеть проанализировать данные переписи населения, чтобы решить, в каких регионах требуются дальнейшие расходы и инвестиции инфраструктура и услуги. В этом случае будет важно иметь доступ к надежным данным, чтобы избежать ошибочных фискальных решений. В деловом мире неверные данные могут дорого обойтись. Многие компании используют информацию о клиентах базы данных которые записывают такие данные, как контактная информация, адреса и предпочтения. Например, если адреса несовместимы, компания понесет расходы на повторную отправку почты или даже потерю клиентов.

Качество данных

Данные высокого качества должны соответствовать ряду критериев качества. К ним относятся:

  • Срок действия: Степень, в которой меры соответствуют определенным бизнес-правилам или ограничениям (см. Также Срок действия (статистика) ). Когда современные технологии баз данных используются для разработки систем сбора данных, достоверность довольно легко обеспечить: недействительные данные возникают в основном в устаревших контекстах (где ограничения не были реализованы в программном обеспечении) или там, где использовалась неподходящая технология сбора данных (например, электронные таблицы, где очень сложно ограничить выбор пользователя для ввода в ячейку, если проверка ячейки не используется). Ограничения данных делятся на следующие категории:
    • Ограничения типа данных - например, значения в конкретном столбце должны иметь определенный тип данных, например, логическое, числовое (целое или действительное), дату и т. Д.
    • Ограничения диапазона: обычно числа или даты должны попадать в определенный диапазон. То есть у них есть минимальные и / или максимальные допустимые значения.
    • Обязательные ограничения: Некоторые столбцы не могут быть пустыми.
    • Уникальные ограничения: Поле или комбинация полей должны быть уникальными в наборе данных. Например, два человека не могут иметь одинаковый номер социального страхования.
    • Ограничения набора-членства: Значения столбца берутся из набора дискретных значений или кодов. Например, пол человека может быть Женский, Мужской или Неизвестный (не записан).
    • Ограничения внешнего ключа: Это более общий случай членства в множестве. Набор значений в столбце определяется в столбце другой таблицы, которая содержит уникальные значения. Например, в базе данных налогоплательщиков США столбец «штат» должен принадлежать одному из определенных штатов или территорий США: набор допустимых штатов / территорий записывается в отдельной таблице штатов. Период, термин иностранный ключ заимствовано из терминологии реляционных баз данных.
    • Шаблоны регулярных выражений: Иногда текстовые поля необходимо проверять таким образом. Например, для телефонных номеров может потребоваться шаблон (999) 999-9999.
    • Межполевая проверка: Должны выполняться определенные условия, в которых используется несколько полей. Например, в лабораторной медицине сумма компонентов дифференциального количества лейкоцитов должна быть равна 100 (поскольку все они являются процентами). В базе данных больницы дата выписки пациента из больницы не может быть раньше даты поступления.
  • Точность: Степень соответствия меры стандарту или истинному значению - см. Также Тщательность и точность. В общем случае очень трудно добиться точности за счет очистки данных, поскольку для этого требуется доступ к внешнему источнику данных, который содержит истинное значение: такие данные «золотого стандарта» часто недоступны. Точность была достигнута в некоторых контекстах очистки, в частности в контактных данных клиентов, за счет использования внешних баз данных, которые сопоставляют почтовые индексы с географическими местоположениями (город и штат), а также помогают проверить, действительно ли существуют почтовые адреса в этих почтовых индексах.
  • Полнота: Степень, в которой известны все необходимые меры. Неполноту практически невозможно исправить с помощью методологии очистки данных: нельзя сделать вывод о фактах, которые не были зафиксированы, когда рассматриваемые данные были изначально записаны. (В некоторых контекстах, например, в данных интервью, можно исправить неполноту данных, вернувшись к исходному источнику данных, то есть повторно опросив субъекта, но даже это не гарантирует успеха из-за проблем с отзывом - например, в собеседование с целью сбора данных о потреблении продуктов питания, вряд ли кто-то точно вспомнит, что он ел шесть месяцев назад. В случае систем, которые настаивают на том, что определенные столбцы не должны быть пустыми, можно обойти проблему, указав значение, указывающее " неизвестно "или" отсутствует ", но предоставление значений по умолчанию не означает, что данные были завершены.)
  • Последовательность: Степень, в которой набор мер эквивалентен в разных системах (см. Также Последовательность ). Несогласованность возникает, когда два элемента данных в наборе данных противоречат друг другу: например, заказчик зарегистрирован в двух разных системах как имеющий два разных текущих адреса, и только один из них может быть правильным. Устранение несоответствий не всегда возможно: для этого требуются различные стратегии - например, решение, какие данные были записаны в последнее время, какой источник данных, вероятно, будет наиболее надежным (последнее знание может быть специфическим для данной организации) или просто попытаться найти истину, проверив оба элемента данных (например, позвонив клиенту).
  • Единообразие: Степень, в которой меры набора данных указываются с использованием одних и тех же единиц измерения во всех системах (см. Также Единица измерения ). В наборах данных, собранных из разных регионов, вес может быть записан в фунтах или килограммах и должен быть преобразован в одну меру с помощью арифметического преобразования.

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

Процесс

  • Аудит данных: Данные проверены с использованием статистический и методы базы данных для обнаружения аномалий и противоречий: это в конечном итоге указывает на характеристики аномалий и их местонахождение. Несколько коммерческих программных пакетов позволят вам указать ограничения различных видов (используя грамматику, которая соответствует грамматике стандартного языка программирования, например, JavaScript или Visual Basic), а затем сгенерировать код, который проверяет данные на предмет нарушения этих ограничений. Этот процесс упоминается ниже в пунктах «спецификация рабочего процесса» и «выполнение рабочего процесса». Для пользователей, у которых нет доступа к высококачественному программному обеспечению для очистки, пакеты баз данных для микрокомпьютеров, такие как Microsoft Access или File Maker Pro, также позволят вам выполнять такие проверки в зависимости от ограничений, в интерактивном режиме с минимальным программированием или без него во многих случаях. .
  • Спецификация рабочего процесса: Обнаружение и устранение аномалий выполняется последовательностью операций с данными, известной как рабочий процесс. Он указывается после процесса аудита данных и имеет решающее значение для получения конечного продукта данных высокого качества. Чтобы добиться правильного рабочего процесса, необходимо внимательно рассмотреть причины аномалий и ошибок в данных.
  • Выполнение рабочего процесса: На этом этапе рабочий процесс выполняется после завершения его спецификации и проверки правильности. Реализация рабочего процесса должна быть эффективной даже для больших наборов данных, что неизбежно приводит к компромиссу, поскольку выполнение операции очистки данных может быть дорогостоящим в вычислительном отношении.
  • Постобработка и контроль: После выполнения рабочего процесса очистки результаты проверяются на правильность. Данные, которые не удалось исправить во время выполнения рабочего процесса, по возможности исправляются вручную. Результатом является новый цикл в процессе очистки данных, где данные снова подвергаются аудиту, чтобы можно было указать дополнительный рабочий процесс для дальнейшей очистки данных с помощью автоматической обработки.

Исходные данные хорошего качества связаны с «культурой качества данных» и должны инициироваться на высшем уровне организации. Это не просто вопрос реализации строгих проверок на экранах ввода, потому что почти независимо от того, насколько сильны эти проверки, пользователи часто могут их обойти. Для организаций, желающих улучшить качество данных, есть руководство из девяти шагов:[3][4]

  • Заявить о приверженности на высоком уровне Качество данных культура
  • Управляйте реинжинирингом процессов на исполнительном уровне
  • Потратьте деньги на улучшение среды ввода данных
  • Тратьте деньги на улучшение интеграции приложений
  • Тратьте деньги на изменение работы процессов
  • Содействовать сквозной осведомленности команды
  • Содействовать межведомственному сотрудничеству
  • Публично отмечайте высокое качество данных
  • Постоянно измеряйте и улучшайте качество данных

Другие включают:

  • Парсинг: для обнаружения синтаксических ошибок. Синтаксический анализатор решает, является ли строка данных приемлемой в рамках разрешенной спецификации данных. Это похоже на то, как парсер работает с грамматики и языки.
  • Преобразование данных: Преобразование данных позволяет отображать данные из заданного формата в формат, ожидаемый соответствующим приложением. Сюда входят функции преобразования или преобразования значений, а также нормализация числовых значений для соответствия минимальным и максимальным значениям.
  • Двойное устранение: Для обнаружения дубликатов требуется алгоритм для определения того, содержат ли данные повторяющиеся представления одного и того же объекта. Обычно данные сортируются по ключу, который сближает повторяющиеся записи для более быстрой идентификации.
  • Статистические методы: Анализируя данные с использованием значений иметь в виду, стандартное отклонение, классифицировать, или же кластеризация алгоритмы, эксперт может найти значения, которые являются неожиданными и, следовательно, ошибочными. Хотя исправление таких данных затруднено, поскольку истинное значение неизвестно, его можно решить, установив для значений среднее или другое статистическое значение. Статистические методы также могут использоваться для обработки отсутствующих значений, которые могут быть заменены одним или несколькими правдоподобными значениями, которые обычно получаются обширным увеличение данных алгоритмы.

Система

Основная задача этой системы - найти подходящий баланс между фиксацией грязные данные и поддержание данных как можно ближе к исходным данным из исходной производственной системы. Это вызов для Извлечь, преобразовать, загрузить архитектор. Система должна предлагать архитектуру, которая может очищать данные, записывать события качества и измерять / контролировать качество данных в хранилище данных. Хорошее начало - провести тщательную профилирование данных анализ, который поможет определить требуемую сложность системы очистки данных, а также даст представление о текущем качестве данных в исходной системе (ах).

Инструменты

Есть много инструментов для очистки данных, например Trifacta, Openprise, OpenRefine, Паксата, Альтерикс, Data Ladder, WinPure и другие. Также часто используются такие библиотеки, как Панды (программное обеспечение) за Python (язык программирования), или же Dplyr за R (язык программирования).

Один пример очистки данных для распределенных систем под Apache Spark называется Оптимус, Открытый исходный код фреймворк для ноутбука или кластера, позволяющий выполнять предварительную обработку, очистку и исследовательский анализ данных. Он включает в себя несколько инструментов обработки данных.

Качественные экраны

Частью системы очистки данных является набор диагностических фильтров, известных как экраны качества. Каждый из них реализует тест в потоке данных, который в случае сбоя записывает ошибку в схему событий ошибок. Качественные экраны делятся на три категории:

  • Колоночные экраны. Тестирование отдельного столбца, например для неожиданных значений, таких как НОЛЬ значения; нечисловые значения, которые должны быть числовыми; значения вне допустимого диапазона; и Т. Д.
  • Структурные экраны. Они используются для проверки целостности различных отношений между столбцами (обычно внешними / первичными ключами) в одной или разных таблицах. Они также используются для проверки допустимости группы столбцов в соответствии с некоторым структурным определением, которому она должна соответствовать.
  • Экраны бизнес-правил. Самый сложный из трех тестов. Они проверяют, соответствуют ли данные, возможно, из нескольких таблиц, определенным бизнес-правилам. Примером может служить то, что если клиент отмечен как клиент определенного типа, следует придерживаться бизнес-правил, определяющих этот тип клиента.

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

Критика существующих инструментов и процессов

Большинство инструментов очистки данных имеют ограничения в использовании:

  • Стоимость проекта: обычно стоит сотни тысяч долларов
  • Время: освоение крупномасштабного программного обеспечения для очистки данных требует много времени
  • Безопасность: перекрестная проверка требует обмена информацией, предоставляя приложению доступ к различным системам, включая уязвимые устаревшие системы.

Схема события ошибки

Схема событий ошибок содержит записи всех событий ошибок, выдаваемых экранами качества. Он состоит из события ошибки Таблица фактов с внешние ключи к трем таблицам измерений, которые представляют дату (когда), пакетная работа (где) и экран (кто выдал ошибку). Он также содержит информацию о том, когда именно произошла ошибка, и о серьезности ошибки. Также есть подробности об ошибках. Таблица фактов с иностранный ключ в основную таблицу, содержащую подробную информацию о том, в какой таблице, записи и поле произошла ошибка, а также о состоянии ошибки.

Смотрите также

Рекомендации

  1. ^ Ву, С. (2013), «Обзор и анализ приблизительных данных о гарантии» (PDF), Надежность и система, 114: 1–11, Дои:10.1016 / j.ress.2012.12.021
  2. ^ «Данные 101: что такое гармонизация данных?». Драма. 14 апреля 2017 г.. Получено 14 августа 2019.
  3. ^ Кимбалл, Р., Росс, М., Торнтуэйт, В., Манди, Дж., Беккер, Б. Набор инструментов для жизненного цикла хранилища данных, Wiley Publishing, Inc., 2008 г. ISBN  978-0-470-14977-5
  4. ^ Олсон, Дж. Э. Качество данных: критерий точности ", Морган Кауфманн, 2002. ISBN  1-55860-891-5

Источники

внешняя ссылка