Google PDE: Управление данными, безопасность, надежность и управление затратами — Руководство по подготовке
Часть Google Professional Data Engineer — Руководство по подготовке. Практикуйтесь с проверенными ответами в центре экзаменов Google, или пройдите тесты на время на ExamRoll.io.
Обзор
В этом разделе кратко изложены шаблоны проектирования и операционные практики для управления данными, безопасности, надежности и контроля затрат в Google Cloud. Основное внимание уделяется BigQuery, Cloud Storage, Dataflow, Dataplex и вспомогательным сервисам. Акцент делается на принципе наименьших привилегий, управлении ключами шифрования, метаданных и классификации, доступе на основе политик, подтверждении соответствия требованиям, наблюдаемости с практическими SLO и контроле затрат. Рассматриваются компромиссы, режимы отказа и практические конфигурации для создания безопасных, проверяемых и эффективных платформ данных.
Идентификация, доступ и управление
IAM, сервисные аккаунты, имперсонация, Workload Identity, принцип наименьших привилегий
- Границы идентификации
- Пользователи и группы через Cloud Identity или Google Workspace
- Сервисные аккаунты для рабочих нагрузок; назначайте роли с узкой областью действия на самом низком практическом уровне ресурса (например, на уровне набора данных, а не проекта)
- Принцип наименьших привилегий
- Предпочитайте предопределенные роли примитивным; для BigQuery используйте роли, такие как bigquery.dataViewer, на наборах данных вместо роли viewer на уровне проекта
- Предоставляйте разрешения группам; управляйте членством в IdP, а не IAM для каждого пользователя
- Разделение обязанностей: отдельные роли для управления ключами, доступа к данным и администрирования
- Имперсонация и федерация удостоверений для рабочих нагрузок (Workload Identity Federation)
- Используйте имперсонацию сервисных аккаунтов (роль roles/iam.serviceAccountTokenCreator), чтобы CI/CD или автоматизация никогда не хранили долгоживущие ключи
- Используйте Workload Identity Federation с OIDC/SAML, чтобы внешние удостоверения могли получать короткоживущие токены без файлов ключей сервисных аккаунтов
- Режимы отказа и способы их устранения
- Избыточные роли на уровне проекта приводят к боковому перемещению; проводите аудит с помощью Cloud Asset Inventory
- Утеря закрытых ключей сервисного аккаунта: запретите создание ключей; используйте ограничения организационной политики для блокировки загрузки ключей; ротируйте ключи при обнаружении
- Границы идентификации
Управление в Dataplex, Data Catalog, бизнес-метаданные, происхождение данных (lineage)
- Dataplex предоставляет озера (lakes), зоны (zones) и ресурсы (assets) для унифицированного управления BigQuery и Cloud Storage с помощью централизованных политик
- Data Catalog содержит бизнес-глоссарий, шаблоны тегов и технические метаданные; прикрепляйте бизнес-метаданные (владелец, класс PII, RTO/RPO) с помощью тегов
- Происхождение данных (Lineage) фиксирует восходящие и нисходящие зависимости; используйте интеграцию Dataplex lineage с Dataflow, Dataproc и BigQuery для отслеживания влияния и области соответствия требованиям
- Компромиссы
- Централизованное управление создает начальные накладные расходы, но снижает долгосрочные риски и ускоряет аудиты
Теги политик, классификация, доступ на уровне строк, маскирование столбцов
- Классификация
- Определите таксономию (например, public, internal, confidential, restricted) в тегах политик Data Catalog
- Прикрепляйте теги политик к столбцам BigQuery; привязывайте IAM к тегам, чтобы доступ соответствовал классификации данных в разных таблицах
- Маскирование столбцов
- Используйте политики маскирования данных BigQuery для хеширования или обнуления конфиденциальных столбцов для непривилегированных пользователей
Пример:
- Классификация
undefined
- Доступ на уровне строк
- Используйте политики доступа на уровне строк для фильтрации записей по атрибутам, таким как tenant_id или region
Пример:
undefined
Режимы отказа
- Отсутствие IAM-разрешений на теги политик у сервисных аккаунтов, используемых конвейерами, приводит к сбоям запросов; при необходимости включайте роли viewer/accessor для тегов политик сервисным агентам
- Политики на уровне строк могут снижать производительность, если используется много предикатов с высокой селективностью для каждого пользователя; предпочитайте более гранулярное разделение (набор данных на каждого клиента), если требуется строгая изоляция
Обнаружение и деидентификация конфиденциальных данных
- Используйте Sensitive Data Protection для непрерывного сканирования Cloud Storage и BigQuery; создавайте конфигурации обнаружения для каждого озера/зоны с помощью шаблонов
- Используйте преобразования для деидентификации: токенизацию, детерминированное шифрование для возможности объединения (join) или маскирование
- Храните ключи преобразования в Cloud KMS; держите ключи для реидентификации отдельно с двойным контролем
- Компромиссы
- Детерминированное шифрование позволяет выполнять объединения, но может привести к утечке информации о частоте данных; при необходимости используйте шифрование с сохранением формата или бакетирование
- Сэмплирование снижает стоимость сканирования для обнаружения, но может пропустить редко встречающиеся персональные данные (PII)
Операции по обеспечению безопасности и соответствия требованиям
Шифрование, Cloud KMS, CMEK и работа с секретами
- Шифрование неактивных данных (at rest) и данных при передаче (in transit) включено по умолчанию; используйте CMEK, когда требуется регуляторный контроль над ключами (BigQuery, GCS, Pub/Sub, Dataflow)
- Управление ключами
- Размещайте ключи в том же регионе, что и данные; предоставьте сервисному агенту (например, BigQuery Service Agent) роль roles/cloudkms.cryptoKeyEncrypterDecrypter
- Регулярно ротируйте ключи; отслеживайте отключенные или запланированные к удалению ключи
- Режимы отказа
- Отключение ключа CMEK или отзыв прав у сервисного агента нарушает загрузку, выполнение запросов и экспорт данных; настройте оповещения об изменениях состояния ключа
- Использование ключей из другого региона запрещено; согласовывайте местоположение, чтобы избежать ошибок при создании заданий
- Секреты
- Используйте Secret Manager для учетных данных баз данных, токенов API; предоставляйте доступ через IAM и проводите аудит с помощью логов Secret Manager
- Никогда не встраивайте секреты в код, контейнеры или ноутбуки; монтируйте секреты через доступ во время выполнения (runtime); отдавайте предпочтение аутентификации в базе данных через IAM, где это поддерживается
Журналы аудита, проверка доступа, доказательства соответствия и хранение данных
- Включите журналы доступа к данным (Data Access logs) на уровне всей организации для BigQuery, GCS, Pub/Sub; экспортируйте их в выделенный проект для логов с доступом только на запись, защищенный с помощью CMEK
- Создайте агрегированные приемники логов (sinks) в BigQuery (для аналитики) и Cloud Storage (для долгосрочного неизменяемого архива с блокировкой хранения в бакете)
- Используйте Cloud Asset Inventory и Policy Analyzer для периодической проверки доступа и обнаружения отклонений от конфигурации (drift detection)
- Хранение
- Настройте срок хранения логов в соответствии с требованиями комплаенса; используйте версионирование объектов и политики хранения (retention policies) в GCS
- В BigQuery установите срок хранения таблиц по умолчанию и используйте снимки таблиц (snapshots) / перемещение во времени (time travel) для краткосрочного отката; архивируйте критически важные наборы данных в отдельные проекты
- Доказательства
- Поддерживайте сопоставление контролей с помощью тегов Dataplex (например, «SOX-C2: Доказательство в проекте X, приемнике Y»), автоматизируйте экспорт и запускайте запросы по расписанию для формирования подтверждений (attestations)
Надежность, наблюдаемость, качество и управление затратами
Аспекты качества данных, фреймворки валидации и реагирование на инциденты
- Аспекты: точность, полнота, согласованность, своевременность, валидность, уникальность, целостность
- Внедряйте проверки на этапах приема и преобразования данных
- Наборы правил Dataplex Data Quality для таблиц BigQuery и ресурсов GCS
- Great Expectations или Deequ в Dataflow/Dataproc для проверок схемы и содержимого
- Направляйте сбои в таблицы или бакеты для недоставленных сообщений с подробным контекстом ошибки; избегайте потери данных, помещая некорректные записи в карантин
- Реагирование на инциденты
- Определите уровни серьезности, владельцев, каналы связи, планы отката и матрицу RACI
- Автоматизируйте ранбуки для восполнения данных за пропущенные периоды и повторной обработки недоставленных сообщений; делайте снимки затронутых таблиц перед исправлением
Cloud Monitoring, логирование, оповещения, бюджеты ошибок и SLO
- Предоставляйте метрики: отставание (backlog) Dataflow, утилизация слотов BigQuery, задержка запросов, задержка/ошибки GCS, неподтвержденные сообщения Pub/Sub
- SLO
- Пример: «99,9% потоковых событий доступны в BigQuery в течение 5 минут на протяжении 30 дней»
- Отслеживайте скорость исчерпания бюджета ошибок и отправляйте оповещения (page) при быстром исчерпании; создавайте заявки (ticket) при медленном
- Метрики и оповещения на основе логов
- Создавайте метрики на основе логов для сбоев заданий BigQuery, находок DLP, ошибок ключей KMS
- Используйте расширенные фильтры логов для оповещения о добавлении данных в конкретные таблицы или об аномалиях доступа
Распределение затрат, бюджеты, контроль запросов, жизненный цикл хранения, планирование мощностей
- Распределение затрат и бюджеты
- Используйте лейблы и теги для всех заданий, наборов данных, бакетов и резервирований; экспортируйте биллинговые данные в BigQuery и создавайте бюджеты с уведомлениями через Pub/Sub
- Контроль затрат в BigQuery
- Используйте партиционирование и кластеризацию для уменьшения объема сканируемых данных
Устанавливайте
maximumBytesBilledдля заданий запросов; пример конфигурации клиента/задания:
- Распределение затрат и бюджеты
undefined
- Резервируйте слоты с помощью BigQuery Reservations для предсказуемых нагрузок; разделяйте интерактивные и пакетные задачи через назначения (assignments)
Жизненный цикл хранения
- GCS: правила жизненного цикла для перемещения в более холодное хранилище или удаления через N дней; включайте версионирование объектов, где требуется возможность отката
- Пример (кратко): Удалять неактуальные версии через 30 дней; установить политику хранения бакета на 365 дней для зон соответствия требованиям
- BigQuery: срок хранения таблиц по умолчанию для временных наборов данных; создавайте снимки перед внесением деструктивных изменений
Планирование мощностей
- Dataflow: устанавливайте максимальное количество воркеров и автомасштабирование; подбирайте правильный размер типов машин; шардируйте входные данные, чтобы избежать «горячих» ключей
- Pub/Sub: проверяйте квоты на публикацию/потребление и срок хранения сообщений
- Сеть: учитывайте исходящий трафик (egress), перемещение между регионами и доступ к частным сервисам для баз данных
Аварийное восстановление, резервное копирование, отказоустойчивость в нескольких регионах и ранбуки
- Классифицируйте сервисы по RTO/RPO; выбирайте соответствующие паттерны (холодный/теплый/горячий)
- Резервное копирование
- BigQuery: регулярные снимки таблиц; экспорт в GCS для хранения вне платформы, если требуется
- GCS: бакеты dual-region или multi-region для долговечности; включайте блокировку бакета (bucket lock) для соответствия требованиям WORM
- Базы данных: управляемое резервное копирование в Cloud SQL и Bigtable; тестируйте восстановление
- Мультирегиональность
- Размещайте вычислительные ресурсы и хранилище в одном мультирегионе, чтобы минимизировать исходящий трафик и задержки; избегайте межконтинентальных зависимостей, если они не требуются
- Ранбуки
- Документируйте процедуры отработки отказа, восстановления ключей, реагирования на инциденты с KMS, восстановления из экспортов и переназначения резервирований BigQuery
- Тестируйте аварийное восстановление (DR) с помощью учений (game days); отслеживайте время восстановления и обновляйте SLO
Практический сценарий
NovaRetail Analytics сотрудничает с несколькими брендами для ежедневного приема CSV-файлов с данными о транзакциях на общую аналитическую платформу. Файлы поступают в промежуточный бакет (landing bucket) в Cloud Storage и иногда содержат некорректно отформатированные строки. Платформа должна обеспечивать принцип минимальных привилегий, чтобы каждый клиент мог получить доступ только к своим данным, обнаруживать конфиденциальные поля и немедленно отправлять оповещения при добавлении строк в определенную таблицу аудита. Компании также необходимы средства контроля затрат и план восстановления.
Подход:
Изолировать тенантов и обеспечить принцип минимальных привилегий
- Создайте выделенный набор данных (dataset) BigQuery для каждого клиента (например, client_a_analytics). Предоставьте группе клиента только соответствующие роли для набора данных (bigquery.dataViewer, bigquery.jobUser) и ограничьте использование BigQuery API только для утвержденных пользователей через IAM и, если применимо, VPC-SC.
- Обоснование: Использование отдельного набора данных для каждого тенанта ограничивает радиус поражения и упрощает сложность политик на уровне строк. Ограничение привилегий на уровне набора данных по умолчанию предотвращает межтенантный доступ.
Управлять схемой, классификацией и маскированием
- Определите таксономию тегов политик в Data Catalog (public, internal, confidential, restricted) и шаблоны тегов для владельца, ответственного за данные (data steward) и RTO/RPO. Прикрепите теги политик к конфиденциальным столбцам (email, card_suffix) в наборе данных каждого клиента. Примените политики маскирования BigQuery для ограничения просмотра данных для непривилегированных ролей.
- Пример:
undefined
- Обоснование: Централизованные
← Машинное обучение · Все домены
Отработать эти вопросы → · Тесты на время на 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.
Сдайте экзамен →