Última revisión: mayo de 2026
Crea los servicios de AWS del examen DP-700 con Terraform puro: bloque a bloque, cada uno vinculado a un dominio del examen. El mismo código funciona en OpenTofu.
Al final de este laboratorio, habrá aprovisionado, con Terraform puro, la infraestructura de ingesta de streaming que los Ingenieros de Datos de Microsoft Fabric utilizan: un espacio de nombres de Event Hubs + un centro de eventos como fuente de streaming, una cuenta de almacenamiento ADLS Gen2 con contenedores de medallón de bronce/plata/oro, una capacidad Fabric F2 para el espacio de trabajo de Fabric, y Log Analytics para la observabilidad. Los Event Streams + Lakehouses de Fabric se crean dentro del espacio de trabajo a través del portal de Fabric, apuntando a esta infraestructura.
Pegue los fragmentos en un único main.tf, ejecute terraform init y luego terraform apply paso a paso.
>= 1.5 u OpenTofu >= 1.6.az login).Fabric + Event Hubs combinados ~275 $/mes mientras están en ejecución. Se aplica el mismo antipatrón de DP-600: la capacidad se factura 24/7; destruya o pause rápidamente.
Inicio estándar de Azure.
terraform {
required_version = ">= 1.5"
required_providers {
azurerm = { source = "hashicorp/azurerm", version = "~> 4.0" }
random = { source = "hashicorp/random", version = "~> 3.6" }
}
}
provider "azurerm" {
features {}
}
resource "random_id" "suffix" {
byte_length = 3
}
data "azurerm_client_config" "current" {}
locals {
tags = {
Project = "certlabpro-dp-700"
ManagedBy = "terraform"
}
}
resource "azurerm_resource_group" "main" {
name = "certlabpro-dp-700-rg"
location = "eastus"
tags = local.tags
}Event Hubs es el servicio de ingesta de eventos de alto rendimiento de Azure, la fuente canónica para transmitir datos a Fabric Event Streams. El dominio Implementar y gestionar la ingesta de datos de DP-700 prueba directamente esta combinación: los eventos en tiempo real llegan a Event Hubs, Fabric Event Streams se suscribe y los enruta a una base de datos Lakehouse o KQL, y las consultas posteriores ven los datos en segundos.
Utilizamos el nivel Básico (el más económico, con una sola unidad de rendimiento) con una retención de 1 día. La pregunta del examen sobre la compensación Estándar vs. Premium trata sobre las características de captura a almacenamiento (Captura escribe eventos en ADLS automáticamente) y una retención más larga; el nivel Básico no las tiene, pero es la opción económica para el laboratorio.
resource "azurerm_eventhub_namespace" "main" {
name = "ehns-dp700-${random_id.suffix.hex}"
resource_group_name = azurerm_resource_group.main.name
location = azurerm_resource_group.main.location
sku = "Basic"
capacity = 1
tags = local.tags
}
resource "azurerm_eventhub" "stream" {
name = "ingest"
namespace_id = azurerm_eventhub_namespace.main.id
partition_count = 2
message_retention = 1
}La arquitectura de medallón (bronce / plata / oro) es el patrón de modelado de datos de referencia de DP-700 Implementar y gestionar una solución analítica: datos brutos ingeridos en bronze/, limpiados y validados en silver/, y agregados para el negocio en gold/. Las tablas de Fabric Lakehouse residen sobre esta misma disposición.
Provisionamos una cuenta de almacenamiento ADLS Gen2 (espacio de nombres jerárquico = activado, necesario para las tablas Delta Lake) con las tres capas de contenedores. Los accesos directos de Fabric Lakehouse pueden apuntar directamente a esta cuenta de almacenamiento, por lo que Fabric lee/escribe aquí sin copiar datos en OneLake.
resource "azurerm_storage_account" "lake" {
name = "dp700lake${random_id.suffix.hex}"
resource_group_name = azurerm_resource_group.main.name
location = azurerm_resource_group.main.location
account_tier = "Standard"
account_replication_type = "LRS"
account_kind = "StorageV2"
is_hns_enabled = true
https_traffic_only_enabled = true
min_tls_version = "TLS1_2"
allow_nested_items_to_be_public = false
tags = local.tags
}
resource "azurerm_storage_container" "bronze" {
name = "bronze"
storage_account_id = azurerm_storage_account.lake.id
container_access_type = "private"
}
resource "azurerm_storage_container" "silver" {
name = "silver"
storage_account_id = azurerm_storage_account.lake.id
container_access_type = "private"
}
resource "azurerm_storage_container" "gold" {
name = "gold"
storage_account_id = azurerm_storage_account.lake.id
container_access_type = "private"
}El mismo primitivo de capacidad de Fabric que DP-600: el SKU F2 es el tamaño más pequeño y amigable para desarrolladores. Sin embargo, el enfoque de DP-700 es diferente: donde DP-600 se centró en las cargas de trabajo de modelado analítico, DP-700 se centra en la parte de ingesta de datos. Eventstreams, los notebooks de Spark y las Data Pipelines se ejecutan dentro de esta capacidad.
Log Analytics recibe los diagnósticos de capacidad de Fabric (limitación, duración de la consulta); el dominio Mantener y optimizar de DP-700 se apoya en esto para la respuesta a incidentes cuando una pipeline de streaming comienza a perder eventos.
Con la capacidad implementada, la infraestructura completa de streaming de DP-700 toma forma: Event Hubs → Fabric Event Stream → tabla Lakehouse en la cuenta de almacenamiento ADLS Gen2. El trabajo de la aplicación (crear el Event Stream, definir el Lakehouse, escribir transformaciones) se realiza en el portal de Fabric.
resource "azurerm_fabric_capacity" "main" {
name = "fab-dp700-${random_id.suffix.hex}"
resource_group_name = azurerm_resource_group.main.name
location = azurerm_resource_group.main.location
administration_members = [
data.azurerm_client_config.current.object_id,
]
sku {
name = "F2"
tier = "Fabric"
}
tags = local.tags
}
resource "azurerm_log_analytics_workspace" "main" {
name = "log-dp700"
resource_group_name = azurerm_resource_group.main.name
location = azurerm_resource_group.main.location
sku = "PerGB2018"
retention_in_days = 30
tags = local.tags
}
resource "azurerm_monitor_diagnostic_setting" "fabric" {
name = "diag"
target_resource_id = azurerm_fabric_capacity.main.id
log_analytics_workspace_id = azurerm_log_analytics_workspace.main.id
metric {
category = "AllMetrics"
enabled = true
}
}
resource "azurerm_monitor_diagnostic_setting" "event_hubs" {
name = "diag"
target_resource_id = azurerm_eventhub_namespace.main.id
log_analytics_workspace_id = azurerm_log_analytics_workspace.main.id
enabled_log {
category_group = "allLogs"
}
metric {
category = "AllMetrics"
enabled = true
}
}terraform destroy elimina todo. La capacidad Fabric F2 es el elemento principal (~262 $/mes). Pause a través del portal de Azure si desea mantener el recurso pero detener la facturación. Event Hubs Básico cuesta ~11 $/mes; se puede destruir de forma independiente si desea mantener Fabric.
DP-700 cubre más superficies de streaming + batch que este laboratorio no puede abarcar: los propios Fabric Event Streams (sin soporte de Terraform hoy; se crean a través del portal de Fabric), bases de datos KQL / Eventhouses, Data Pipelines (Data Factory dentro de Fabric), notebooks de Spark, paneles de Real-Time Intelligence y la integración de modelos semánticos de Power BI.
Nos ceñimos a la infraestructura a la que se conectan Fabric Eventstreams + Lakehouses: Event Hubs como origen, ADLS Gen2 como destino y la capacidad de Fabric como cómputo. Una vez que aprovisiona esta base, cada carga de trabajo de DP-700 (Stream → Lakehouse, Stream → KQL, Pipeline → Warehouse) es un ejercicio en el portal de Fabric sobre esta estructura de Terraform.
Para una cobertura servicio por servicio, consulte las secciones Buscar y Editorial de esta página de certificación.