Amazon DEA-C01: Приём и сбор данных — Руководство по подготовке

Часть Amazon Data Engineer Associate DEA-C01 — Руководство по подготовке. Практикуйтесь с проверенными ответами в центре экзаменов Amazon, или пройдите тесты на время на ExamRoll.io.

Этот раздел охватывает паттерны, сервисы AWS и операционные детали, используемые для надежной и масштабируемой загрузки необработанных данных в платформу данных. Инженеры данных должны выбирать между пакетными и потоковыми точками входа, обеспечивать каталогизацию данных и возможность их обнаружения, а также проектировать систему с учетом пропускной способности, возможности повторного воспроизведения и режимов отказа. Ключевыми строительными блоками AWS являются S3 и Glue для пакетной загрузки, Kinesis и Firehose для потоковой, DMS для миграции баз данных и CDC, а также компоненты на основе API и событий (API Gateway, Lambda, SNS, SQS, события S3) для специализированной (ad-hoc) и push-ориентированной загрузки данных.

Пакетная загрузка с помощью AWS Glue и S3

Glue — это основной управляемый сервис для ETL и работы с метаданными при пакетной загрузке в S3 и ваш каталог данных. Типичный паттерн: выгружать необработанные файлы в S3 (используя отдельные префиксы для сырых данных, например, raw/zone), запускать краулер Glue для определения схемы и наполнения Glue Data Catalog, а затем запускать задания Glue ETL (на базе Spark) для преобразования, партиционирования, конвертации в колоночные форматы (Parquet/ORC) и записи оптимизированных данных обратно в S3. Настраивайте краулеры с подходящими классификаторами (встроенными для CSV/JSON/Parquet или кастомными на основе grok/regex) и предоставьте краулеру IAM-роль с разрешениями s3:GetObject/s3:ListBucket и glue:catalog — отсутствие этих разрешений является частой операционной ошибкой.

При настройке заданий и краулеров Glue используйте следующие паттерны и параметры для консоли/CLI:

undefined

и запуск с помощью

undefined

.

undefined

; включите закладки заданий (job bookmarks), чтобы избежать повторной обработки данных. Критерии выбора между Glue и альтернативами:

Потоковая загрузка с помощью Kinesis Data Streams и Firehose

Kinesis Data Streams (KDS) предназначен для загрузки данных в реальном времени с возможностью повторного воспроизведения, контролем потребителей и гранулярным масштабированием. Один шард Kinesis обеспечивает пропускную способность на запись 1 МБ/с или 1000 записей/с и на чтение 2 МБ/с; используйте

undefined

и отправляйте данные с помощью

undefined

. Ключи партиционирования (partition keys) определяют распределение по шардам; низкая кардинальность ключей приводит к появлению «горячих» шардов — избегайте этого, увеличивая энтропию ключа или добавляя к нему хэш-суффикс. Масштабируйте шарды с помощью

undefined

или включите режим On-Demand для автоматического масштабирования.

Firehose — это сервис для доставки потоковых данных, оптимизированный для доставки в режиме, близком к реальному времени (в S3, Redshift, OpenSearch, Splunk), со встроенной буферизацией, сжатием и опциональным преобразованием с помощью Lambda. Настройте буферизацию с помощью BufferingHints: buffer_size (МБ) и buffer_interval (секунды), чтобы сбалансировать задержку доставки и стоимость; включите сжатие (GZIP, Snappy) и установите обрабатывающую Lambda-функцию для преобразований на уровне записей. Ключевые различия:

Выбирайте KDS, когда вам нужна возможность повторного воспроизведения, строгий контроль потребителей или несколько нижестоящих потребителей; выбирайте Firehose, когда вам нужна простая доставка и преобразование данных для S3/Redshift/OpenSearch с минимальными операционными издержками.

Миграция баз данных и CDC с помощью DMS

AWS DMS используется для гомогенных/гетерогенных миграций и непрерывной репликации данных (CDC). Разверните инстанс репликации (

undefined

), размер которого подбирается под требуемую пропускную способность, а решения о размере принимаются на основе скорости изменений, объема полной загрузки и параллелизма задач. Типы задач DMS:

