Исправление неточных компьютерных записей
Очистка данных или очистка данных — это процесс выявления и исправления (или удаления) поврежденных, неточных или нерелевантных записей из набора данных, таблицы или базы данных . Он включает в себя обнаружение неполных, неправильных или неточных частей данных и последующую замену, изменение или удаление затронутых данных. [1] Очистка данных может выполняться интерактивно с использованием инструментов обработки данных или посредством пакетной обработки, часто с помощью скриптов или брандмауэра качества данных .
После очистки набор данных должен быть согласован с другими аналогичными наборами данных в системе. Обнаруженные или удаленные несоответствия могли быть изначально вызваны ошибками ввода данных пользователем, повреждением при передаче или хранении или различными определениями словаря данных для аналогичных сущностей в разных хранилищах. Очистка данных отличается от проверки данных тем, что проверка почти всегда означает, что данные отклоняются из системы при вводе и выполняются во время ввода, а не для пакетов данных.
Фактический процесс очистки данных может включать удаление типографских ошибок или проверку и исправление значений по известному списку сущностей. Проверка может быть строгой (например, отклонение любого адреса, который не имеет допустимого почтового индекса ), или с нечетким или приблизительным соответствием строк (например, исправление записей, которые частично соответствуют существующим известным записям). Некоторые решения по очистке данных очищают данные путем перекрестной проверки с проверенным набором данных. Распространенной практикой очистки данных является улучшение данных, когда данные становятся более полными за счет добавления связанной информации. Например, добавление адресов с любыми телефонными номерами, связанными с этим адресом. Очистка данных может также включать гармонизацию (или нормализацию) данных, что является процессом объединения данных «различных форматов файлов, соглашений об именовании и столбцов» [2] и преобразования их в один связный набор данных; простым примером является расширение сокращений («улица, дом и т. д.» до «улица, дорога и т. д.»).
Мотивация
Административно неверные, непоследовательные данные могут привести к ложным выводам и неправильному направлению инвестиций как в государственном, так и в частном масштабе. Например, правительство может захотеть проанализировать данные переписи населения, чтобы решить, какие регионы требуют дополнительных расходов и инвестиций в инфраструктуру и услуги. В этом случае будет важно иметь доступ к надежным данным, чтобы избежать ошибочных фискальных решений. В деловом мире неверные данные могут быть дорогостоящими. Многие компании используют базы данных с информацией о клиентах , в которых регистрируются такие данные, как контактная информация, адреса и предпочтения. Например, если адреса не совпадают, компания понесет расходы на повторную отправку почты или даже потеряет клиентов.
Качество данных
Высококачественные данные должны соответствовать ряду критериев качества. К ним относятся:
- Валидность : степень соответствия мер определенным бизнес-правилам или ограничениям (см. также Валидность (статистика) ). Когда современная технология баз данных используется для проектирования систем сбора данных, валидность довольно легко обеспечить: недействительные данные возникают в основном в устаревших контекстах (где ограничения не были реализованы в программном обеспечении) или там, где использовалась неподходящая технология сбора данных (например, электронные таблицы, где очень сложно ограничить то, что пользователь выбирает для ввода в ячейку, если не используется валидация ячеек). Ограничения данных делятся на следующие категории:
- Ограничения по типу данных : значения в определенном столбце должны иметь определенный тип данных, например, логический, числовой (целое или действительное), дата.
- Ограничения диапазона: как правило, числа или даты должны попадать в определенный диапазон. То есть, они имеют минимально и/или максимально допустимые значения.
- Обязательные ограничения: некоторые столбцы не могут быть пустыми.
- Ограничения уникальности: Поле или комбинация полей должны быть уникальными в пределах набора данных. Например, два человека не могут иметь одинаковый номер социального страхования.
- Ограничения Set-Membership : Значения для столбца берутся из набора дискретных значений или кодов. Например, пол человека может быть Женский, Мужской или Небинарный.
- Ограничения внешнего ключа : это более общий случай членства в наборе. Набор значений в столбце определяется в столбце другой таблицы, содержащей уникальные значения. Например, в базе данных налогоплательщиков США столбец «штат» должен принадлежать одному из определенных штатов или территорий США: набор допустимых штатов/территорий записывается в отдельную таблицу штатов. Термин « внешний ключ» заимствован из терминологии реляционных баз данных.
- Шаблоны регулярных выражений : Иногда текстовые поля должны быть проверены таким образом. Например, номера телефонов могут быть обязаны иметь шаблон (999) 999–9999.
- Проверка по нескольким полям : должны выполняться определенные условия, которые используют несколько полей. Например, в лабораторной медицине сумма компонентов дифференциального количества лейкоцитов должна быть равна 100 (поскольку все они являются процентами). В базе данных больницы дата выписки пациента из больницы не может быть раньше даты поступления.
- Точность : степень соответствия меры стандарту или истинному значению - см. также Точность и точность . Точность очень трудно достичь посредством очистки данных в общем случае, поскольку для этого требуется доступ к внешнему источнику данных, содержащему истинное значение: такие данные "золотого стандарта" часто недоступны. Точность была достигнута в некоторых контекстах очистки, в частности, данных контактов клиентов, путем использования внешних баз данных, которые сопоставляют почтовые индексы с географическими местоположениями (город и штат), а также помогают проверить, что уличные адреса в пределах этих почтовых индексов действительно существуют.
- Полнота : степень, в которой известны все требуемые меры. Неполнота практически не поддается исправлению с помощью методологии очистки данных: невозможно вывести факты, которые не были зафиксированы при первоначальной регистрации данных. (В некоторых контекстах, например, в случае данных интервью, неполноту можно исправить, вернувшись к исходному источнику данных, т. е. повторно опросив субъекта, но даже это не гарантирует успеха из-за проблем с припоминанием — например, в интервью для сбора данных о потреблении пищи никто, скорее всего, не вспомнит точно, что он ел шесть месяцев назад. В случае систем, которые настаивают на том, чтобы определенные столбцы не были пустыми, можно обойти проблему, назначив значение, которое указывает на «неизвестно» или «отсутствует», но предоставление значений по умолчанию не означает, что данные были сделаны полными.)
- Согласованность : степень, в которой набор мер эквивалентен в разных системах (см. также Согласованность ). Несогласованность возникает, когда два элемента данных в наборе данных противоречат друг другу: например, клиент зарегистрирован в двух разных системах как имеющий два разных текущих адреса, и только один из них может быть правильным. Устранение несогласованности не всегда возможно: для этого требуется множество стратегий — например, решение того, какие данные были записаны позднее, какой источник данных, скорее всего, будет наиболее надежным (последнее знание может быть специфичным для данной организации) или просто попытка найти истину, проверив оба элемента данных (например, позвонив клиенту).
- Единообразие : степень, в которой набор данных измеряется с использованием одних и тех же единиц измерения во всех системах (см. также Единица измерения ). В наборах данных, объединенных из разных локаций, вес может быть записан либо в фунтах, либо в килограммах и должен быть преобразован в единую меру с помощью арифметического преобразования.
Термин «целостность» охватывает точность, согласованность и некоторые аспекты проверки (см. также « целостность данных »), но сам по себе редко используется в контексте очистки данных, поскольку он недостаточно конкретен. (Например, « ссылочная целостность » — это термин, используемый для обозначения соблюдения ограничений внешнего ключа выше.)
Процесс
- Аудит данных : данные проверяются с использованием статистических и баз данных методов для обнаружения аномалий и противоречий: это в конечном итоге указывает на характеристики аномалий и их местоположение. Несколько коммерческих пакетов программного обеспечения позволят вам указать ограничения различных видов (используя грамматику, которая соответствует грамматике стандартного языка программирования, например, JavaScript или Visual Basic), а затем сгенерировать код, который проверяет данные на нарушение этих ограничений. Этот процесс упоминается ниже в пунктах «спецификация рабочего процесса» и «выполнение рабочего процесса». Для пользователей, у которых нет доступа к высококлассному программному обеспечению для очистки, пакеты баз данных Microcomputer, такие как Microsoft Access или File Maker Pro, также позволят вам выполнять такие проверки на основе ограничения за ограничением, интерактивно, с небольшим или вообще без программирования, требуемого во многих случаях.
- Спецификация рабочего процесса : обнаружение и устранение аномалий выполняется последовательностью операций над данными, известной как рабочий процесс. Он определяется после процесса аудита данных и имеет решающее значение для достижения конечного продукта в виде высококачественных данных. Для достижения надлежащего рабочего процесса необходимо тщательно рассмотреть причины аномалий и ошибок в данных.
- Выполнение рабочего процесса : на этом этапе рабочий процесс выполняется после завершения его спецификации и проверки его корректности. Реализация рабочего процесса должна быть эффективной даже для больших наборов данных, что неизбежно влечет за собой компромисс, поскольку выполнение операции очистки данных может быть вычислительно затратным.
- Постобработка и контроль : После выполнения рабочего процесса очистки результаты проверяются на правильность. Данные, которые не удалось исправить во время выполнения рабочего процесса, исправляются вручную, если это возможно. Результатом является новый цикл в процессе очистки данных, где данные снова проверяются, чтобы позволить спецификацию дополнительного рабочего процесса для дальнейшей очистки данных путем автоматической обработки.
Высококачественные исходные данные связаны с «культурой качества данных» и должны быть инициированы наверху организации. Это не просто вопрос внедрения строгих проверок на экранах ввода, потому что почти независимо от того, насколько строги эти проверки, пользователи часто все равно могут их обойти. Существует руководство из девяти шагов для организаций, желающих улучшить качество данных: [3] [4]
- Заявить о высокой приверженности культуре качества данных
- Реорганизация процессов на уровне руководства
- Потратьте деньги на улучшение среды ввода данных
- Потратьте деньги на улучшение интеграции приложений
- Тратьте деньги на изменение того, как работают процессы
- Содействовать повышению осведомленности всей команды
- Содействовать межведомственному сотрудничеству
- Публично отмечайте превосходное качество данных
- Постоянно измеряйте и улучшайте качество данных
Другие включают в себя:
- Синтаксический анализ : для обнаружения синтаксических ошибок. Анализатор решает, является ли строка данных приемлемой в рамках разрешенной спецификации данных. Это похоже на то, как анализатор работает с грамматиками и языками .
- Преобразование данных : Преобразование данных позволяет преобразовывать данные из заданного формата в формат, ожидаемый соответствующим приложением. Это включает в себя преобразования значений или функции перевода, а также нормализацию числовых значений для соответствия минимальным и максимальным значениям.
- Устранение дубликатов : обнаружение дубликатов требует алгоритма для определения того, содержат ли данные дублирующиеся представления одной и той же сущности. Обычно данные сортируются по ключу, который сближает дублирующие записи для более быстрой идентификации.
- Статистические методы : Анализируя данные с использованием значений среднего значения , стандартного отклонения , диапазона или алгоритмов кластеризации , эксперт может найти неожиданные и, следовательно, ошибочные значения. Хотя исправление таких данных затруднено, поскольку истинное значение неизвестно, эту проблему можно решить, установив значения на среднее или другое статистическое значение. Статистические методы также можно использовать для обработки пропущенных значений, которые можно заменить одним или несколькими правдоподобными значениями, которые обычно получаются с помощью обширных алгоритмов дополнения данных .
Система
Основная задача этой системы — найти подходящий баланс между исправлением грязных данных и поддержанием данных как можно ближе к исходным данным из исходной производственной системы. Это вызов для архитектора извлечения, преобразования, загрузки . Система должна предлагать архитектуру, которая может очищать данные, регистрировать события качества и измерять/контролировать качество данных в хранилище данных . Хорошим началом является выполнение тщательного анализа профилирования данных , который поможет определить требуемую сложность системы очистки данных, а также даст представление о текущем качестве данных в исходной системе(ах).
Качественные экраны
Частью системы очистки данных является набор диагностических фильтров, известных как экраны качества. Каждый из них реализует тест в потоке данных, который в случае неудачи регистрирует ошибку в схеме событий ошибок. Экраны качества делятся на три категории:
- Экраны столбцов. Тестирование отдельных столбцов, например, на наличие неожиданных значений, таких как значения NULL ; нечисловые значения, которые должны быть числовыми; значения, выходящие за пределы диапазона и т. д.
- Экраны структуры. Они используются для проверки целостности различных связей между столбцами (обычно внешние/первичные ключи) в одной и той же или разных таблицах. Они также используются для проверки того, что группа столбцов является допустимой согласно некоторому структурному определению, которому она должна соответствовать.
- Экраны бизнес-правил. Самый сложный из трех тестов. Они проверяют, следуют ли данные, возможно, в нескольких таблицах, определенным бизнес-правилам. Например, если клиент отмечен как определенный тип клиента, то должны соблюдаться бизнес-правила, определяющие этот тип клиента.
Когда экран качества регистрирует ошибку, он может либо остановить процесс потока данных, отправить неисправные данные куда-то еще, кроме целевой системы, либо пометить данные. Последний вариант считается лучшим решением, поскольку первый вариант требует, чтобы кто-то вручную разбирался с проблемой каждый раз, когда она возникает, а второй подразумевает, что данные отсутствуют в целевой системе ( целостность ), и часто неясно, что должно произойти с этими данными.
Критика существующих инструментов и процессов
Большинство инструментов очистки данных имеют ограничения в использовании:
- Стоимость проекта : обычно составляет сотни тысяч долларов.
- Время : освоение программного обеспечения для очистки больших объемов данных требует много времени.
- Безопасность : перекрестная проверка требует обмена информацией, предоставляя приложению доступ к разным системам, включая конфиденциальные устаревшие системы.
Схема событий ошибки
Схема событий ошибок содержит записи всех событий ошибок, выданных экранами качества. Она состоит из таблицы фактов событий ошибок с внешними ключами к трехмерным таблицам, которые представляют дату (когда), пакетное задание (где) и экран (кто создал ошибку). Она также содержит информацию о том, когда именно произошла ошибка и насколько серьезна ошибка. Также есть таблица фактов подробностей событий ошибок с внешним ключом к основной таблице, которая содержит подробную информацию о том, в какой таблице, записи и поле произошла ошибка, а также состояние ошибки.
Смотрите также
Ссылки
- ^ Wu, S. (2013), «Обзор грубых гарантийных данных и анализ» (PDF) , Надежность техники и систем , 114 : 1–11, doi :10.1016/j.ress.2012.12.021
- ^ «Data 101: What is Data Harmonization?». Datorama . 14 апреля 2017 г. Архивировано из оригинала 24 октября 2021 г. Получено 14 августа 2019 г.
- ^ Кимбалл, Р., Росс, М., Торнтвейт, У., Манди, Дж., Беккер, Б. Набор инструментов жизненного цикла хранилища данных , Wiley Publishing, Inc., 2008. ISBN 978-0-470-14977-5
- ^ Олсон, Дж. Э. Качество данных: измерение точности", Морган Кауфманн , 2002. ISBN 1-55860-891-5
Дальнейшее чтение
- МакКинни, Уэс (2017). «Очистка и подготовка данных». Python для анализа данных (2-е изд.). O'Reilly. стр. 195–224. ISBN 978-1-4919-5766-0.
- ван дер Лоо, Марк; де Йонге, Эдвин (2018). Статистическая очистка данных с помощью приложений в R. Hoboken: Wiley. ISBN 978-1-118-89715-7.
- Chicco D, Oneto L, Tavazzi E (декабрь 2022 г.). « Одиннадцать быстрых советов по очистке данных и проектированию признаков». PLOS Computational Biology . 18 (12): e1010718. doi : 10.1371/journal.pcbi.1010718 . PMC 9754225. PMID 36520712. S2CID 254733288.
- Чу, X., Ильяс, IF, Кришнан, S., Ван, J. (2016), Очистка данных, ACM
- Коте, П.-О., Никанджам, А., Ахмед, Н., Гуменюк, Д., Хомх, Ф. (2024), Очистка данных и машинное обучение: систематический обзор литературы, Springer Science and Business Media LLC
Внешние ссылки
- Computerworld: Очистка данных (10 февраля 2003 г.)
- Эрхард Рам, Хонг Хай До: Очистка данных: проблемы и современные подходы
- Очистка данных. Datamanagement.wiki.