← Все курсы · SQL-выражение CASE · Курс SQL
Разрешение сущностей: одна реальная вещь, много запутанных имен
В этом руководстве описаны пять шагов, позволяющих определить, какие записи являются одними и теми же реальными, и объединить их, не повреждая ваши данные. Он работает на реальных диаграммах и включает в себя два случая, когда правила оказались неправильными.
Вот проблема в одном примере. Посчитайте отдельных артистов в истории публичных чартов Рекламный щит, и вы поймете, что это неверное число. «Элвис Пресли» и «Элвис Пресли с Джорданеры» — один и тот же человек, как и пять других кредитных линий. Один реальный мир сущность, семь баз данных струны.
Это есть в каждом наборе данных с именами, введенными человеком. Клиенты, которые зарегистрировались дважды. «ИБМ» против «ИБМ». против «Международных бизнес-машин». Один и тот же поставщик в двух системах, записанных двояко.
Работа по его закреплению называется Разрешение объекта. Сопоставление двух наборов данных связь записи. Удаление дубликатов внутри одного дедупликация. Это один и тот же навык, применяемый в разных ситуациях, и это одна из наиболее распространенных задач, которые фактически приходится выполнять аналитику.
- Карта словаря
- Шаг 1: измерьте фрагментацию, прежде чем что-либо исправлять
- Шаг 2: создайте правила путем предварительного просмотра, поймайте, исправьте, перепроверьте
- Шаг 3: знайте, когда НЕ следует выполнять слияние (ложноположительная проверка)
- Шаг 4. Коэффициент соответствия — показатель, который поможет вам быть честным
- Шаг 5: канцелярская проверка — чтение остатков
- Принципы, очищенные
- Ссылки
Карта словаря
| Срок | значение |
|---|---|
| сущность | Реальная ситуация: один художник, один клиент, одна компания. |
| Разрешение объекта | Выяснение того, какие записи относятся к одной и той же сущности |
| связь записи | Та же проблема в двух наборах данных. «Является ли строка 5 в файле A тем же человеком, что и строка 90 в файле B?» Формализовано Это законно & Сантер (1969). |
| дедупликация | Та же проблема внутри одного набора данных |
| Нормализация/стандартизация | Преобразование значений в каноническую форму (строчные буквы, обрезка, вырезание суффиксов), чтобы одинаковые вещи стали равными строками. |
| Ключ совпадения | Очищенные столбцы, к которым вы фактически присоединились. |
| Коэффициент соответствия | Доля записей, нашедших аналог. Это число, которое обеспечивает честность всего упражнения. |
| Канцелярский обзор | Человеческие глаза на записях не могли определить правила. Это формальный этап классической схемы, а не признание неудачи. |
Шаг 1: измерьте фрагментацию, прежде чем что-либо исправлять
Проработанный пример — история Рекламный щит Горячий 100 с 1958 года по настоящее время. Цель — один чистый ряд на каждого исполнителя. Прежде чем писать одно исправление, определите масштаб проблемы. Сначала угадайте число: как вы думаете, сколькими разными способами один известный артист появляется в базе данных чартов? Держи этот номер.
- Глубина: каждый кредит, содержащий "Элвис Пресли", дал Семь отдельные струны для одного человека. Его каталог почти поровну разделен между «Элвисом Пресли» с 50 песнями и «Элвисом Пресли с Джорданеры» с 53 песнями. Посчитайте по голым кредитам, и вы недооцените его наполовину.
- Ширина: среди всех 11 275 различных титров «С участием» появляется в 2662, «С» в 244 и «&» в 1994. До 43% всех кредитов носить столяр. Это не крайняя очистка. Это основное требование к дизайну.
Эти два числа решили все после них. Столь широко распространенная фрагментация делает правила нормализации обязательными. Любое правило затрагивает тысячи строк, поэтому правила должны быть проверено а не доверять.
Шаг 2: создайте правила путем предварительного просмотра, поймайте, исправьте, перепроверьте
Правило извлечения было сформулировано просто: основной художник — это текст перед соединительным словом. Она была построена как лестница CASE и проверена на реальных рядах, прежде чем на ее основе было построено что-либо еще. То, что произошло дальше, является уроком:
- Первый предварительный просмотр пойман «Дуэт 2Пак с Мопреме» → «Дуэт 2Пак»ЗЫ: титр присоединяется к "Дуэту С", правило знал только "С". Фальшивый художник, придуманный по правилу уборки.
- Исправление добавило ступеньку «Дуэт с» над «С». В лестнице CASE конкретные шаблоны должны находиться над общими шаблонами, которые они содержат. Повторная проверка точных строк, на которые нацелено исправление, обнаружила еще одну: «Патти Остин, дуэт с Джеймсом Ингрэмом» стала «Патти Остин А».. Так что нужна была еще одна ступенька, «Дуэт с».
- Еще раз проверьте: чисто. Лестницу заморозили и использовали для построения таблицы художников: 11 275 необработанных кредитов рухнули до 8 896 художников.
Никто не пишет полное правило с первого раза. И данные не выдадут ошибку, когда ваше правило изобретет «2Пак Дуэт». Итак, цикл таков: предварительный просмотр реальных строк, обнаружение дефекта, добавление ступеньки, повторная проверка именно тех строк, на которые вы нацелились. Повторяйте, пока исключения не прекратятся. Полную лестницу, со всеми обнаруженными дефектами, просматривают в Руководство по выражениям CASE.
Шаг 3: знайте, когда НЕ следует выполнять слияние (ложноположительная проверка)
Знак "&" появился в 1994 титрах. Он тоже должен расколоться? Решите, прежде чем читать следующий абзац. Правило простое, и оно сработало для других участников, поэтому аргументы в пользу разделения веские.
Чтение самых крупных кредитов «&» сначала решило проблему. В списке преобладают постоянные дуэты и группы: Кул и банда, Земля, ветер и пламя, Саймон и Гарфанкел. Лишь немногие из них являются временным сотрудничеством. Прежде чем читать дальше, скажите, что это означает для правила. Разделение на «&» разделило бы настоящие группы на несуществующих артистов.
Поэтому решение было не разделяться. Это имеет свою цену. Сольная карьера участника дуэта никогда не сливается с дуэтной работой. Стоимость была записана как ограничение, а не фиксирована.
Это половина разрешения объекта, которую легко пропустить. Чрезмерное слияние разрушает столько же, сколько и недостаточное, и иногда правильным результатом является записанный вами отказ.
Тот же проект еще дважды подчеркивал эту точку зрения. Один дуэт появился как «¥$: Вы & Ty Dolla $зажечь» и «¥$: Канье Уэст & Ty Dolla $зажечь». Это псевдонимы, и ни одно правило не может знать, что это одно действие, без словаря поиска. Отдельно три артиста были разделены исключительно по заглавным буквам: «Тайлер, Создатель» и «Тайлер, Создатель». Это вылечилось с помощью клавиш сопоставления в нижнем регистре.
Шаг 4. Коэффициент соответствия — показатель, который поможет вам быть честным
Представьте на мгновение свою беспорядочную колонку. Имена клиентов, коды продуктов, сайты больниц — все, с чем вы на самом деле работаете. Сколько различных ценностей оно содержит и сколько реальных вещей стоит за ними? Если эти два числа одинаковы, у вас нет проблем. Большинство людей обнаруживают, что вообще не могут ответить на второй вопрос, и этот пробел и есть работа.
В качестве вознаграждения требовались данные диаграммы, связанные со вторым набором данных, статистика слушателей из музыкального API, сопоставленная с исполнителем и текстом названия. Это связь записей. Дисциплина проста: измеряйте коэффициент совпадения до и после каждого правила очистки.
- Только базовое сопоставление без учета регистра: 31.2% треков нашли свой аналог в чартах.
- После одного целевого правила 37.0%. Правило обрезало хвосты «(подвиг. …)» и «(с…)», которые есть в заголовках API, а в заголовках диаграмм — нет. Было восстановлено 763 реальных совпадения.
- Удаление всех круглых скобок дало бы еще более высокий балл, и это было бы неправильно. Беглый просмотр показал, что скобки часто являются частью настоящего названия песни, как, например, в «Одинокие дамы (Надень на него кольцо)». Тот же урок, что и «&»: прочитайте, прежде чем править.
Обратите внимание, каков коэффициент совпадения для. В этом проекте никогда не предполагалось достичь 100%. Вся суть заключалась в непревзойденных треках, потому что это были песни, которые никогда не попадали в чарты.
Задача тарифа — отделить сигнал от дефекта. Хорошее правило восстанавливает орфографические потери без изобретения ложных совпадений. Оценка показывает, какой вклад внесло каждое правило, поэтому вы сможете прекратить уборку, когда улучшения прекратятся.
Шаг 5: канцелярский обзор или чтение остатков
Классическая система связывания записей сортирует пары кандидатов тремя способами: уверенное совпадение, уверенное несовпадение и средняя зона, которая достается человеку (Это законно & Сантер, 1969).
В повседневной работе аналитика третье ведро проще и дешевле, чем кажется. После выполнения правил прочитайте несовпадающие строки, отсортированные таким образом, чтобы наиболее важные были первыми.
Затем оцените то, что вы видите. Если верхняя часть этого списка заполнена записями, которые, очевидно, должны были совпадать, в ваших правилах есть пробел. Если оно действительно не имеет себе равных, связь завершена, а то, что осталось, становится ограничением, которое вы документируете и даете количественную оценку.
Это занимает около десяти минут. В этом разница между «соединение выполнено» и «соединение правильное».
Принципы, очищенные
| Принцип | Однострочная версия |
|---|---|
| Сначала измерьте | Прежде чем писать какое-либо правило, определите размер фрагментации (глубина одного объекта и ширина по всей таблице). |
| Предварительный просмотр каждого правила | Показывать исходные и преобразованные изображения рядом в реальных строках; прочитайте их. |
| Конкретное выше общего | В любой лестнице правил узкая модель превосходит содержащуюся в ней широкую модель. |
| Проверьте ложные срабатывания | Прежде чем объединять или разделять данные, прочтите строки, в которых неправильное правило наносит наибольший ущерб. |
| Иногда: не объединяйтесь | Чрезмерное слияние уничтожает реальные сущности. Документально подтвержденный отказ является действительным результатом. |
| Ключи сопоставления, сохраненные и индексированные | Вычислить нормализованные ключи один раз в реальные столбцы; присоединяйтесь к ним, а не к функциональным оригиналам. |
| Коэффициент совпадения по правилу | Измеряйте до и после каждого правила; остановитесь, когда курс перестанет двигаться по честным причинам. |
| Канцелярский обзор | Прочтите остатки, прежде чем объявить о победе. |
| Записывать все | Каждое решение (включая отказы) фиксируется в протоколе качества данных и раздел ограничений. |
тот Скрытые сокровища Пар и Потоковое вещание «Скрытые жемчужины» проекты реализуют эти привычки посредством полного анализа, который вы можете прочитать. Курс SQL обучает движениям LIKE, CASE, LOWER и JOIN, которые используются на каждом этапе выше.
Откройте набор SQL →Или приступайте к делу и учитесь, написав запросы: открыть SQL-практикум, тринадцать запросов, каждый из которых добавляет что-то одно к последнему.
Думать как аналитик Это 64 страницы, посвященные половине работы: определение показателя, составление отчета по результатам анализа, изучение данных, прежде чем вы им поверите, и высказывание вслух того, о чем ваши данные не могут вам сказать.
Думать как аналитик, 19 $ →Ссылки
- Феллеги, И.П. и Сантер, А.Б. (1969). Теория связи записей. Журнал Американской статистической ассоциации, 64.(328), 1183–1210. doi:10.1080/01621459.1969.10501049
- Ван, Р.Ю., и Стронг, Д.М. (1996). За пределами точности: что качество данных означает для потребителей данных. Журнал информационных систем управления, 12(4), 5–33. (Стандарт пригодности для использования, которому отвечают компромиссы слияния/не слияния.)