Критерии выбора между full-load и CDC: используйте full-load+CDC, когда требуется миграция с минимальным временем простоя; используйте только CDC для непрерывной репликации после того, как начальная загрузка была выполнена другим способом. Всегда проверяйте маппинг схем и проводите тестовые миграции на репрезентативных объемах данных.

Паттерны приёма данных на основе API и событий

API и события предназначены для push-моделей приёма и оркестрации данных. Распространённые паттерны:

undefined

; используйте фильтры по префиксам/суффиксам для ограничения срабатываний. Для веерной рассылки (fan-out) направляйте события по маршруту S3 -> топик SNS -> несколько очередей SQS/подписчиков Lambda, чтобы доставить одно и то же событие нескольким потребителям без жёсткой связи между ними.

Операционные аспекты и паттерны CLI:

Распространённые ошибки и критерии выбора

undefined

и

undefined

, чтобы краулеры могли заполнять Data Catalog.

undefined

в MySQL (в формате ROW) или логическую репликацию и

undefined

в PostgreSQL перед запуском задач CDC.

undefined

и

undefined

в соответствии с допустимой задержкой и объёмом запросов.

Практическая задача: Сценарий использования

Компания RetailCo собирает кликстрим-данные с мобильных устройств (большой объём в реальном времени) и ежедневные файлы с каталогом продуктов; им необходимы дашборды в реальном времени и консолидированное озеро данных для аналитики.

  1. Принимать кликстрим-данные в Kinesis Data Streams, используя ключи партиционирования, полученные из сессии пользователя + хешированный суффикс шарда; создавать потребителей с помощью Kinesis Data Analytics или Lambda/Kinesis Client Library для обработки в реальном времени.
  2. Использовать Kinesis Data Firehose с трансформирующей Lambda-функцией для сохранения обогащённых потоковых данных в S3 (в формате Parquet), сжимать с помощью Snappy и опционально загружать в Redshift Spectrum для аналитики.
  3. Размещать ежедневные файлы каталога в S3

undefined

и запускать по расписанию краулер Glue для обновления Glue Data Catalog, затем запускать Glue ETL-задания для преобразования данных в партиционированный Parquet в curated-зоне. 4. Использовать уведомления о событиях S3 -> SNS -> Lambda для запуска легковесных обновлений метаданных или инвалидации кеша; направлять доставку в SQS для надёжной последующей обработки. 5. Отслеживать метрики шардов Kinesis (

undefined

,

undefined

,

undefined

) и использовать

undefined

или потоки On-Demand для управления ростом нагрузки; включить оповещения CloudWatch.

Обоснование лучших практик AWS: разделение путей обработки данных в реальном времени и пакетной обработки, использование Kinesis Data Streams, когда требуется повторное чтение и изоляция потребителей, использование Firehose для управляемой доставки в S3/другие назначения, и поддержка Glue Data Catalog для обнаружения данных и интеграции запросов с Athena/Redshift.


Все домены · Хранение данных и архитектура озера данных

Отработать эти вопросы → · Тесты на время на ExamRoll.io →

Pass the whole exam — not just this question

You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.

Сдайте экзамен →

Просмотреть Amazon →

Related guides

Все включено

Одна подписка. Каждый экзамен.

Каждый план открывает неограниченный поиск ответов, практические тесты, объяснения AI и полную библиотеку ресурсов — на более чем 20 языках.

Ежемесячно
24.87
Just €0.83/day
Все включено:
  • Неограниченный поиск ответов
  • Неограниченные практические тесты
  • Объяснения на основе AI
  • Полная библиотека ресурсов
  • 20+ языков
  • Еженедельные обновления контента
  • Награды и рефералы
  • Приоритетная поддержка
Начать бесплатную пробную версию

Кредитная карта не требуется*

Лучшая цена
12 месяцев
179.87
Just €0.49/daySave 40%
Все включено:
  • Неограниченный поиск ответов
  • Неограниченные практические тесты
  • Объяснения на основе AI
  • Полная библиотека ресурсов
  • 20+ языков
  • Еженедельные обновления контента
  • Награды и рефералы
  • Приоритетная поддержка
Начать бесплатную пробную версию

Кредитная карта не требуется*

✓ Включен бесплатный план · ✓ Отмена в любое время · ✓ Все планы открывают полный продукт