Какие облачные платформы использовали: AWS, GCP, Azure?
В современной практике Data Engineering и разработки распределённых систем облачные платформы играют ключевую роль. Я использовал все три крупнейшие облачные платформы — Amazon Web Services (AWS), Google Cloud Platform (GCP) и Microsoft Azure — в разных проектах, в зависимости от требований к инфраструктуре, бюджету, безопасности и удобству интеграции.
Amazon Web Services (AWS)
AWS — одна из самых зрелых и широко используемых облачных платформ. Ниже представлены наиболее часто используемые сервисы и подходы в рамках Data Engineering:
Хранение данных
-
S3 (Simple Storage Service) — основной дата-лейк, где хранили сырые, промежуточные и очищенные данные (в формате CSV, Parquet, JSON). Использовали версионирование, lifecycle policies и server-side encryption (SSE).
-
Amazon Redshift — DWH для BI и аналитики. Использовали COPY-загрузку из S3 и Spectrum для внешнего чтения.
-
Glue Catalog — метаданные для S3 и интеграция с Athena, Glue, EMR.
Обработка и ETL
-
AWS Glue — serverless ETL-платформа на базе Spark. Писали пайплайны на PySpark и Spark SQL, настраивали job trigger, использовали DynamicFrame.
-
Amazon EMR — для более тяжёлых Spark-задач (batch/streaming).
-
Lambda — для serverless триггеров, трансформаций в реальном времени.
-
Athena — SQL over S3, часто применяли для аудита и быстрой диагностики.
Интеграции и оркестрация
-
Step Functions — визуальное оркестрирование Glue, Lambda, Batch.
-
CloudWatch — мониторинг, алерты, логирование пайплайнов.
-
EventBridge (ранее CloudWatch Events) — для триггеров и планирования.
Безопасность и доступ
-
IAM — строгий контроль доступа, роли для S3/Glue/Lambda.
-
KMS — шифрование ключей доступа к данным.
Microsoft Azure
Azure часто выбирался в крупных enterprise-проектах, особенно в банках и госструктурах. Архитектура построения пайплайнов на Azure немного отличается по стилю и сервисам от AWS.
Хранилища
-
Azure Data Lake Storage Gen2 — основное место хранения, использовали hierarchical namespace, soft delete, ACLs.
-
Azure SQL Database — для хранения метаданных и промежуточной нормализованной информации.
-
Synapse Analytics (ранее SQL DW) — DWH для аналитических задач и Power BI.
ETL/ELT
-
Azure Data Factory (ADF) — основной инструмент оркестрации и ETL. Использовали Data Flow для трансформаций, Linked Services и Trigger.
-
Azure Databricks — Spark-платформа, часто использовалась для подготовки больших объёмов данных перед загрузкой в Synapse.
-
Azure Functions — serverless для лёгких преобразований и API-интеграций.
BI и аналитика
-
Power BI Embedded — для создания отчётов поверх Synapse и ADLS.
-
Log Analytics + Monitor — отслеживание состояния пайплайнов, логов, аудита.
Безопасность
-
Azure Key Vault — управление секретами и шифрованием.
-
RBAC + Managed Identities — безопасный доступ между сервисами.
Google Cloud Platform (GCP)
GCP активно использовался в проектах, где важны performance, удобство BigQuery и tight integration с ML/AI-инструментами.
Хранение и DWH
-
Google Cloud Storage (GCS) — основное хранилище для сырья и архивов.
-
BigQuery — аналитическая база данных, в которой реализовывали практически весь аналитический слой. Использовали partitioned и clustered tables, materialized views.
-
Data Catalog — метаданные и классификация активов.
Обработка
-
Dataflow (Apache Beam) — стриминг- и батч-процессы для трансформаций. Удобно для инкрементальных и windowed операций.
-
Cloud Functions — serverless интеграции (например, между Pub/Sub и BigQuery).
-
Dataproc — Spark/MapReduce кластер, использовался редко, когда требовалась гибкая настройка.
Интеграции и очереди
-
Pub/Sub — высоконагруженные стриминговые пайплайны.
-
Composer (на базе Apache Airflow) — для оркестрации DAG-ов, особенно при сложных зависимостях.
Безопасность
-
IAM + Service Accounts — разграничение доступа.
-
VPC Service Controls — изоляция Data Lake от интернета.
-
KMS + Secret Manager — для управления ключами и конфиденциальной информацией.
Сравнение по сценариям
Задача | AWS | Azure | GCP |
---|---|---|---|
Data Lake | S3 + Glue Catalog | ADLS Gen2 | GCS + Data Catalog |
--- | --- | --- | --- |
DWH | Redshift | Synapse | BigQuery |
--- | --- | --- | --- |
Serverless ETL | Glue, Lambda | ADF, Azure Functions | Dataflow, Cloud Functions |
--- | --- | --- | --- |
Оркестрация | Step Functions, MWAA | ADF, Azure Logic Apps | Composer (Airflow) |
--- | --- | --- | --- |
ML/AI-интеграции | SageMaker | Azure ML | Vertex AI |
--- | --- | --- | --- |
Стоимость (в среднем за compute) | Средняя | Ниже средней | Низкая (особенно BigQuery) |
--- | --- | --- | --- |
Developer UX | Консервативный | Интеграция с MS-продуктами | Простота и скорость |
--- | --- | --- | --- |
Опыт использования всех трёх платформ позволяет гибко выбирать инфраструктуру в зависимости от контекста: требования к скорости разработки, стоимости, масштабу, степени готовности команды и требуемой интеграции с ML или BI-инструментами.