Show Menu
THEMEN×

CrossRows

Wie andere Transformationen wird auch die CrossRows-Transformation auf die Datenzeilen (Protokolleinträge) in Ihren Protokollquellen angewendet.
Für jede Datenzeile nimmt die Transformation den Wert des angegebenen Eingabefelds, führt eine Reihe von Verarbeitungsschritten aus und zeichnet das Ergebnis im angegebenen Ausgabefeld auf. Wenn die CrossRows Transformation jedoch an einer Datenzeile funktioniert (diese Zeile wird als Ausgabezeile 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 Eingabelzeilen.
Die Transformation bietet mehrere Bedingungen und Einschränkungen, mit denen Sie die Eingabezeilen für die Transformation einschrä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 Zeitbereich in Bezug auf die Zeit der Ausgabezeile ausdrücken. Für die Eingabereilen, 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.
Damit die CrossRows Transformation funktioniert, müssen die Daten in der Zeit angeordnet und nach der Tracking-ID in den Quelldaten gruppiert werden. Daher CrossRows funktioniert nur, wenn sie in der Transformation.cfg Datei oder in einer Transformation Dataset Include Datei definiert ist.
Beachten Sie beim Lesen der Beschreibungen der Parameter in der folgenden Tabelle Folgendes:
  • Die Ausgabezeile ist die Datenzeile, an der die Transformation zu einem bestimmten Zeitpunkt arbeitet.
  • Eingabezeilen sind alle anderen Datenzeilen (vor, nach oder einschließlich der Ausgabezeile), deren Werte des Eingabefelds als Eingabe für die Transformation dienen. Die Eingabezeilen unterliegen den Parametern "Eingabebedingung", "Schlüssel", "Zeilenbeginn", "Zeilenende", "Zeitbeginn"und "Zeitende".
Parameter Beschreibung Standardeinstellung
Name Beschreibender Name der Transformation. Sie können hier einen beliebigen Namen eingeben.
Kommentare Optional. Anmerkungen zur Transformation.
Bedingung Begrenzt die Ausgabe der Transformation auf bestimmte Protokolleinträge. Wenn die Bedingung für einen bestimmten Protokolleintrag nicht erfüllt ist, bleibt das Feld im Parameter "Ausgabe"unverändert. Die Eingabe kann weiterhin verwendet werden, um andere Protokolleinträge zu beeinflussen.
Eingabe Der Name des Felds in der als Eingabe zu verwendenden Eingabezeile.
Eingabebedingung Akzeptiert Eingaben für die Transformation nur aus bestimmten Eingabezeilen. Wenn die Eingabebedingung für eine bestimmte Eingabezeile nicht erfüllt ist, wird das Eingabefeld aus dieser Zeile ignoriert und wirkt sich nicht auf andere Ausgabezeilen aus. 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 Eingabelzeilen für eine bestimmte Ausgabezeile auf den zusammenhängenden Zeilenblock mit demselben Schlüsselwert wie die Ausgabezeile beschränkt. 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 z. B. mit Webdaten arbeiten und den Schlüssel für das Feld x-session-key (der für jede Sitzung einen eindeutigen Wert hat) festlegen, sind die Eingabelzeilen für die Transformation auf die 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 werden, um eine Ausgabe zu erzeugen:
  • ALL nimmt 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 Summen.
  • ERSTE ZEILE gibt den Wert des Eingabefelds aus der ersten Eingabezeile aus.
  • LAST-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 Ausgabezeile an. Bei einem Zeilenanfang-Wert von "0"werden beispielsweise alle Zeilen vor der Ausgabezeile ausgeschlossen. Bei einem Zeilenanfang-Wert von "1"wird auch die Ausgabezeile ausgeschlossen. Häufige Bereiche sind:
  • 0 beginnen: Diese Zeile und alle nachfolgenden Zeilen.
  • Beginn 1: Alle nachfolgenden Zeilen.
  • Ende 0: Diese und alle vorherigen Zeilen.
  • Ende -1: Alle vorherigen Zeilen.
  • Beginnen -1, Ende -1: Die vorherige Zeile.
  • Beginn 1, Ende 1: Die nächste Zeile.
Alle Zeilen
Zeitraum Anfang/Ende
Optional. Gibt einen Zeitbereich im Verhältnis zur Zeit der Ausgabezeile an. Ein Zeitende von 30 Minuten umfasst z. B. alle Zeilen, die innerhalb von 30 Minuten nach der Ausgabezeile stattfinden. Ein Zeitbeginn von -30 Minuten umfasst alle Zeilen, die innerhalb von 30 Minuten vor der Ausgabeliste stattfinden.
Verfügbare Zeiteinheiten sind Tage, Wochen, Stunden, Minuten, ms (Millisekunden), Zecken (100 Nanosekunden) und ns (Nanosekunden).
Alle Zeiten
Die CrossRows Transformation in diesem Beispiel wird auf Zeilen mit Webdaten angewendet, um für jede Seitenansicht den Zeitpunkt der nächsten Seitenansicht zu ermitteln. Da wir wissen, dass dies nur während der Umwandlungsphase des Datensatzerstellungsprozesses angewendet CrossRows wird, werden die Datenzeilen nach Besuchern sortiert (jeder Besucher hat eine eindeutige Tracking-ID) und Zeit.
Das Eingabefeld x-timestamp gilt nur für die Eingabelzeilen, in denen das Feld x-is-page-view gefüllt ist (das Angeben der Datenzeile steht für eine Seitenansicht). Das Feld x-session-key (das für jede Sitzung einen eindeutigen Wert enthält) wird für den Parameter key angegeben. Daher sind die Eingabezeilen (Protokolleinträge) für die Transformation auf den zusammenhängenden Zeilenblock beschränkt, der denselben Wert wie die Ausgabezeile hat. Damit eine Eingabezeile für die Transformation berücksichtigt werden kann, muss sie eine Seitenansicht darstellen, die während der gleichen Sitzung wie die Seitenansicht in der Ausgabezeile erfolgt. Der erste Zeilenvorgang nimmt den Wert des Ausgabefelds aus der ersten Eingabezeile, die die Input Bedingung erfüllt und denselben X-Session-Key-Wert wie die Ausgabezeile hat.
CrossRows wird in einem Zeitraum ausgeführt, der proportional zur Größe der Eingaben und zur Größe der Ausgaben ist. Das bedeutet, dass für die Vorgänge SUM, FIRST ROW und LAST ROW diese nicht weniger effizient sind als andere Transformationen. Für ALLE ist die Situation komplexer, da es möglich ist, eine Datenmenge für jede Datenzeile (Protokolleintrag) auszugeben, die proportional zur Gesamtanzahl der Zeilen (Protokolleinträge) für eine bestimmte Tracking-ID ist. CrossRows