Compartir a través de


Disponibilidad de características para Data API Builder

En estas tablas se enumeran las características disponibles en Data API Builder (DAB).

Versión de la base de datos

Database Abreviatura Min. Versión
SQL Server MSSQL Versión 2016
Azure SQL Database MSSQL N/A (PaaS)
Instancia Gestionada de Azure SQL MSSQL N/A (PaaS)
SQL Server en máquinas virtuales de Azure MSSQL Versión 2016
SQL Server habilitado para Arc MSSQL Versión 2016
Base de datos SQL en Fabric MSSQL N/A (PaaS)
Azure Cosmos DB para NoSQL COSMOSDB N/A (PaaS)
PostgreSQL PGSQL Versión 11
Servidor flexible de base de datos de Azure para PostgreSQL PGSQL Versión 11
MySQL MySQL Versión 8
Azure Database for MySQL: servidor flexible MySQL Versión 5.7
Azure Synapse Analytics (grupo de SQL dedicado) DWSQL¹ N/A (PaaS)

Niveles de aislamiento de transacciones predeterminados

Data API Builder usa los siguientes niveles de aislamiento de transacciones predeterminados.

Tipo de base de datos Nivel de aislamiento Información adicional
Microsoft SQL Lectura confirmada Azure SQL
PostgreSQL Lectura confirmada PostgreSQL
MySQL Lectura repetible MySQL

Entornos de nube y hospedaje

Data API Builder se ejecuta en cualquier entorno con compatibilidad con contenedores. A continuación se muestran los destinos comunes de implementación en la nube:

Medio ambiente Compatible
Microsoft Azure ✅ Sí
Amazon Web Services (AWS) ✅ Sí
Plataforma de la Nube de Google (GCP) ✅ Sí
Cualquier otro proveedor de nube ✅ Sí
Local ✅ Sí

GraphQL

Feature MSSQL Cosmos PGSQL MySQL DWSQL¹
Paginación ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Throttling ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Filtros ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Agregación ✅ Sí ✖️ No ✖️ No ✖️ No ✅ Sí
Ordenación ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
Selección ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Tipo de consulta ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Tipo de mutación ✅ Sí ⚠️ Parcial ✅ Sí ✅ Sí ✅ Sí
Multi-Mutation ✅ Sí ✖️ No ✖️ No ✖️ No ✖️ No
GroupBy avanzado ✅ Sí ✖️ No ✖️ No ✖️ No ✅ Sí
Opciones avanzadas ✅ Sí ✖️ No ✖️ No ✖️ No ✅ Sí
Generación de esquemas ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Atributo de esquema (@model) ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
Atributo de esquema (@authorize) ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
Esquema proporcionado por el usuario ✖️ No ✅ Sí ✖️ No ✖️ No ✖️ No
Subscription ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
Nitro ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Encabezados de caché ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
Caché de nivel 1: memoria ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
Caché de nivel 2: Redis ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí

Navegación de relaciones de GraphQL

Feature MSSQL Cosmos PGSQL MySQL DWSQL¹
One-To-Many /Query ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
One-To-Many / Mutación ✅ Sí ✖️ No ✖️ No ✖️ No ✅ Sí
Many-To-Many /Query ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
Many-To-Many / Mutación ✅ Sí ✖️ No ✖️ No ✖️ No ✅ Sí
Relaciones entre orígenes ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
Combinaciones entre orígenes ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No

REST

Feature MSSQL Cosmos² PGSQL MySQL DWSQL¹
PUT ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
POST ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
PATCH ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
DELETE ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
GET ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
Paginación ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
OData-like $Select ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
OData-like $Filter ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
OData-like $Count ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
OData-like $OrderBy ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
OData-like $First ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
$After (Paginación de cursores) ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
Documento de OpenAPI ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
Interfaz de usuario de Swagger ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
OpenAPI compatible con permisos ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
Rutas avanzadas de REST ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
PUT y PATCH sin claves ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
Encabezados de caché ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
Caché de nivel 1: memoria ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
Caché de nivel 2: Redis ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
Carga lista para POCO ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
OpenAPIReference ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No

Objetos de base de datos admitidos

Feature MSSQL Cosmos PGSQL MySQL DWSQL¹
Tables ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
Views ✅ Sí ✖️ No ✅ Sí ✖️ No ✅ Sí
Procedimientos almacenados ✅ Sí ✖️ No ✖️ No ✖️ No ✅ Sí
Parámetros de proceso ✅ Sí ✖️ No ✖️ No ✖️ No ✅ Sí
Functions ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
Collections ✖️ No ✅ Sí ✖️ No ✖️ No ✖️ No
Asignación de campos ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí

Permisos de entidad

Feature MSSQL Cosmos PGSQL MySQL DWSQL¹
Create ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Read ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Update ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Delete ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Execute ✅ Sí ✖️ No ✖️ No ✖️ No ✅ Sí
Incluir campos ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Excluir campos ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí

Directiva de base de datos

Feature MSSQL Cosmos PGSQL MySQL DWSQL¹
Create ✅ Sí ✖️ No ✖️ No ✖️ No ✅ Sí
Read ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
Update ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
Delete ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
Execute ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
Directivas deSingle-Table ✅ Sí ✖️ No ✖️ No ✖️ No ✅ Sí
Directivas de varias tablas ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
Directiva de solicitud ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No

Características de autenticación

Feature MSSQL Cosmos PGSQL MySQL DWSQL¹
UAMI (Entra ID)⁴ ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
SAMI (Entra ID)⁴ ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Azure EasyAuth ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
En nombre de (OBO) ✅ Sí ✖️ No ✖️ No ✖️ No ✖️ No
Proveedor no autenticado ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Herencia de roles ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Seguridad de clave de API ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No

