Compartir a través de


JOIN sobre datos de referencia

✅ Secuencia de eventos de Azure Stream Analytics ✅ Fabric

En un escenario habitual, usamos un motor de procesamiento de eventos para calcular datos de streaming con una latencia muy baja. En muchos casos, los usuarios deben correlacionar datos históricos persistentes o un conjunto de datos de cambio lento (también conocido como datos de referencia) con el flujo de eventos en tiempo real para tomar decisiones más inteligentes sobre el sistema. Por ejemplo, una mi secuencia de eventos a un conjunto de datos estático que asigna direcciones IP a ubicaciones. Se trata de la única combinación admitida en Stream Analytics en la que no es necesario un límite temporal. Los datos de referencia también se pueden usar para tener valores de umbral específicos del dispositivo.

Ejemplo

Si un vehículo comercial está registrado con la Compañía de Peaje, pueden pasar por la cabina de peaje sin ser detenidos para su inspección. Usaremos una tabla de búsqueda de registro de vehículos comerciales para identificar todos los vehículos comerciales con registro expirado.

SELECT I1.EntryTime, I1.LicensePlate, I1.TollId, R.RegistrationId  
FROM Input1 I1 TIMESTAMP BY EntryTime  
JOIN Registration R  
ON I1.LicensePlate = R.LicensePlate  
WHERE R.Expired = '1'

Peculiaridades de datos de referencia JOIN

  • El uso de Datos de referencia JOIN requiere que se defina un origen de entrada para los datos de referencia.
  • Los datos de referencia JOIN se admiten para JOIN interno (valor predeterminado) y JOIN externo izquierdo, con datos de referencia en el lado derecho del operador JOIN.
  • Los tipos de datos son un aspecto importante en la evaluación del predicado de combinación (ON cláusula). Es posible que no coincidan valores similares en distintos tipos de datos (1.0 y "1"). Se recomienda convertir explícitamente las claves en un tipo común.
  • Los datos de referencia pueden ser estáticos (cargados solo una vez) o dinámicos (se actualizan periódicamente). Sin embargo, incluso en el caso dinámico, los datos de referencia no realizan el progreso de la hora, por lo que la secuencia del lado izquierdo debe obtener nuevos eventos para generar salidas. Consulte también cómo avanza el tiempo en Azure Stream Analytics para más información.

Consideraciones sobre el rendimiento

Para evitar degradaciones del rendimiento, los predicados de combinación de referencia (ON cláusula) deben definirse mediante la igualdad de clave simple (ON s.myKey = r.myKey). El uso de expresiones complejas, o desigualdades, provocará internamente combinaciones cruzadas seguidas de filtros (examen completo frente a búsqueda), lo que puede afectar de forma inversa a la latencia general.

Cuando sea posible, mueva estas expresiones complejas a la WHERE cláusula del paso de consulta o una los mismos datos de referencia varias veces cada una con condiciones más sencillas.

Véase también