Data Analyst Professional · Модуль 6 · Урок 19 із 51
Профілювання даних і вимірювані критерії якості
Очищення починається не з масового UPDATE, а з профілю: що означає один рядок, які поля критичні, які правила діють і наскільки поточні дані їм відповідають. Якість завжди оцінюється відносно конкретного використання.
Шість вимірів — не один «відсоток якості»
| Вимір | Контрольне питання | Приклад метрики |
|---|---|---|
| Completeness | Чи є всі очікувані records і critical values? | non-NULL customer_ref / expected rows |
| Uniqueness | Чи одна сутність представлена один раз? | distinct business keys / rows |
| Consistency | Чи не суперечать values одне одному? | узгоджені status між системами |
| Timeliness | Чи дані актуальні для рішення? | lag від source event до availability |
| Validity | Чи відповідає value типу, формату, range? | valid timestamp/amount/status rate |
| Accuracy | Чи value відповідає реальності? | звірка з authoritative source/sample |
Completeness ≠ accuracy
Заповнене поле може містити неправильне значення. SQL-перевірка формату доводить validity, але не завжди accuracy.
Профіль до будь-якої трансформації
SELECT
COUNT(*) AS rows,
COUNT(customer_ref) AS populated_customer_ref,
COUNT(DISTINCT customer_ref) AS distinct_customer_ref,
COUNT(*) FILTER (WHERE customer_ref IS NULL OR BTRIM(customer_ref) = '') AS missing_customer_ref,
MIN(loaded_at) AS first_load,
MAX(loaded_at) AS last_load
FROM seowork_lab.raw_customer_events;Профіль включає row/key counts, NULL/blank, distinct/unique, range, frequency, unexpected values, freshness і sample проблемних rows. Окремо зафіксуйте scope: весь dataset чи лише preview. Power Query, наприклад, може профілювати лише перші 1000 rows, якщо не перемкнути весь набір.
Від business need до data quality rule
Rule має ID, dimension, scope, field/grain, logic, denominator, threshold, severity, owner і дату перевірки. Без denominator «5 помилок» нічого не каже про масштаб.
Практична лабораторія
Завантажити synthetic quality lab (.sql)
- Запустіть лише у навчальній PostgreSQL database.
- Запишіть grain і expected key таблиці.
- Побудуйте профіль кожної колонки та status/region distributions.
- Сформулюйте щонайменше 6 rules із denominator і threshold.
- Не змінюйте raw table — збережіть baseline.
Офіційні джерела
Готовність до тесту
Ви відрізняєте шість вимірів, фіксуєте baseline й перетворюєте вимогу на відтворюване правило з denominator, threshold та owner.
Закріпіть матеріал уроку
Три сценарні питання. Для зарахування уроку потрібно дати щонайменше дві правильні відповіді.