Otras características

Feature MSSQL Cosmos PGSQL MySQL DWSQL¹
Compatibilidad nativa con JSON ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
Compatibilidad con XML nativo ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
Compatibilidad con vectores nativos ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
Configuración automática ✅ Sí ✖️ No ✖️ No ✖️ No ✖️ No
Compresión de respuesta HTTP ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Application Insights ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Log Analytics ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Registro de archivos ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Contexto de sesión ✅ Sí ✖️ No ✖️ No ✖️ No ✖️ No
Varios orígenes de datos ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Combinación entre orígenes ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
OpenTelemetry ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Puntos de conexión de mantenimiento ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Niveles de registro personalizados ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
.NET Aspire ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
MCP³ ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí

Servidor MCP

Nota:

Las características del servidor MCP requieren data API Builder versión 1.7 o posterior.

Feature MSSQL Cosmos PGSQL MySQL DWSQL¹
DML-tool: CREATE ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
DML-tool: READ ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
DML-tool: UPDATE ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
DML-tool: DELETE ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
DML-tool: EXECUTE ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
DML-tool: DESCRIBE ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Procedimiento almacenado como herramienta ✅ Sí ✖️ No ✖️ No ✖️ No ✅ Sí
Herramientas de MCP personalizadas ✅ Sí ✖️ No ✖️ No ✖️ No ✅ Sí
Instrucciones del servidor ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Metadatos de objeto ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Metadatos de campo ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Metadatos de parámetros ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
READ: Paginación ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
READ: $Select ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
READ: $Filter ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
READ: $Count ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
READ: $OrderBy ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
READ: $First ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí
READ: $After ✅ Sí ✖️ No ✅ Sí ✅ Sí ✅ Sí

Plataformas de orquestación de contenedores

Data API Builder se ejecuta en cualquier plataforma de orquestación o entorno de ejecución de contenedor. Entre las plataformas comunes se incluyen:

Plataforma Compatible
Azure Container Apps (ACA) ✅ Sí
Azure Container Instances (ACI) ✅ Sí
Azure Kubernetes Service (AKS) ✅ Sí
AWS Elastic Container Service (ECS) ✅ Sí
AWS Elastic Kubernetes Service (EKS) ✅ Sí
Google Kubernetes Engine (GKE) ✅ Sí
Kubernetes (cualquier distribución) ✅ Sí
Docker ✅ Sí
Cualquier otro entorno de ejecución de contenedor ✅ Sí

Servicios de implementación de Azure

Feature MSSQL Cosmos PGSQL MySQL DWSQL¹
Azure Container Apps ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Azure Container Instances ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Azure Kubernetes Service ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Azure Web App for Containers ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Azure Red Hat OpenShift ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Azure Spring Apps ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Azure Service Fabric ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí
Máquina virtual de Azure ✅ Sí ✅ Sí ✅ Sí ✅ Sí ✅ Sí

Tipos de datos no admitidos

Data API Builder no admite algunos tipos de datos para cada plataforma de base de datos. Estas limitaciones suelen deberse a restricciones de serialización o a la falta de compatibilidad nativa en el controlador de base de datos subyacente.

Microsoft SQL

Tipo de dato Description
geography Datos geoespaciales que representan la superficie de la Tierra.
geometry Datos espaciales planar mediante coordenadas cartesianas.
hierarchyid Administración jerárquica de datos.
json Datos con formato JSON.
rowversion Control de versiones de fila para el control de simultaneidad.
sql_variant Valores de varios tipos de datos compatibles con SQL Server.
vector Datos vectoriales.
xml Datos con formato XML.

PostgreSQL

Tipo de dato Description
bytea Almacenamiento de cadenas binarias.
date Fechas del calendario (año, mes, día).
smalldatetime Almacenamiento de fecha y hora menos precisos.
datetime2 No nativo; Normalmente se controla mediante timestamp.
timestamptz Fechas y horas con zona horaria.
time Hora del día sin fecha.
localtime Hora actual basada en el reloj del sistema.

MySQL

Tipo de dato Description
UUID Identificadores únicos universalmente.
DATE Fechas del calendario.
SMALLDATETIME Almacenamiento de fecha y hora menos precisos.
DATETIME2 No nativo; Normalmente se controla mediante datetime.
DATETIMEOFFSET Fechas y horas con zona horaria.
TIME Hora del día sin fecha.
LOCALTIME Hora actual basada en el reloj del sistema.

Azure Cosmos DB para NoSQL

Azure Cosmos DB para NoSQL es independiente del esquema, por lo que las restricciones de tipos de datos no se aplican de la misma manera que las bases de datos relacionales.

Footnotes

¹ DWSQL refleja la compatibilidad solo con el grupo de SQL dedicado. No se admite el grupo de SQL sin servidor.

² Cosmos se admite en DAB a través de GraphQL. DAB no genera puntos de conexión REST para Cosmos porque la API para NoSQL proporciona una API REST nativa. Para más información, consulte Azure Cosmos DB: Referencia de la API REST.

³ MCP (Protocolo de contexto de modelo) es una funcionalidad de nivel de punto de conexión, no específica de la base de datos.

⁴ Compatibilidad con identidades administradas usa Azure DefaultAzureCredential, que admite identidades administradas de System-Assigned (SAMI) y User-Assigned (UAMI). UAMI requiere establecer la variable de AZURE_CLIENT_ID entorno.

⚠️ Parcial para las mutaciones de Cosmos DB significa que se admiten operaciones básicas de creación, actualización y eliminación, pero no todos los tipos de mutación (como la mutación múltiple) están disponibles.