CrossRows

Wie andere Umwandlungen wird auch die CrossRows-Transformation auf die Datenzeilen (Protokolleinträge) in Ihren Protokollquellen angewendet.

Für jede Datenzeile nimmt die Umwandlung den Wert des angegebenen Eingabefelds an, führt eine Reihe von Verarbeitungsschritten durch und zeichnet das Ergebnis im von Ihnen angegebenen Ausgabefeld auf. Wenn die Umwandlung CrossRows jedoch mit einer Datenzeile funktioniert (diese Zeile wird als Ausgabenzeile bezeichnet), berücksichtigt sie diese Zeile sowie eine oder mehrere andere Datenzeilen (diese Zeilen werden als Eingabezeilen bezeichnet), die mit derselben Tracking-ID verknüpft sind. Daher basiert der Wert des Ausgabefelds für jede Ausgabezeile für eine bestimmte Tracking-ID auf den Werten des Eingabefelds für eine oder mehrere Eingabezeilen.

Die Transformation bietet mehrere Bedingungen und Einschränkungen, mit denen Sie die Eingabezeilen für die Transformation beschränken können. Sie können diese Beschränkungen in Bezug auf die Bedingungen des Data Workbench-Servers (siehe Bedingungen), einen Bereich von Eingabezeilen relativ zur Ausgabezeile oder einen Bereich von Malen relativ zur Zeit der Ausgabezeile ausdrücken. Für die Eingabezeilen, die die Bedingungen und Einschränkungen der Transformation erfüllen, können Sie einen Vorgang (z. B. SUM) anwenden, der den Wert des Ausgabefelds bestimmt.

HINWEIS

Für die Umwandlung von CrossRows ist es erforderlich, dass die Daten in der Zeit sortiert und nach der Tracking-ID in den Quelldaten gruppiert werden. Daher funktioniert CrossRows nur, wenn sie in der Datei Transformation.cfg oder in der Datei Transformation Dataset Include definiert ist.

Beachten Sie beim Überprüfen der Beschreibungen der Parameter in der folgenden Tabelle Folgendes:

  • Die Ausgabezeile ist die Datenzeile, an der die Umwandlung zu einem bestimmten Zeitpunkt arbeitet.
  • Eingabezeilen sind alle anderen Datenzeilen (vor, nach oder einschließlich der Ausgabenzeile), deren Werte des Eingabefelds als Eingaben für die Transformation dienen. Eingabezeilen unterliegen den Parametern Eingabebedingung, Schlüssel, Zeilenbeginn, Zeilenende, Zeitbeginn und Zeitende .
Parameter Beschreibung Standard
Name Deskriptiver Name der Transformation. Hier können Sie einen beliebigen Namen eingeben.
Kommentare Optional. Anmerkungen zur Transformation.
Bedingung Beschränkt die Ausgabe der Transformation auf bestimmte Protokolleinträge. Wenn die Bedingung für einen bestimmten Protokolleintrag nicht erfüllt ist, bleibt das Feld im Ausgabeparameter unverändert. Die Eingabe kann weiterhin verwendet werden, um andere Protokolleinträge zu beeinflussen.
Eingabe Der Name des Felds aus der Eingabezeile, das als Eingabe verwendet werden soll.
Eingabebedingung Akzeptiert die Eingabe für die Umwandlung nur aus bestimmten Eingabezeilen. Wenn die Eingabebedingung für eine bestimmte Eingabezeile nicht erfüllt ist, wird das Eingabefeld aus dieser Zeile ignoriert und hat keine Auswirkungen auf andere Ausgabezeilen. Das Ausgabefeld aus dieser Zeile wird jedoch weiterhin gemäß der angegebenen Bedingung geändert.
Schlüssel

Optional. Der Name des Felds, das als Schlüssel verwendet werden soll.

Wenn ein Schlüssel angegeben ist, sind die Eingabezeilen für eine bestimmte Ausgabezeile auf den aufeinander folgenden Zeilenblock beschränkt, der denselben Schlüsselwert wie die Ausgabezeile hat. Diese Einschränkung gilt zusätzlich zu allen anderen Einschränkungen, die von anderen Parametern der CrossRows-Transformation auf den Eingabezeilen platziert werden.

Wenn Sie beispielsweise mit Web-Daten arbeiten und das Feld x-session-key (das für jede Sitzung einen eindeutigen Wert hat) zum Schlüssel machen, sind die Eingabezeilen für die Transformation auf jene Zeilen beschränkt, die denselben x-session-key-Wert wie die Ausgabezeile haben. Daher erwägen Sie nur die Eingabezeilen, die Seitenansichten darstellen, die während derselben Sitzung wie die Ausgabezeile auftreten.

