Saltar al contenido

Desarrolladores

Cargas en Azure Synapse

Cómo llegan los datos semanales a tablas de tu grupo de SQL dedicado de Azure Synapse como la aplicación de Entra de MercaMap, sin clave, cada semana sustituida de una vez; qué configurar, el coste y cada fallo.

En esta página

Una conexión de almacenamiento puede cargar los datos semanales en tablas de un grupo de SQL dedicado de tu área de trabajo de Azure Synapse. No nos das ninguna clave y no guardamos ninguna tuya: entramos como la aplicación de Microsoft Entra de MercaMap, y solo en el inquilino que un administrador tuyo verificó en Conecta. Las tablas, sus columnas y cómo se sustituye cada semana de una vez son las de las cargas en tu almacén de datos: una tabla por conjunto de datos, mercamap_ y su nombre, en el esquema que indiques, repartida por turnos e indexada por week. No se ofrece un grupo de SQL sin servidor.

Cómo se carga una semana

La semana de cada conjunto de datos es un paso. Sus filas van como archivos CSV comprimidos con gzip a un contenedor de tu cuenta de almacenamiento, en mercamap/_loads/ dentro del prefijo que indiques, en una carpeta propia del paso. Después, en el grupo, se crea la tabla del conjunto si falta, COPY INTO copia los archivos en una tabla de paso nuestra, una transacción borra las filas de esa semana e inserta las de la tabla de paso, y esta se elimina. Una transacción que falla deja la semana como estaba. Luego se borra la carpeta del paso.

Un grupo dedicado lee de forma predeterminada filas sin confirmar: una consulta durante la sustitución podría ver la mitad. Para que quien lea vea la semana anterior o la nueva, activa una vez las lecturas de instantánea del grupo, conectado a master:

ALTER DATABASE [mercamap_pool] SET READ_COMMITTED_SNAPSHOT ON;

Una semana sin filas solo borra sus filas. Creamos nuestras tablas en tu esquema y no tocamos nada más de él; una tabla de paso que dejó una carga cortada la elimina un envío posterior. Una regla de ciclo de vida que borre los blobs de mercamap/_loads/ al cabo de un día quita cualquier archivo que una carga cortada no pudiera borrar.

Configurarlo

  1. Conecta: abre Conectores y entra en Azure Synapse. Indica el nombre del área de trabajo o su punto de conexión SQL dedicado, el del grupo y el esquema, y, para los archivos de paso, una cuenta de almacenamiento con espacio de nombres jerárquico, uno de sus contenedores y un prefijo opcional.
  2. Guardada la conexión, en Conecta, pulsa Usar este inquilino si tu cuenta ya ha verificado uno en otra conexión. Si no, un administrador de tu inquilino que pueda conceder consentimiento a aplicaciones (global, de roles con privilegios, de aplicaciones o de aplicaciones en la nube) inicia sesión con Microsoft con una cuenta profesional, ni de invitado ni personal: ese inquilino pasa a ser el de la conexión, y nuestra aplicación no llega a ningún otro. Se rechaza uno de otra cuenta de MercaMap, y el verificado sigue siendo de la tuya, aunque borres la conexión, hasta que lo libera nuestro soporte.
  3. Como administrador de ese inquilino, da tu consentimiento con el enlace: añade nuestra aplicación a tu inquilino.
  4. Da acceso, con Comprobar en cada punto: en Synapse Studio › Desarrollar › + › Script SQL, conectado al grupo como su administrador de Microsoft Entra, ejecuta el SQL de los puntos: crea el usuario de base de datos de nuestra aplicación con nuestro ID de aplicación (su SID, para que no estorbe otro objeto de tu inquilino llamado MercaMap, como un grupo), crea el esquema y concede al usuario CREATE TABLE, ADMINISTER DATABASE BULK OPERATIONS para COPY INTO, y ALTER, SELECT, INSERT y DELETE solo en el esquema. Los permisos solo van a un usuario cuyo sid sea el ID de nuestra aplicación: si antes se creó un usuario MercaMap para otra aplicación, el script no concede nada y se detiene; bórralo con DROP USER [MercaMap] y vuelve a ejecutarlo. Sáltate una línea cuyo usuario o esquema ya exista.
  5. Da a nuestra aplicación el rol «Colaborador de datos de Storage Blob» (Storage Blob Data Contributor) solo en el contenedor de paso, en su Control de acceso (IAM) o con el comando del punto. COPY INTO también lee los archivos como nuestra aplicación: el grupo no necesita una clave propia.
  6. Elige los datos y, en Prueba y activa, pulsa Probar la conexión: deja una fila de paso, crea una tabla propia, copia la fila, la borra y elimina la tabla, como los envíos semanales. Si sale bien, aparece Activar.
