Configuración de una fase de origen del punto de conexión HTTP en una canalización de procesador de datos
Importante
Operaciones de IoT de Azure, habilitado por Azure Arc, está actualmente en VERSIÓN PRELIMINAR. No se debería usar este software en versión preliminar en entornos de producción.
Tendrá que implementar una nueva instalación de Azure IoT Operations cuando esté disponible una versión disponible con carácter general, no podrá actualizar una instalación en versión preliminar.
Consulte Términos de uso complementarios para las versiones preliminares de Microsoft Azure para conocer los términos legales que se aplican a las características de Azure que se encuentran en la versión beta, en versión preliminar o que todavía no se han publicado para que estén disponibles con carácter general.
La fase de origen es la primera y necesaria en una canalización de procesador de datos. La fase de origen obtiene datos en la canalización de procesamiento de datos y los prepara para su posterior procesamiento. La fase de origen del punto de conexión HTTP permite leer datos de un punto de conexión HTTP en un intervalo definido por el usuario. La fase tiene un cuerpo de la solicitud opcional y recibe una respuesta del punto de conexión.
En la fase de origen, se definen:
- Detalles de conexión al punto de conexión HTTP.
- El intervalo en el que se llamará al punto de conexión HTTP. La fase espera una respuesta antes de restablecer el temporizador de intervalo.
- Una configuración de creación de particiones basada en los requisitos de procesamiento de datos específicos.
Requisitos previos
- Instancia implementada del procesador de datos que incluye el componente opcional del procesador de datos.
- Un punto de conexión HTTP con todos los datos sin procesar necesarios disponibles está operativa y es accesible.
Configuración del origen del punto de conexión HTTP
Para configurar el origen del punto de conexión HTTP:
- Proporcione los detalles del punto de conexión HTTP. Esta configuración incluye el método, la dirección URL y la carga de la solicitud que se vaya a usar.
- Especifique el método de autenticación. Actualmente se limita a la autenticación basada en nombre de usuario y contraseña, o la basada en encabezados.
En la tabla siguiente se describen los parámetros de configuración de origen del punto de conexión HTTP:
Campo | Tipo | Descripción | Necesario | Valor predeterminado | Ejemplo |
---|---|---|---|---|---|
Nombre | String | Un nombre visible para el cliente de la fase de origen. | Obligatorio | N/D | erp-endpoint |
Descripción | String | Una descripción visible para el cliente de la fase de origen. | Opcional | N/D | Enterprise application data |
Método | Enum | El método HTTP que se usará para las solicitudes. Uno de estos valores: GET o POST |
Opcional | GET |
GET |
Dirección URL | String | La dirección URL que se usará para las solicitudes. Se admiten tanto http como https . |
Obligatorio | N/D | https://contoso.com/some/url/path |
Autenticación | Tipo de autenticación | El método de autenticación para la solicitud HTTP. Uno de estos valores: None , Username/Password o Header . |
Opcional | NA |
Username/Password |
Nombre de usuario/contraseña y nombre de usuario | String | El nombre de usuario para la autenticación con nombre de usuario y contraseña. | Sí | N/D | myuser |
Nombre de usuario y contraseña > secreto | Referencia a la contraseña almacenada en Azure Key Vault. | Sí | Sí | AKV_USERNAME_PASSWORD |
|
Encabezado > Clave | String | Nombre de la clave para la autenticación basada en encabezados. | Sí | N/D | Authorization |
Encabezado > Valor | String | El nombre de la credencial en Azure Key Vault para la autenticación basada en encabezados. | Sí | N/D | AKV_PASSWORD |
Formato de datos | Formato | Formato de datos de los datos entrantes | Obligatorio | N/D | {"type": "json"} |
Solicitud de API > Cuerpo de solicitud | String | Cuerpo de la solicitud estática que se enviará con la solicitud HTTP. | Opcional | N/D | {"foo": "bar"} |
Solicitud de API > Encabezados | Pares clave-valor | Encabezados de solicitud estática que se enviarán con la solicitud HTTP. | Opcional | N/D | [{"key": {"type":"static", "value": "asset"}, "value": {"type": "static", "value": "asset-id-0"}} ] |
Intervalo de solicitud | Duration | Representación de la cadena del tiempo de espera antes de la siguiente llamada API. | Obligatorio | 10s |
24h |
Partitioning | Partitioning | Configuración de la creación de particiones para la fase de origen. | Obligatorio | N/D | Consulte Creación de particiones. |
Para más información sobre los secretos, consulte Administración de secretos para la implementación preliminar de Operaciones de IoT de Azure.
Selección del formato de datos
En una canalización de procesador de datos, el campo de formato de la fase de origen especifica cómo deserializar los datos entrantes. De forma predeterminada, la canalización del procesador de datos usa el raw
formato que significa que no convierte los datos entrantes. Para usar muchas características del procesador de datos, como Filter
o Enrich
fases de una canalización, debe deserializar los datos en la fase de entrada. Puede optar por deserializar los datos entrantes de JSON
, , MessagePack
jsonStream
, CBOR
, , CSV
o Protobuf
en un mensaje legible del procesador de datos para poder usar la funcionalidad completa del procesador de datos.
En las tablas siguientes se describen las distintas opciones de configuración de deserialización:
Campo | Descripción | Necesario | Valor predeterminado | Value |
---|---|---|---|---|
Formato de datos | El tipo del formato de datos. | Sí | Raw |
Raw JSON jsonStream MessagePack CBOR CSV Protobuf |
El campo Data Format
es obligatorio y su valor determina los demás campos obligatorios.
Para deserializar los mensajes de archivo .csv también debe especificar los siguientes campos:
Campo | Descripción | Obligatorio | Value | Ejemplo |
---|---|---|---|---|
Encabezado | Si los datos de archivo .csv incluyen una línea de encabezado. | Sí | Yes No |
No |
Nombre | Nombre de la columna en CSV | Sí | - | temp , asset |
Path | La ruta de acceso jq en el mensaje donde se agrega la información de columna. | No | - | La ruta de acceso jq predeterminada es el nombre de columna |
Tipo de datos | Tipo de datos de los datos de la columna y cómo se representa dentro de la canalización del procesador de datos. | No | String , Float , Integer , , Boolean , Bytes |
Opción predeterminada: String |
Para deserializar los mensajes Protobuf, también debe especificar los siguientes campos:
Campo | Descripción | Obligatorio | Value | Ejemplo |
---|---|---|---|---|
Descriptor | El descriptor codificado en base64 para la definición de Protobuf. | Sí | - | Zhf... |
Mensaje | El nombre del tipo de mensaje que se usa para dar formato a los datos. | Sí | - | pipeline |
Paquete | El nombre del paquete en el descriptor donde se define el tipo. | Sí | - | schedulerv1 |
Nota:
El procesador de datos solo admite un tipo de mensaje en cada archivo .proto .
Configuración de particiones
La creación de particiones en una canalización divide los datos entrantes en distintas particiones. La creación de particiones permite el paralelismo de datos en la canalización, lo que puede mejorar el rendimiento y reducir la latencia. Las estrategias de creación de particiones afectan a cómo se procesan los datos en las otras fases de la canalización. Por ejemplo, la última fase de valor conocida y la fase de agregado funcionan en cada partición lógica.
Para particionar los datos, especifique una estrategia de creación de particiones y el número de particiones que se usarán:
Campo | Descripción | Necesario | Valor predeterminado | Ejemplo |
---|---|---|---|---|
Tipo de partición | El tipo de creación de particiones que se usará: partición ID o partición Key |
Obligatorio | ID |
ID |
Expresión de partición | La expresión jq que se usará en el mensaje entrante para calcular la partición ID o la partición Key |
Obligatorio | 0 |
.payload.header |
Número de particiones | Número de particiones en una canalización de procesador de datos. | Obligatorio | 1 |
1 |
La fase de origen aplica la expresión de creación de particiones al mensaje entrante para procesar la partición ID
o Key
.
El procesador de datos agrega metadatos adicionales al mensaje entrante. Consulte Información general sobre la estructura de mensajes del procesador de datos para saber cómo especificar correctamente la expresión de creación de particiones que se ejecuta en el mensaje entrante. De manera predeterminada, la expresión de creación de particiones se establece en 0
con el Tipo de partición como ID
para enviar todos los datos entrantes a una sola partición.
Para obtener recomendaciones y más información, consulte ¿Qué es la creación de particiones?