SPL ofrece instrucciones para operaciones con campos, extracción de datos, filtrado, agregación y transformación de datos. Cada instrucción admite escenarios específicos de procesamiento, como la transformación de datos, Ingest Processor, Consumer Processor, el modo de escaneo y la recolección con Logtail.
Tipos de parámetros
Las instrucciones de SPL utilizan los siguientes tipos de parámetros.
|
Tipo de parámetro |
Descripción |
|
Bool |
Parámetro booleano que funciona como un interruptor en SPL. |
|
Char |
Parámetro de carácter ASCII, encerrado entre comillas simples (''). Ejemplos: |
|
Integer |
Parámetro de número entero. |
|
String |
Parámetro de cadena, encerrado entre comillas simples (''). Ejemplo: |
|
RegExp |
Parámetro de expresión regular RE2, encerrado entre comillas simples (''). Ejemplo: Detalles de la sintaxis RE2: Syntax. |
|
JSONPath |
Parámetro de ruta JSON, encerrado entre comillas simples (''). Ejemplo: Detalles de la sintaxis JSONPath: JsonPath. |
|
Field |
Parámetro de nombre de campo. Ejemplo: Encierre entre comillas dobles ("") los nombres de campo que contengan caracteres especiales (distintos de letras, dígitos y guiones bajos). Ejemplo: Nota
Las reglas de distinción entre mayúsculas y minúsculas en los nombres de campo se documentan en General reference. |
|
FieldPattern |
Nombre de campo o patrón con comodines. El comodín () coincide con cero o más caracteres. Encierre los patrones entre comillas dobles (""). Ejemplo: Nota
Las reglas de distinción entre mayúsculas y minúsculas en los nombres de campo se documentan en General reference. |
|
SPLExp |
Parámetro de expresión SPL. |
|
SQLExp |
Parámetro de expresión SQL. |
Lista de instrucciones de SPL
|
Categoría de instrucción |
Nombre de la instrucción |
Descripción |
Transformación de datos |
Ingest Processor |
Consumer Processor |
Modo de escaneo (SCAN) |
Recolección con Logtail |
|
Instrucción de control |
Define un conjunto de datos con nombre. Los detalles sobre los conjuntos de datos SPL se tratan en General reference. |
Sí |
× |
× |
√ |
× |
|
|
Instrucción de operación de campos |
Conserva los campos que coinciden con un patrón especificado y cambia el nombre de los campos indicados. Las expresiones de retención de campos se procesan antes que las expresiones de cambio de nombre. |
Compatible |
Compatible |
Compatible |
Compatible |
Compatible |
|
|
Elimina los campos que coinciden con un patrón especificado y conserva todos los demás. |
Compatible |
Compatible |
Compatible |
Compatible |
✓ |
||
|
Cambia el nombre de los campos especificados y conserva todos los demás. |
Compatible |
Compatible |
Compatible |
Compatible |
Compatible |
||
|
Expande el objeto JSON de nivel superior de un campo especificado en varios resultados. |
Compatible |
× |
Compatible |
No compatible |
× |
||
|
Instrucción de cálculo SQL para datos estructurados |
Crea nuevos campos a partir de los resultados de una expresión SQL. Las funciones SQL compatibles se enumeran en List of SQL functions supported by SPL. |
Compatible |
Compatible |
Compatible |
Compatible |
Compatible |
|
|
Filtra datos mediante una expresión SQL y conserva las entradas coincidentes. Las funciones SQL compatibles se enumeran en List of SQL functions supported by SPL. |
Compatible |
✓ |
Compatible |
Compatible |
Compatible |
||
|
Instrucción de extracción de datos semiestructurados |
Extrae información que coincide con grupos de expresiones regulares desde un campo especificado. |
√ |
√ |
Compatible |
✓ |
Compatible |
|
|
Extrae información en formato CSV desde un campo especificado. |
√ |
Compatible |
Compatible |
√ |
Compatible |
||
|
Extrae campos JSON de nivel superior desde un campo especificado. |
Compatible |
Compatible |
√ |
√ |
Compatible |
||
|
Extrae información de pares clave-valor desde un campo especificado. |
Compatible |
Compatible |
Compatible |
Compatible |
Compatible |
||
|
Nueva instrucción de transformación de datos |
Empaqueta campos de registro en un nuevo campo mediante serialización JSON. Resulta adecuada para escenarios de transmisión estructurada, como la construcción de cuerpos de solicitud de API. |
✓ |
× |
✓ |
Compatible |
× |
|
|
Convierte el formato de registro al formato de almacenamiento de series temporales. |
Compatible |
× |
× |
× |
× |
||
|
Procesa datos de métricas existentes, por ejemplo, para agregar, modificar o eliminar etiquetas. |
Compatible |
× |
× |
× |
× |
||
|
Instrucción de agregación |
Ejecuta análisis estadísticos sobre campos de registro, similar a las funciones de agregación SQL como |
× |
× |
No compatible |
Compatible |
× |
|
|
Ordena los resultados de la consulta por valores de campo o resultados estadísticos en orden ascendente ( |
× |
× |
× |
Compatible |
× |
||
|
Limita el número de filas de registro devueltas en los resultados de la consulta. Utilice |
× |
× |
× |
Compatible |
× |
Descripción general de funciones
Las instrucciones de SPL admiten la mayoría de las funciones SQL. La disponibilidad y los escenarios aplicables de cada función se describen en su documentación correspondiente.
|
Categoría |
Descripción |
Funciones comunes |
|
Calcula un único resultado a partir de un conjunto de valores de entrada. |
||
|
Busca, reemplaza, extrae, concatena y formatea datos de texto. |
||
|
Convierte, trunca y agrega valores de fecha y hora. |
||
|
Extrae, transforma y consulta datos de objetos y matrices JSON. |
||
|
Coincide, extrae y reemplaza texto mediante expresiones regulares. |
||
|
Compara datos de series temporales en distintos periodos de tiempo. |
||
|
Accede, filtra y transforma elementos de matrices. |
||
|
Opera sobre pares clave-valor (mapas). |
||
|
Redondea valores, genera números aleatorios y ejecuta cálculos trigonométricos. |
||
|
Analiza distribuciones de datos con funciones de correlación, regresión y probabilidad. |
||
|
Convierte valores de un tipo de dato a otro. |
||
|
Calcula agregaciones o clasificaciones sobre una ventana deslizante de filas. |
||
|
Analiza sintácticamente y procesa direcciones IP. |
||
|
Extrae componentes de URL. |
||
|
Aproxima recuentos distintos, percentiles e histogramas para grandes conjuntos de datos. |
||
|
Opera sobre datos binarios. |
||
|
Ejecuta operaciones bit a bit sobre números enteros. |
||
|
Opera sobre objetos geométricos espaciales. |
||
|
Ejecuta análisis y cálculos geoespaciales. |
||
|
Crea y manipula representaciones de color. |
||
|
Estima la cardinalidad en grandes conjuntos de datos con un uso mínimo de memoria. |
||
|
Compara valores entre tipos (double, bigint, varchar, timestamp, date) y devuelve un valor booleano. |
||
|
Combina varias expresiones booleanas para controlar el flujo lógico. |
||
|
Convierte tamaños de datos o intervalos de tiempo entre distintas unidades. |
||
|
Rastrea acciones secuenciales de usuarios para el análisis de embudos de conversión. |
||
|
Define funciones en línea para operaciones de matriz de orden superior en SQL o SPL. |
||
|
Devuelve distintos valores según una condición especificada. |