Сегодня сотни тысяч клиентов используют озера данных для аналитики и машинного обучения. Однако инженеры данных должны очистить и подготовить эти данные, прежде чем их можно будет использовать. Базовые данные должны быть точными и свежими, чтобы клиент мог принимать уверенные деловые решения. В противном случае потребители данных теряют доверие к данным и принимают неоптимальные или неправильные решения. Обычная задача дата-инженеров — оценить, являются ли данные точными и свежими или нет. На сегодняшний день существуют различные инструменты качества данных. Однако общие инструменты контроля качества данных обычно требуют ручных процессов для контроля качества данных.
AWS Glue Data Quality — это предварительная функция Клей AWS который измеряет и контролирует качество данных Простой сервис хранения Amazon (Amazon S3) и задания извлечения, преобразования и загрузки AWS Glue (ETL). Это функция открытого предварительного просмотра, поэтому она уже включена в вашей учетной записи в доступные регионы. Вы можете легко определять и измерять проверки качества данных в консоли AWS Glue Studio без написания кода. Это упрощает управление качеством данных.
Этот пост является второй частью серии из четырех постов, посвященных тому, как работает AWS Glue Data Quality. Посмотрите предыдущий пост из этой серии:
В этом посте мы покажем, как создать задание AWS Glue, которое измеряет и отслеживает качество данных конвейера данных. Мы также показываем, как действовать на основе результатов качества данных.
Обзор решения
Давайте рассмотрим пример использования, в котором инженеру данных необходимо создать конвейер данных для приема данных из необработанной зоны в контролируемую зону в озере данных. Одной из ваших основных обязанностей как специалиста по обработке данных, наряду с извлечением, преобразованием и загрузкой данных, является проверка качества данных. Заблаговременное выявление проблем с качеством данных помогает предотвратить размещение неверных данных в курируемой зоне и избежать серьезных инцидентов с повреждением данных.
В этом посте вы узнаете, как легко настроить встроенный и изготовленный на заказ проверки данных в задании AWS Glue, чтобы неверные данные не испортили последующие высококачественные данные.
Набор данных, используемый для этого поста, создан синтетически; на следующем снимке экрана показан пример данных.
Настройка ресурсов с помощью AWS CloudFormation
Этот пост включает в себя AWS CloudFormation шаблон для быстрой настройки. Вы можете просмотреть и настроить его в соответствии с вашими потребностями.
Шаблон CloudFormation генерирует следующие ресурсы:
- Корзина Amazon Simple Storage Service (Amazon S3) (
gluedataqualitystudio-*
). - Следующие префиксы и объекты в корзине S3:
datalake/raw/customer/customer.csv
datalake/curated/customer/
scripts/
sparkHistoryLogs/
temporary/
- Управление идентификацией и доступом AWS (IAM) пользователи, роли и политики. Роль IAM (
GlueDataQualityStudio-*
) имеет разрешение на чтение и запись из корзины S3. - AWS Lambda функции и политики IAM, необходимые этим функциям для создания и удаления этого стека.
Чтобы создать свои ресурсы, выполните следующие действия:
- Войдите в Консоль AWS CloudFormation в
us-east-1
Область. - Выберите Стек запуска:
- Выберите Я признаю, что AWS CloudFormation может создавать ресурсы IAM.
- Выберите Создать стек и дождитесь завершения шага создания стека.
Реализуйте решение
Чтобы начать настройку решения, выполните следующие шаги:
- На Консоль AWS Glue Studio, выберите Джобс в навигационной панели.
- Выберите Визуальный с пустым холстом , а затем выбрать Создавай.
- Выберите Сведения о задании вкладка для настройки задания.
- Что касается Фамилия, войти
GlueDataQualityStudio
. - Что касается Роль IAM, выберите роль, начинающуюся с
GlueDataQualityStudio-*
. - Что касается Версия клея, выберите Клей 3.0.
- Что касается Закладка вакансии, выберите Отключить. Это позволяет запускать это задание несколько раз с одним и тем же входным набором данных.
- Что касается Количество попыток, войти
0
. - В Дополнительные свойства укажите корзину S3, созданную с помощью шаблона CloudFormation (начиная с
gluedataqualitystudio-*
). - Выберите Сохранить.
- После сохранения задания выберите визуальный вкладку и на Источник Меню, выберите Amazon S3.
- На Свойства источника данных - S3 вкладка, для Тип источника S3, наведите на S3 местоположение.
- Выберите Обзор S3 и перейдите к префиксу
/datalake/raw/customer/
в корзине S3, начиная сgluedataqualitystudio-*
. - Выберите Вывод схемы.
- На Действие Меню, выберите Оцените качество данных.
- Выберите Оцените качество данных узел.
На Transform вкладку, теперь вы можете начать создавать правила качества данных. Первое правило, которое вы создаете, это проверкаCustomer_ID
уникален и не равен нулю, используяisPrimaryKey
править. - На Типы правил вкладки Построитель правил DQDL, ищи
isprimarykey
и выберите знак плюс. - На Схема вкладки Построитель правил DQDL, выберите знак плюса рядом с
Customer_ID
. - В редакторе правил удалите
id
.
Следующее правило, которое мы добавляем, проверяет, чтоFirst_Name
значение столбца присутствует для всех строк. - Вы также можете ввести правила качества данных непосредственно в редакторе правил. Добавьте запятую (,) и введите
IsComplete "First_Name",
после первого правила.
Затем вы добавляете пользовательское правило для проверки того, что ни одна строка не существует безTelephone
orEmail
. - Введите следующее пользовательское правило в редакторе правил:
Функция «Оценить качество данных» предоставляет действия для управления результатами задания на основе результатов качества задания. - Для этого сообщения выберите Сбой задания при неудовлетворительном качестве данных , а затем выбрать Сбой задания без загрузки цели данным действия. в Настройка качества вывода данных раздел, выбрать Обзор S3 и перейдите к префиксу
dqresults
в корзине S3, начиная сgluedataqualitystudio-*
. - На цель Меню, выберите Amazon S3.
- Выберите Цель данных — сегмент S3 узел.
- На Свойства цели данных - S3 вкладка, для Формат, выберите паркет, А для Тип сжатия, выберите кусачий.
- Что касается Целевое местоположение S3, выберите Обзор S3 и перейдите к префиксу
/datalake/curated/customer/
в корзине S3, начиная сgluedataqualitystudio-*
. - Выберите Сохранить, а затем выберите Run.
Сведения о выполнении задания можно просмотреть на вкладке «Выполнения». В нашем примере задание завершается сбоем с сообщением об ошибке «AssertionError: задание не выполнено из-за сбоя правил DQ для узла: ».
Вы можете просмотреть результат качества данных на вкладке Качество данных. В нашем примере проверка качества пользовательских данных не удалась, поскольку в одной из строк набора данных не былоTelephone
orEmail
значения.Результаты оценки качества данных также записываются в корзину S3 в формате JSON на основе параметра местоположения результата качества данных узла. - Перейдите в
dqresults
префикс под ведром S3 начинаяgluedataqualitystudio-*
. Вы увидите, что результат качества данных разделен по дате.
Ниже приведен вывод файла JSON. Вы можете использовать этот выходной файл для создания пользовательских панелей мониторинга качества данных.
Вы также можете следить за Оцените качество данных узел через Amazon CloudWatch метрики и установить сигналы тревоги для отправки уведомлений о результатах качества данных. Чтобы узнать больше о настройке предупреждений CloudWatch, см. Использование сигналов тревоги Amazon CloudWatch.
Убирать
Чтобы избежать будущих расходов и очистить неиспользуемые роли и политики, удалите созданные вами ресурсы:
- Удалите
GlueDataQualityStudio
задание, которое вы создали как часть этого поста. - В консоли AWS CloudFormation удалите
GlueDataQualityStudio
стек.
Заключение
AWS Glue Data Quality предлагает простой способ измерения и мониторинга качества данных вашего конвейера ETL. В этом посте вы узнали, как предпринять необходимые действия на основе результатов проверки качества данных, что поможет вам поддерживать высокие стандарты данных и принимать уверенные бизнес-решения.
Чтобы узнать больше о качестве данных AWS Glue, ознакомьтесь с документацией:
Об авторах
Динбандху Прасад — старший специалист по аналитике в AWS, специализирующийся на сервисах больших данных. Он увлечен тем, что помогает клиентам создавать современную архитектуру данных в облаке AWS. Он помог клиентам всех размеров внедрить решения по управлению данными, хранилищам данных и озерам данных.
Яннис Ментекидис — старший инженер по разработке программного обеспечения в команде AWS Glue.
- SEO-контент и PR-распределение. Получите усиление сегодня.
- Платоблокчейн. Интеллект метавселенной Web3. Расширение знаний. Доступ здесь.
- Источник: https://aws.amazon.com/blogs/big-data/getting-started-with-aws-glue-data-quality-for-etl-pipelines/
- 1
- 100
- 7
- a
- О нас
- доступ
- Учетная запись
- точный
- признавать
- Действие
- действия
- После
- Все
- позволяет
- уже
- Amazon
- аналитика
- и
- архитектура
- AWS
- AWS CloudFormation
- Клей AWS
- Плохой
- плохие данные
- основанный
- , так как:
- до
- большой
- Big Data
- строить
- Строительство
- бизнес
- случаев
- расходы
- проверка
- Проверки
- Выберите
- облако
- Column
- Общий
- полный
- уверенный
- Рассматривать
- Консоли
- Потребители
- коррупция
- Создайте
- создали
- создание
- Куратор
- изготовленный на заказ
- клиент
- Клиенты
- настроить
- данным
- Озеро данных
- управление данными
- Время
- решения
- подробнее
- Разработка
- непосредственно
- документации
- легко
- редактор
- инженер
- Инженеры
- Enter
- ошибка
- Эфир (ETH)
- оценивать
- пример
- существует
- опыт
- Объяснять
- извлечение
- XNUMX ошибка
- не удается
- Особенность
- Файл
- First
- после
- формат
- от
- Функции
- будущее
- генерируется
- генерирует
- получающий
- помог
- помощь
- помогает
- High
- высококачественный
- Как
- How To
- Однако
- HTML
- HTTPS
- Сотни
- идентифицирующий
- Личность
- осуществлять
- in
- включает в себя
- вход
- вопросы
- IT
- работа
- Джобс
- JSON
- Основные
- озеро
- УЧИТЬСЯ
- узнали
- изучение
- загрузка
- погрузка
- расположение
- терять
- машина
- обучение с помощью машины
- поддерживать
- сделать
- управлять
- управление
- управления
- руководство
- проводить измерение
- меры
- Меню
- сообщение
- Метрика
- может быть
- Модерн
- монитор
- Мониторы
- БОЛЕЕ
- с разными
- Откройте
- Навигация
- необходимо
- потребности
- следующий
- узел
- Уведомления
- объекты
- Предложения
- ONE
- открытый
- в противном случае
- хлеб
- параметр
- часть
- страстный
- разрешение
- трубопровод
- размещение
- Платон
- Платон Интеллектуальные данные
- ПлатонДанные
- плюс
- сборах
- После
- Подготовить
- представить
- предотвращать
- предварительный просмотр
- предыдущий
- первичный
- Процессы
- свойства
- обеспечивать
- приводит
- САЙТ
- Сырье
- Читать
- последний
- область
- требовать
- обязательный
- Полезные ресурсы
- результат
- Итоги
- обзоре
- Роли
- роли
- РЯД
- Правило
- условиями,
- Run
- то же
- Поиск
- Раздел
- Серии
- обслуживание
- Услуги
- набор
- установка
- установка
- показывать
- Шоу
- подпись
- просто
- Размеры
- So
- Software
- разработка программного обеспечения
- Решение
- Решения
- Источник
- специалист
- специализация
- стек
- стандартов
- Начало
- и политические лидеры
- Начало
- Шаг
- Шаги
- диск
- студия
- Костюм
- синтетически
- взять
- цель
- Сложность задачи
- команда
- шаблон
- Ассоциация
- тысячи
- Через
- раз
- в
- сегодня
- инструменты
- Transform
- превращение
- Доверие
- под
- лежащий в основе
- созданного
- неиспользованный
- использование
- прецедент
- пользователей
- обычно
- VALIDATE
- Проверка
- ценностное
- различный
- Вид
- визуализация
- ждать
- будь то
- который
- будете
- без
- работает
- записывать
- письмо
- письменный
- ВАШЕ
- зефирнет