Vorgang

Ein Vorgang, der für jede Ausgabezeile auf alle Eingabezeilen angewendet wird, die alle Bedingungen erfüllen, die durch die Parameter Eingabebedingung, Schlüssel, Zeilenbeginn, Zeilenende, Zeitbeginn und Zeitende definiert sind, um eine Ausgabe zu generieren:

  • ALL übernimmt alle Werte des Eingabefelds aus den Eingabezeilen und gibt sie als Vektor aus.
  • SUM interpretiert die Werte des Eingabefelds aus den Eingabezeilen als Zahlen und fasst sie zusammen.
  • DIE ERSTE ZEILE gibt den Wert des Eingabefelds aus der ersten Eingabezeile aus.
  • DIE LETZTE ZEILE gibt den Wert des Eingabefelds aus der letzten Eingabezeile aus.

Ausgabe Der Name des Ausgabefelds.
Zeilenbeginn/Zeilenende

Optional. Gibt einen Bereich von Eingabezeilen relativ zur Ausgabenzeile an. Beispielsweise schließt der Wert für Zeilenbeginn "0"alle Zeilen vor der Ausgabenzeile aus. Bei einem Zeilenanfang von "1"wird auch die Ausgabezeile ausgeschlossen. Häufige Bereiche sind:

  • Beginn 0: Diese Zeile und alle nachfolgenden Zeilen.
  • Beginn 1: Alle nachfolgenden Zeilen.
  • Ende 0: Diese Zeile und alle vorherigen Zeilen.
  • Ende -1: Alle vorherigen Zeilen.
  • Anfang -1, Ende -1: Die vorherige Zeile.
  • Anfang 1, Ende 1: Die nächste Zeile.

Alle Zeilen
Zeitbeginn/Zeitende

Optional. Gibt einen Zeitraum an, der relativ zur Zeit der Ausgabelzeile ist. Beispielsweise umfasst das Zeitende von 30 Minuten alle Zeilen, die innerhalb von 30 Minuten nach der Ausgabenzeile stattfinden. Ein Zeitbeginn von -30 Minuten umfasst alle Zeilen, die innerhalb von 30 Minuten vor der Ausgabenzeile stattfinden.

Die verfügbaren Zeiteinheiten sind Tage, Wochen, Stunden, Minuten, ms (Millisekunden), Zecken (100 Nanosekunden) und ns (Nanosekunden).

Alle Zeiten

Die CrossRows-Umwandlung in diesem Beispiel wird auf Zeilen von Webdaten angewendet, um für jede Seitenansicht den Zeitpunkt der nächsten Seitenansicht zu ermitteln. Da wir wissen, dass CrossRows nur während der Umwandlungsphase des Datensatzerstellungsprozesses angewendet wird, werden die Datenzeilen nach Besucher (jeder Besucher verfügt über eine eindeutige Tracking-ID) und Uhrzeit sortiert.

Das Eingabefeld x-timestamp gilt nur für jene Eingabezeilen, in denen das Feld x-is-page-view ausgefüllt ist (das angibt, dass die Datenzeile eine Seitenansicht darstellt). Das Feld x-session-key (das für jede Sitzung einen eindeutigen Wert hat) wird für den Parameter key angegeben. Daher sind die Eingabezeilen (Protokolleinträge) für die Umwandlung auf den zusammenhängenden Zeilenblock beschränkt, der denselben Wert wie die Ausgabezeile hat. Anders ausgedrückt: Eine Eingabezeile muss eine Seitenansicht darstellen, die während derselben Sitzung wie die Seitenansicht in der Ausgabenzeile auftritt, damit sie für die Transformation berücksichtigt wird. Der erste Zeilenvorgang nimmt den Wert des Ausgabefelds aus der ersten Eingabezeile an, die die Bedingung Input erfüllt und denselben X-Session-Key-Wert wie die Ausgabezeile aufweist.

CrossRows wird in einer Zeit ausgeführt, die proportional zur Größe der Eingaben und der Ausgabegröße ist. Das bedeutet, dass es bei den Vorgängen SUM, FIRST ROW und LAST ROW nicht weniger effizient ist als bei anderen Umwandlungen. Für ALLE ist die Situation komplexer, da CrossRows so konfiguriert werden kann, dass für jede Datenzeile (Protokolleintrag) eine Datenmenge ausgegeben wird, die proportional zur Gesamtanzahl der Zeilen (Protokolleinträge) für eine bestimmte Tracking-ID ist.

Auf dieser Seite