Adaptador de Azure Blob Storage en BizTalk Server
A partir de BizTalk Server 2020 y versiones posteriores, puede enviar y recibir mensajes entre BizTalk Server y Azure Blob Storage.
Azure Blob Storage es la solución de almacenamiento de objetos de Microsoft para la nube, que está optimizada para almacenar grandes cantidades de datos no estructurados. Para más información, consulte ¿Qué es Azure Blob Storage?.
Requisitos previos
Cree una cuenta de Azure Blob Storage con un contenedor.
Envío de mensajes a Azure Blob Storage
En la consola de administración de BizTalk Server, haga clic con el botón derecho en Send PortsNewStatic One-way send port (Enviar puertos > de envío unidireccionales estáticos).>
Crear un puerto de envío proporciona algunas instrucciones.
Escriba un nombre. En Transporte, establezca El tipo en AzureBlobStorage y seleccione Configurar.
Configure las propiedades de la cuenta de Azure .
Sugerencia
La ventana de configuración del adaptador puede rellenar automáticamente los recursos de Azure después de iniciar sesión en la suscripción de Azure. Esto facilita la configuración. El inicio de sesión en la suscripción de Azure es óptimo.
- Inicio de sesión: inicie sesión en su cuenta de Azure.
- Suscripción: seleccione la suscripción que tiene la cuenta de Azure Storage.
- Grupo de recursos: seleccione el grupo de recursos que tiene la cuenta de Almacenamiento de Azure.
Configure las propiedades Generales :
Autenticación de almacenamiento: seleccione un método de autenticación:
- La firma de acceso compartido está seleccionada de forma predeterminada. Debe escribir el cadena de conexión firma de acceso compartido en el campo Cadena de conexión.
- Si usa claves de acceso, se rellena una colección de cuentas de almacenamiento en la lista desplegable Cuenta . Una vez seleccionada la cuenta de almacenamiento, el campo Cadena de conexión se rellena automáticamente con la clave de acceso principal, también conocida como key1.
Los vínculos siguientes son buenos recursos para ayudarle a decidir qué método de autenticación es adecuado para su escenario:
Nombre del contenedor de blobs: seleccione el nombre del contenedor de blobs en la lista desplegable. La lista se rellena automáticamente después de escribir la cadena de conexión.
Nombre del blob: escriba el nombre del blob que va a usar el adaptador. Las macros se pueden usar en el nombre del blob. Para ver las macros disponibles, consulte Uso de macros en nombres de archivo.
Espacio de nombres para metadatos de blobs: escriba el espacio de nombres como filtro. Las propiedades de contexto del mensaje se escriben en los metadatos del blob si el espacio de nombres de la propiedad coincide con este campo.
Cuando haya terminado, las propiedades son similares a las siguientes:
Configure las propiedades avanzadas :
- Tipo de blob: escriba el tipo de blob que se va a usar. Para más información, consulte Tipos de blobs.
- Modo de escritura: use esta configuración para especificar el comportamiento del adaptador cuando el nombre de blob especificado ya existe.
- Crear nuevo: el adaptador siempre intenta crear un nuevo blob. Si ya existe un blob con el mismo nombre, el mensaje de BizTalk se suspende.
- Sobrescribir: el adaptador sobrescribe si el nombre del blob ya existe. Los metadatos también se sobrescriben.
- Append: el adaptador anexa el cuerpo del mensaje a un blob existente si ya existe un blob. Los metadatos no cambian.
Seleccione Aceptar para guardar los cambios.
Prueba del puerto de envío
Puede usar un puerto de recepción de archivos simple y una ubicación para enviar mensajes a Azure Blob Storage.
Con el adaptador de archivo, cree un puerto de recepción denominado FileReceivePort. Dentro de la ubicación de recepción, establezca la carpeta
C:\Temp\In\\
Receive en y establezca la máscara\*.xml
de archivo en .En las propiedades del puerto de envío de Azure Blob Storage, establezca Filtros en
BTS.ReceivePortName == FileReceivePort
.Pegue lo siguiente en un editor de texto y guarde el archivo como AzureBlobStorageMessage.xml. Este archivo es el mensaje de ejemplo.
<Data> <DataID>DataID_0</DataID> <DataDetails>DataDetails_0</DataDetails> </Data>
Inicie la ubicación de recepción del archivo y el puerto de envío de Azure Blob Storage.
Copie el mensaje de ejemploAzureBlobStorageMessage.xml en la carpeta receive, como
C:\Temp\In\
. El puerto de envío envía el archivo XML al almacenamiento de blobs de Azure. Para confirmar, examine el contenedor de Almacenamiento de Azure y vea el archivo recién creado o actualizado.
Recepción de mensajes de Azure Blob Storage
En la consola de administración de BizTalk Server, haga clic con el botón derecho en Puertos de> recepciónnuevo>puerto de recepción unidireccional.
Crear un puerto de recepción proporciona algunas instrucciones.
Escriba un nombre y seleccione Ubicaciones de recepción.
Seleccione Nuevo y Asigne el nombre a la ubicación de recepción. En Transporte, seleccione AzureBlobStorage en la lista desplegable Tipo . Seleccione Configurar.
Configure las propiedades de la cuenta de Azure :
Sugerencia
Similiar al adaptador de envío, esto es opcional.
- Inicio de sesión: inicie sesión en su cuenta de Azure.
- Suscripción: seleccione la suscripción que tiene la cuenta de Azure Storage.
- Grupo de recursos: seleccione el grupo de recursos que tiene la cuenta de Almacenamiento de Azure.
Configure las propiedades Generales :
Autenticación de almacenamiento: seleccione un método de autenticación:
- La firma de acceso compartido está seleccionada de forma predeterminada. Debe escribir el cadena de conexión firma de acceso compartido en el campo Cadena de conexión.
- Si usa claves de acceso, se rellena una colección de cuentas de almacenamiento en la lista desplegable Cuenta . Una vez seleccionada la cuenta de almacenamiento, el campo Cadena de conexión se rellena automáticamente con la clave de acceso principal, también conocida como key1.
Los vínculos siguientes son buenos recursos para ayudarle a decidir cuál es el adecuado para su escenario:
Nombre del contenedor de blobs: seleccione el nombre del contenedor de blobs en la lista desplegable. La lista se rellena automáticamente después de escribir la cadena de conexión.
Prefijo de nombre de blob: escriba un prefijo cuando corresponda. Por ejemplo, si se usa "order/" para el prefijo de nombre de blob, la ubicación de recepción solo recoge los archivos en la carpeta "order".
Espacio de nombres para metadatos de blob: escriba un espacio de nombres para que el adaptador cree propiedades de contexto a partir de metadatos de blobs personalizados.
Promover propiedades de metadatos: elija si se promueven o no metadatos de blobs personalizados.
Nota
De forma predeterminada, todas las propiedades de blob estándar, como Uri de blob, Name y BlobType, se establecen como propiedades de contexto del mensaje de BizTalk con el
http://schemas.microsoft.com/BizTalk/Adapter/AzureStorage-properties
espacio de nombres .Cuando haya terminado, las propiedades son similares a las siguientes:
Configure las propiedades avanzadas :
- Intervalo de sondeo: escriba el intervalo de sondeo.
- Número máximo de mensajes por lote: escriba el número de mensajes que el adaptador realiza al enviar a BizTalk.
- Descargas paralelas: escriba el número máximo de blobs que se pueden descargar en paralelo.
- Umbral de error: escriba el umbral de error. Cuando la ubicación de recepción alcanza este número de errores, la ubicación de recepción está deshabilitada.
Seleccione Aceptar para guardar los cambios.
Prueba de la configuración de recepción
Puede usar un puerto de envío de archivos sencillo para recibir mensajes de Azure Blob Storage.
- Cree un puerto de envío mediante el adaptador de archivo. Dentro de las propiedades del puerto de envío, establezca la carpeta
C:\Temp\Out\\
Destino en y establezca el nombre%MessageID%.xml
de archivo y en . - En las propiedades del puerto de envío de archivos, establezca Filtros en
BTS.ReceivePortName == BlobReceivePort
. - Cree un puerto de recepción denominado BlobReceivePort y cree una ubicación de recepción de Azure Blob Storage. Inícielo.
- Cargue un archivo en el contenedor de blobs en el Azure Portal. Preste atención al prefijo coincidente que configuró en el adaptador. Busque mensajes en la carpeta de destino (c:\temp\out).
Importante
El adaptador de recepción de Azure Blob Storage elimina el blob después de enviarlo a la base de datos de Cuadro de mensajes de BizTalk.
Alta disponibilidad del adaptador de Azure Blob Storage
El adaptador de recepción de Azure Blob Storage admite alta disponibilidad. Puede agregar varias instancias de host en el mismo controlador de recepción del adaptador de Azure Blob Storage para recibir desde el mismo contenedor de blobs simultáneamente. El arrendamiento de blobs se usa como bloqueo para evitar que varias instancias de host reciban el mismo blob. En consecuencia:
- El adaptador de Azure Blob Storage no recibirá blobs concedidos por otros procesos.
- Los blobs recibidos por el adaptador de Azure Blob Storage no se pueden actualizar mientras están en un estado concedido.
Para más información sobre la concesión de blobs de Azure, consulte simultaneidad pesimista para blobs.
El adaptador de envío de Azure Blob Storage, como la mayoría de los adaptadores de envío, proporciona alta disponibilidad para el host de envío al tener varias instancias de host en el mismo host de envío.