CREATE USER [MercaMap] WITH SID = 0x…, TYPE = E;
GRANT ALTER, SELECT, INSERT, DELETE ON SCHEMA::[mercamap] TO [MercaMap];

Si el firewall del área de trabajo o de la cuenta de almacenamiento solo admite direcciones de una lista, escríbenos antes: nuestras peticiones aún no salen de direcciones fijas.

Lo que cuesta

Las instrucciones se ejecutan en tu grupo y los archivos están en tu cuenta de almacenamiento: Azure los factura a tu suscripción (precios de Azure Synapse Analytics, precios de Data Lake Storage):

  • Cómputo: un grupo dedicado se factura por horas según su nivel de servicio mientras está en línea, trabaje o no, y nuestras cargas no añaden ningún cargo. Un grupo en pausa no cuesta cómputo ni admite cargas: el envío falla hasta que lo reanudes.
  • Almacenamiento: las filas que guardes, al precio del almacenamiento del grupo, que suma una semana de instantáneas incrementales: lo que borra cada sustitución se paga una semana más.
  • Paso: las escrituras de los archivos y las lecturas de COPY INTO, contadas por bloques y no por archivo (borrar es gratis), y el almacenamiento de los archivos unos minutos o, si la cuenta conserva los blobs borrados, como una creada en el portal, lo que dure su eliminación temporal, al precio de los datos activos.

Nuestras sesiones llevan el nombre de aplicación MercaMap: encuentras nuestras instrucciones en sys.dm_pdw_exec_requests por el app_name de sus sesiones en sys.dm_pdw_exec_sessions, que solo guardan las últimas filas y se vacían al pausar o escalar el grupo.

Cuando una carga falla

La conexión muestra su último fallo con nuestras palabras:

Último fallo Qué hacer
«Microsoft rechazó la aplicación de MercaMap en tu inquilino…» Da tu consentimiento con el enlace de Conecta, como administrador del inquilino
«nadie ha verificado todavía tu inquilino…» Que un administrador inicie sesión con Microsoft desde Conecta
«falta un permiso…» Ejecuta el SQL de Da acceso en el grupo, y da a nuestra aplicación su rol
«el área de trabajo, el grupo, el esquema o el contenedor de paso…» Revisa cada nombre, y crea el esquema y el contenedor
«una tabla nuestra se cambió…» Renombra esa tabla para conservar sus semanas; el próximo envío vuelve a crear la nuestra
«el grupo de SQL dedicado está en pausa…» Reanuda el grupo, y tenlo en línea cuando se publique la semana
«el grupo lo rechazó por su tamaño o por su registro» Libera espacio en el grupo, o amplíalo

Cada uno cuenta como un fallo de la conexión: tus administradores se enteran tras 3 intentos fallidos seguidos, y tras 10 se desactiva sola. «No respondió» es nuestro o de Microsoft (nuestra entrada, el grupo ocupado, una instrucción que tardó demasiado y se canceló), y nunca cuenta.

Siguientes pasos

Actualizado el 01/11/2026

¿Te ha servido este artículo?

No escribas datos personales ni claves. Guardamos las valoraciones 365 días, sin tu dirección IP ni nada sobre ti, y borramos correos, teléfonos, documentos de identidad, claves, códigos y enlaces.