Compartir a través de


Escritura en tabla de base de datos de Azure SQL desde los trabajos de Azure Stream Analytics

Azure Stream Analytics admite base de datos de Azure SQL como salida para la consulta de streaming. En este artículo se explica cómo usar la base de datos SQL como salida para el trabajo de Stream Analytics en el Azure Portal.

Requisitos previos

  1. Cree un trabajo de Stream Analytics.

  2. Cree una base de datos Azure SQL en la que el trabajo de Stream Analytics escribirá la salida.

Escriba en una nueva tabla en una base de datos SQL

En esta sección se describe cómo puede configurar el trabajo para escribir en una tabla de la base de datos de Azure SQL que aún no se ha creado.

  1. En su trabajo de Stream Analytics, seleccione Entradas en Topología de trabajo. Haga clic en Agregar y elija base de datos SQL.

    Instantánea mostrando la salida de la base de datos SQL en Stream Analytics.

  2. Seleccione un alias de salida que se usará en la consulta del trabajo. Proporcione el nombre de la base de datos y el modo de autenticación. Puede obtener más información sobre las opciones de configuración de salida de SQL.

  3. Escriba un nombre de tabla que quiera crear en la base de datos de Azure SQL. Haga clic en Save(Guardar). Nota: Al guardar esta salida no se crea la tabla en su base de datos SQL. Los pasos que se indican a continuación le ofrecen más detalles sobre cuándo se crea la tabla.

    Instantánea mostrando la configuración de la salida de la base de datos SQL en Stream Analytics.

  4. Seleccione Consulta en Topología de trabajo y use el alias de la consulta para escribir la salida en el nombre de la tabla que proporcionó en el paso anterior. Haga clic en Probar consulta para probar la lógica de consulta y ver Resultados de la prueba que muestra el esquema de la salida que generará el trabajo. Nota: Para probar la consulta, debe tener datos de streaming entrantes en el origen de entrada o puede cargar datos de ejemplo para probar la consulta. Puede obtener más información sobre la consulta de Stream Analytics de prueba.

    Instantánea mostrando la consulta de prueba en Stream Analytics.

    Instantánea mostrando los resultados de la consulta de pruebas en Stream Analytics.

  5. Haga clic en Esquema de tabla SQL para ver el nombre y el tipo de columna. Haga clic en Crear tabla y su tabla se creará en la base de datos SQL.

    Instantánea mostrando la creación en una tabla de la base de datos SQL de Stream Analytics.

    Si la consulta de Stream Analytics se modifica para generar un esquema diferente, deberá modificar la definición de la tabla en la base de datos SQL. Esto garantiza que el trabajo de Stream Analytics no encuentre errores de conversión de datos al intentar escribir en el receptor.

  6. Una vez que la consulta sea final, seleccione Información general e Inicie el trabajo. A continuación, puede ir a la tabla de la base de datos SQL para ver la salida de la consulta de streaming.

Selección de una tabla existente de la base de datos SQL

En esta sección se describe cómo puede configurar el trabajo para escribir en una tabla existente de la base de datos de Azure SQL.

  1. En su trabajo de Stream Analytics, seleccione Entradas en Topología de trabajo. Haga clic en Agregar y elija base de datos SQL.

    Instantánea mostrando la salida de la base de datos SQL en Stream Analytics.

  2. Seleccione un alias de salida que se usará en la consulta del trabajo. Proporcione el nombre de la base de datos y el modo de autenticación. Puede obtener más información sobre las opciones de configuración de salida de SQL.

  3. Puede elegir una tabla existente de la base de datos SQL introduciendo los detalles de autenticación de SQL. Esto cargará una lista de nombres de tabla de la base de datos. Seleccione el nombre de la tabla de la lista o escriba manualmente el nombre de la tabla y pulseGuardar.

    Instantánea de la tabla existente en la base de datos SQL.

  4. Seleccione Consulta en Topología de trabajo y use el nombre de alias de la consulta para escribir la salida en la tabla seleccionada. Haga clic en Probar consulta para probar la lógica de consulta y ver Resultados de la prueba. Nota: Para probar la consulta, debe tener datos de streaming entrantes en el Hub de eventos o IoT hub o puede cargar datos de ejemplo para probar la consulta. Puede obtener más información sobre la consulta de Stream Analytics de prueba.

    Instantánea mostrando la consulta de prueba en Stream Analytics.

    Instantánea mostrando los resultados de la consulta de pruebas en Stream Analytics.

  5. En la pestaña Esquema de tabla SQL, puede ver un nombre de columna y su tipo de datos entrantes y en la tabla seleccionada. Puede ver el estado si el tipo de datos entrante y la tabla SQL seleccionada coinciden o no. Si no es una coincidencia, se le pedirá que actualice su consulta para que coincida con el esquema de la tabla.

    Instantánea mostrando la comparación de esquemas en Stream Analytics.

  6. Una vez que la consulta sea final, seleccione Información general e Inicie el trabajo. A continuación, puede ir a la tabla de la base de datos SQL para ver la salida de la consulta de streaming.

Motivos comunes de falta de coincidencia de tipos de datos

Es importante asegurarse de que la salida del trabajo de Stream Analytics coincida con los nombres de columna y los tipos de datos esperados por la tabla de la base de datos SQL. Si hay un error de coincidencia, su trabajo se encontrará con errores de conversión de datos y reintentará continuamente hasta que se cambie la definición de la tabla SQL. Puede cambiar el comportamiento del trabajo para quitar esta salida que causa errores de conversión de datos y continuar con la siguiente. A continuación se describen los motivos de discrepancia de esquemas más comunes.

  • Error de coincidencia de tipos: los tipos de consulta y de destino no son compatibles. Las filas no se insertarán en el destino. Use una función de conversión como TRY_CAST() para alinear los tipos de la consulta. La opción alternativa es modificar la tabla de destino de la base de datos SQL.
  • Intervalo: el intervalo de tipos de destino es considerablemente menor que el utilizado en la consulta. Es posible que las filas con valores fuera del intervalo no se inserten en la tabla de destino ni se trunquen. Considere la posibilidad de modificar la columna de destino a un intervalo de tipos mayor.
  • Implícito: los tipos de consulta y destino son diferentes pero compatibles. Los datos se convertirán implícitamente, pero esto podría dar lugar a errores o pérdida de datos. Use una función de conversión como TRY_CAST() para alinear los tipos de la consulta o modificar la tabla de destino.
  • Registro: este tipo aún no se admite para esta salida. El valor se reemplazará por la cadena "registro". Considere la posibilidad de analizar los datos o usar una UDF para convertir en cadena.
  • Matriz: este tipo aún no se admite de forma nativa en la base de datos Azure SQL. El valor se reemplazará por la cadena "registro". Considere la posibilidad de analizar los datos o usar una UDF para convertir en cadena.
  • Columna que falta en la tabla de destino: falta esta columna en la tabla de destino. Los datos no se insertarán. Agregue esta columna a la tabla de destino si es necesario.

Pasos siguientes