CrossRows

Al igual que otras transformaciones, la transformación CrossRows se aplica a las filas de datos (entradas de registro) de los orígenes de registro.

Para cada fila de datos, la transformación toma el valor del campo de entrada especificado, realiza un conjunto de pasos de procesamiento y registra el resultado en el campo de salida especificado. Sin embargo, cuando la transformación CrossRows funciona en una fila de datos (esta fila se denomina fila de salida), tiene en cuenta esa fila más una o más filas de datos (estas filas se denominan filas de entrada) que están asociadas con el mismo ID de seguimiento. Por lo tanto, para un ID de seguimiento determinado, el valor del campo de salida para cada fila de salida se basa en los valores del campo de entrada para una o más filas de entrada.

La transformación proporciona varias condiciones y restricciones que permiten limitar las filas de entrada para la transformación. Puede expresar estos límites en términos de las condiciones del servidor de Data Workbench (consulte Conditions), un rango de filas de entrada relativas a la fila de salida o un intervalo de veces relativo al tiempo de la fila de salida. Para las filas de entrada que cumplan las condiciones y restricciones de la transformación, puede aplicar una operación (como SUM) que determine el valor del campo de salida.

NOTA

Para que funcione, la transformación CrossRows requiere que los datos se ordenen a tiempo y se agrupen por el ID de seguimiento en los datos de origen. Por lo tanto, CrossRows solo funciona cuando se define en el archivo Transformation.cfg o en un archivo Transformation Dataset Include.

Al revisar las descripciones de los parámetros en la siguiente tabla, recuerde lo siguiente:

  • La fila de salida es la fila de datos en la que está trabajando la transformación en un momento dado.
  • Las filas de entrada son todas las demás filas de datos (antes, después o incluyendo la fila de salida) cuyos valores del campo de entrada sirven como entradas para la transformación. Las filas de entrada están sujetas a los parámetros Condición de entrada, Clave, Inicio de fila, Fin de fila, Inicio de tiempo y Fin de tiempo.
Parámetro Descripción Predeterminado
Nombre Nombre descriptivo de la transformación. Puede introducir cualquier nombre aquí.
Comentarios Opcional. Notas sobre la transformación.
Condición Limita el resultado de la transformación a ciertas entradas de registro. Si no se cumple la condición para una entrada de registro determinada, el campo en el parámetro Output se deja sin cambios. La entrada puede utilizarse para afectar a otras entradas de registro.
Entrada Nombre del campo de la fila de entrada que se va a utilizar como entrada.
Condición de entrada Acepta la entrada para la transformación desde solo ciertas filas de entrada. Si no se cumple la condición de entrada para una fila de entrada concreta, se ignora el campo de entrada de esa fila y no afecta a otras filas de salida. Sin embargo, el campo de salida de esa fila se sigue modificando según la condición especificada.
Clave

Opcional. Nombre del campo que se va a utilizar como clave.

Si se especifica una clave, las filas de entrada de una fila de salida determinada se limitan al bloque contiguo de filas que tienen el mismo valor de clave que la fila de salida. Esta restricción se suma a todas las demás limitaciones colocadas en las filas de entrada por otros parámetros de la transformación CrossRows.

Por ejemplo, si trabaja con datos web y convierte el campo x-session-key (que tiene un valor único para cada sesión) en la clave, las filas de entrada para la transformación se limitan a aquellas filas que tienen el mismo valor x-session-key que la fila de salida. Por lo tanto, solo está considerando las filas de entrada que representan vistas de página que se producen durante la misma sesión que la fila de salida.

Operación

Operación que, para cada fila de salida, se aplica a todas las filas de entrada que cumplan todas las condiciones definidas por los parámetros Condición de entrada, Clave, Inicio de fila, Fin de fila, Inicio de tiempo y Fin de tiempo para generar una salida:

  • ALL toma todos los valores del campo de entrada de las filas de entrada y los genera como un vector.
  • SUM interpreta los valores del campo de entrada de las filas de entrada como números y los suma.
  • LA PRIMERA FILA genera el valor del campo de entrada desde la primera fila de entrada.
  • ÚLTIMA FILA genera el valor del campo de entrada desde la última fila de entrada.

Salida Nombre del campo de salida.
Inicio de fila/Final de fila

Opcional. Especifica un rango de filas de entrada relativas a la fila de salida. Por ejemplo, un valor Comenzar fila de "0" excluye todas las filas que hay antes de la fila de salida. Un valor de inicio de fila de "1" también excluye la fila de salida. Los intervalos comunes incluyen:

  • Comenzar 0: Esta fila y todas las posteriores.
  • Comenzar 1: Todas las filas siguientes.
  • Fin 0: Esta fila y todas las anteriores.
  • Fin -1: Todas las filas anteriores.
  • Comienzo -1, Final -1: La fila anterior.
  • Comienzo 1, Fin 1: La siguiente fila.

Todas las filas
Hora de inicio/fin de hora

Opcional. Especifica un intervalo de veces relativo al tiempo de la fila de salida. Por ejemplo, un Time End de 30 minutos incluye todas las filas que se producen en los 30 minutos siguientes a la fila de salida. Un valor Comenzar de tiempo de -30 minutos incluye todas las filas que se producen en los 30 minutos anteriores a la fila de salida.

Las unidades de tiempo disponibles son días, semanas, horas, minutos, ms (milisegundos), garrapatas (100 nanosegundos) y ns (nanosegundos).

Todas las horas

La transformación CrossRows de este ejemplo se aplica a filas de datos web para encontrar para cada vista de página la hora de la siguiente vista de página. Como sabemos que CrossRows solo se aplica durante la fase de transformación del proceso de construcción del conjunto de datos, las filas de datos se ordenan por visitante (cada visitante tiene un ID de seguimiento único) y por hora.

El campo de entrada, x-timestamp, solo se considera para aquellas filas de entrada en las que se rellena el campo x-is-page-view (indicando que la fila de datos representa una vista de página). El campo x-session-key (que tiene un valor único para cada sesión) se especifica para el parámetro Key . Por lo tanto, las filas de entrada (entradas de registro) para la transformación se limitan al bloque contiguo de filas que tienen el mismo valor de x-session-key que la fila de salida. En otras palabras, para que se considere la transformación, una fila de entrada debe representar una vista de página que se produzca durante la misma sesión que la vista de página en la fila de salida. La primera operación de fila toma el valor del campo de salida de la primera fila de entrada que cumple la condición Input y tiene el mismo valor de clave de sesión x que la fila de salida.

CrossRows se ejecuta en una cantidad de tiempo proporcional al tamaño de sus entradas más el tamaño de sus salidas. Esto significa que para las operaciones SUMA, PRIMERA FILA y ÚLTIMA FILA, no es menos eficiente que otras transformaciones. Para ALL, la situación es más compleja porque es posible configurar CrossRows para generar una cantidad de datos para cada fila de datos (entrada de registro) que sea proporcional al número total de filas (entradas de registro) para un ID de seguimiento determinado.

En esta página

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now