Definizione delle trasformazioni di ricerca

Informazioni sulle trasformazioni che è possibile utilizzare per incorporare i dati di ricerca nel set di dati.

Tieni presente che non tutti i tipi possono essere utilizzati durante entrambe le fasi del processo di costruzione del set di dati.

Categorizzare

La trasformazione Categorize utilizza una tabella di ricerca a due colonne composta da coppie stringa-pattern/valore. Durante questa trasformazione, il server di Data Workbench legge a turno ogni record di dati evento e confronta il contenuto di un campo designato nel record con ciascuna delle stringhe del pattern elencate nella prima colonna della tabella di ricerca. Se il campo designato corrisponde a una delle stringhe del pattern, il server di Data Workbench scrive il valore (trovato nella seconda colonna) associato a tale stringa del pattern in un campo di output designato nel record.

Facoltativamente, le stringhe nella prima colonna della tabella di ricerca possono iniziare con il carattere ^ e/o terminare nel carattere $ per forzare la corrispondenza all'inizio e/o alla fine. Questa trasformazione non accetta espressioni regolari per la definizione delle condizioni di corrispondenza nella prima colonna. Se il valore di input è un vettore di stringhe, ogni stringa viene eseguita attraverso la trasformazione e i risultati vengono aggiunti a un vettore di stringa di output.

Una trasformazione Categorize è generalmente più semplice e veloce che utilizzare una trasformazione Regular Expression per eseguire la stessa operazione.

NOTA

Il test della sottostringa utilizzato in Categorize distingue tra maiuscole e minuscole, se non diversamente specificato utilizzando il parametro Case Sensitive .

Parametro Descrizione impostazione predefinita
Nome Nome descrittivo della trasformazione. È possibile inserire un nome qualsiasi qui.
Distintivo tra maiuscole e minuscole True o false. Specifica se il test della sottostringa fa distinzione tra maiuscole e minuscole. true
Commenti Facoltativo. Note sulla trasformazione.
Condizione Le condizioni in cui viene applicata questa trasformazione.
impostazione predefinita Il valore predefinito da utilizzare se il test della condizione viene superato e nessuna voce nel file di categorizzazione corrisponde all'input oppure se il campo di input non è definito nella voce di registro specificata.
Delimitatore

Stringa utilizzata per separare le colonne nel file di ricerca. Deve essere un singolo carattere di lunghezza.

Se tieni premuto il tasto Ctrl e fai clic con il pulsante destro del mouse all'interno del parametro Delimitatore , viene visualizzato un menu Inserisci . Questo menu contiene un elenco di caratteri speciali che vengono spesso utilizzati come delimitatori.

Valori multipli True o false. Se true, quando più righe del file corrispondono all’input, ciascuna corrispondenza determina l’aggiunta di un valore al vettore di output delle stringhe. Se false, nell’output viene utilizzata solo la prima riga corrispondente nel file. In quest’ultimo caso, se l’input è un vettore, l’output è anche un vettore di lunghezza equivalente. Se l'input è una stringa semplice, anche l'output è una stringa semplice. false
File Percorso e nome file del file di classificazione. I percorsi relativi riguardano la directory di installazione del server di Data Workbench. Questo file si trova in genere nella directory delle ricerche all’interno della directory di installazione del server di Data Workbench.
Ingresso Il file di classificazione corrisponde alle relative sottostringhe rispetto al valore in questo campo per identificare la riga corrispondente nel file.
Uscita Nome del campo associato al risultato.

Considerazioni per categorizzare

  • Le modifiche ai file di ricerca nelle trasformazioni Categorize definite nel file Transformation.cfg o in un file Transformation Dataset Include richiedono la riconversione del set di dati. I file di ricerca per le trasformazioni Categorize definite nel file Log Processing.cfg o in un file Log Processing Dataset Include non sono soggetti a questa limitazione. Per informazioni sulla rielaborazione dei dati, vedere Rielaborazione e ritrasformazione.

  • Categorize le trasformazioni definite nel Log Processing.cfg file o in un Log Processing Dataset Include file ricaricano i loro file di ricerca ogni volta che i file di ricerca cambiano. Le modifiche non vengono applicate retroattivamente, ma si applicano a tutti i dati di registro letti dopo la modifica.

Questo esempio illustra l’utilizzo della trasformazione Categorize per integrare i dati di ricerca con i dati evento raccolti dal traffico del sito web. Supponiamo che un particolare sito web abbia sezioni aziendali e che vi sia l'obbligo di essere in grado di guardare e fare confronti in base al flusso di traffico e al valore generato dalle diverse sezioni. È possibile creare un file di ricerca in cui sono elencate le sottostringhe utilizzate per identificare queste diverse sezioni.

Il file di ricerca Lookups\custommap.txt contiene la tabella seguente:

/products/ Prodotti
^/sport/ Sport
^/news/ News

Questo file di categorizzazione mappa tutto ciò che contiene la stringa "/products/" al valore "Products", qualsiasi cosa che inizia con "/sports/" al valore "Sports", e qualsiasi cosa che inizia con "/news/" al valore "News". La seguente trasformazione di categorizzazione utilizza il valore nel campo cs-uri-stem come stringa all'interno della quale stiamo cercando una sottostringa corrispondente. Il risultato della trasformazione viene inserito nel campo x-custommap.

Presupponendo che il parametro Valori multipli sia impostato su false, l'esempio produrrà i seguenti valori per x-custommap in base ai valori elencati per cs-uri-stem.

cs-uri-stem x-custommap
/sports/news/today.php Sport
/sports/products/buy.php Prodotti
/news/headlines.php News
/news/products/subscribe.php Prodotti

L’output si basa sull’ordine delle sottostringhe nel file di ricerca. Ad esempio, cs-uri-stem /sports/products/buy.php restituisce "Products". Anche se il fusto URI inizia con "/sports/," la stringa "/products/" è elencata prima di "/sports/" nel file di ricerca. Se il parametro Valori multipli fosse impostato su true, ci sarebbe un valore aggiuntivo per x-custommap, in quanto l'ultimo esempio corrisponderebbe a due righe nella tabella di ricerca: Prodotti e notizie.

RicercaFileFlat

La trasformazione FlatFileLookup utilizza una tabella di ricerca composta da un numero qualsiasi di colonne e righe (anche se, ricorda che risiede nella memoria). Durante questo tipo di trasformazione, il server di Data Workbench legge a turno ogni record di dati evento e confronta il contenuto di un campo designato nel record con ciascuno dei valori in una colonna designata della tabella di ricerca. Se esiste una corrispondenza, il server di Data Workbench scrive uno o più valori dalla riga corrispondente nella tabella di ricerca in uno o più campi di output designati nel record di dati dell’evento.

La tabella di ricerca utilizzata durante questa trasformazione viene compilata da un file flat la cui posizione viene specificata quando si definisce la trasformazione.

Parametro Descrizione impostazione predefinita
Nome Nome descrittivo della trasformazione. È possibile inserire un nome qualsiasi qui.
Commenti Facoltativo. Note sulla trasformazione.
Condizione Le condizioni in cui viene applicata questa trasformazione.
impostazione predefinita Il valore predefinito da utilizzare se la condizione è soddisfatta e se nessuna voce nel file di ricerca corrisponde all’input.
Delimitatore

Stringa utilizzata per separare le colonne nel file di ricerca. Deve essere un singolo carattere di lunghezza.

Se tieni premuto il tasto Ctrl e fai clic con il pulsante destro del mouse all'interno del parametro Delimitatore , viene visualizzato un menu Inserisci . Questo menu contiene un elenco di caratteri speciali che vengono spesso utilizzati come delimitatori.

File Percorso e nome file del file di ricerca. I percorsi relativi riguardano la directory di installazione del server di Data Workbench. Questo file si trova in genere nella directory delle ricerche all’interno della directory di installazione del server di Data Workbench.
Riga di intestazione True o false. Indica che la prima riga della tabella è una riga di intestazione da ignorare durante l’elaborazione.
Ingresso Nome colonna è il nome della colonna utilizzata per associare l’input alle righe nel file. Se Riga di intestazione è true, può essere il nome di una colonna nel file di ricerca. In caso contrario, deve essere il numero di colonna basato su zero a cui confrontarsi. Nome campo è il nome del campo utilizzato per individuare la riga nel file di ricerca.
Valori multipli

True o false. Determina se restituire un singolo valore (una riga corrispondente) o più valori (uno per ogni riga corrispondente).

Nota: Se Multiple Values è impostato su false, assicurati che non siano presenti più corrispondenze. Quando si verificano più corrispondenze, non esiste alcuna garanzia che la corrispondenza venga restituita.

Uscite

Un vettore di oggetti colonna (risultati) in cui ogni oggetto è definito dai nomi di colonna e di campo.

Nome colonna è la colonna da cui viene ottenuto il valore di output. Se Riga di intestazione è true, può essere il nome di una colonna nel file di ricerca. In caso contrario, deve essere il numero di colonna basato su zero a cui confrontarsi.

Nome campo è il nome del campo utilizzato per acquisire l’output. Tieni presente che può essere un vettore di risultati, uno per ogni riga identificata nel caso in cui il parametro Valori multipli sia true.

Considerazioni perFlatFileLookup

  • La corrispondenza del campo di input al file di ricerca è sempre sensibile a maiuscole e minuscole.

  • Le modifiche ai file di ricerca nelle trasformazioni FlatFileLookup definite nel file Transformation.cfg o nei file Transformation Dataset Include richiedono la riconversione del set di dati. I file di ricerca per le trasformazioni FlatFileLookup definite nel file Log Processing.cfg o nei file Log Processing Dataset Include non sono soggetti a questa limitazione. Per informazioni sulla rielaborazione dei dati, vedere Rielaborazione e ritrasformazione.

  • FlatFileLookup le trasformazioni nel Log Processing.cfg file o nei Log Processing Dataset Include file ricaricano i file di ricerca ogni volta che i file di ricerca cambiano. Le modifiche non vengono applicate retroattivamente, ma si applicano a tutti i dati di registro letti dopo la modifica.

Questo esempio illustra l’utilizzo della trasformazione FlatFileLookup per integrare i dati di ricerca con i dati evento raccolti dal traffico del sito web. Supponi di voler isolare i partner del sito web che indirizzano il traffico al sito web e trasformare i loro ID partner in nomi più user-friendly. Puoi quindi utilizzare i nomi descrittivi per creare dimensioni estese e visualizzazioni che si associano in modo più chiaro alla relazione di business rispetto alla relazione sito-to-sito utilizzata per il traffico di indirizzamento.

La trasformazione di esempio cerca il campo cs(referrer-query) per la coppia nome-valore PartnerID e, se disponibile, il file di ricerca Lookups\partners.txt viene utilizzato per confrontare il valore PartnerID rispetto ai valori nella colonna Partner della tabella. Se si trova una riga, al campo di output x-partner-name viene assegnato il nome dalla colonna PrintName della riga identificata.

Se la tabella di ricerca conteneva le seguenti informazioni:

ID Partner Avviato NomeStampa
1 P154 21 agosto 1999 Yahoo
2 P232 10 luglio 2000 Microsoft
3 P945 12 gennaio 2001 Amazon

Gli esempi seguenti vengono trasformati come segue:

  • Se cs(referrer)(PartnerID) ha restituito P232, al campo x-partner-name verrà assegnato il valore "Microsoft".
  • Se cs(referrer)(PartnerID) restituisce P100, al campo x-partner-name verrà assegnato il valore "No Partner".
  • Se cs(referrer)(PartnerID) non ha restituito nulla, al campo x-partner-name verrà assegnato il valore "No Partner" come specificato dal parametro Predefinito.

ODBCLookup

La trasformazione ODBCLookup funziona come una trasformazione FlatFileLookup. L'unica differenza è che la tabella di ricerca utilizzata durante questa trasformazione viene compilata da un database ODBC e non da un file flat.

NOTA

ODBCLookup le trasformazioni possono essere eseguite solo durante la fase di trasformazione del processo di costruzione del set di dati. Quando possibile, Adobe consiglia di utilizzare la trasformazione FlatFileLookup invece della trasformazione ODBCLookup. FlatFileLookup Le trasformazioni sono intrinsecamente più affidabili perché non dipendono dalla disponibilità di un sistema esterno. Inoltre, esiste un rischio minore che la tabella di ricerca venga modificata se si trova in un file flat controllato localmente.

Parametro Descrizione impostazione predefinita
Nome Nome descrittivo della trasformazione. È possibile inserire un nome qualsiasi qui.
Commenti Facoltativo. Note sulla trasformazione.
Condizione Le condizioni in cui viene applicata questa trasformazione.
Nome origine dati Un DSN, fornito da un amministratore del computer server di Data Workbench su cui viene elaborato il set di dati, che fa riferimento al database da cui devono essere caricati i dati.
Password database Password da utilizzare per la connessione al database. Se è stata configurata una password per il DSN in Data Source Administrator, questa potrebbe essere lasciata vuota. Qualsiasi password fornita qui sostituisce la password configurata per il DSN in Data Source Administrator.
ID utente database ID utente da utilizzare per la connessione al database. Se un ID utente è stato configurato per il DSN in Data Source Administrator, può essere lasciato vuoto. Qualsiasi ID utente fornito qui sostituisce l'ID utente configurato per il DSN in Data Source Administrator.
impostazione predefinita Il valore predefinito da utilizzare se la condizione è soddisfatta e nessuna voce nel file di ricerca corrisponde all’input.
Colonna di input Nome colonna è il nome della colonna o l’espressione SQL per i dati corrispondenti all’input. Nome campo è il nome del campo contenente i dati da cercare.
Valori multipli

True o false. Determina se restituire un singolo valore (una riga corrispondente) o più valori (uno per ogni riga corrispondente).

Nota: Se Multiple Values è impostato su false, assicurati che non siano presenti più corrispondenze. Quando si verificano più corrispondenze, non esiste alcuna garanzia che la corrispondenza venga restituita.

Colonne di uscita

Un vettore di oggetti colonna (risultati) in cui ogni oggetto è definito dai nomi di colonna e di campo.

Nome colonna è il nome dell'espressione o SQL per la colonna da cui viene ottenuto il valore di output. Nome campo è il nome del campo utilizzato per acquisire l’output.

Identificatore tabella Espressione SQL che denomina la tabella o la visualizzazione da cui devono essere caricati i dati. Un identificatore di tabella tipico è costituito dal modulo SCHEMA.TABLE.
  • I parametri Nome origine dati, Database User ID, Database Password e Identificatore tabella sono gli stessi dei parametri degli stessi nomi descritti per le origini dati ODBC. Vedere Origini dati ODBC.

  • A differenza delle origini dati ODBC, le trasformazioni ODBCLookup non richiedono una colonna ID crescente. Vedere Origini dati ODBC. Questo perché il contenuto della tabella di ricerca non deve essere modificato in alcun modo mentre il set di dati è attivo. Le modifiche in una tabella o in una vista di ricerca non possono essere rilevate fino a quando non si verifica una riconversione. Per informazioni sulla rielaborazione dei dati, vedere Rielaborazione e ritrasformazione.

Si supponga di voler convertire i record DNS obsoleti nei record aggiornati. Entrambi i set di record sono archiviati in un database SQL. Per eseguire questa attività, fare riferimento a una tabella di ricerca generata dal database e sostituire i record DNS obsoleti.

La trasformazione del nostro esempio cerca le voci di log per il campo s-dns e, se si trova, la tabella di ricerca VISUAL.LOOKUP viene utilizzata per confrontare la voce s-dns rispetto alle voci nella colonna OLDDNS della tabella. Se una riga si trova nella tabella, al campo di output s-dns viene assegnata la voce di record DNS aggiornata dalla colonna NEWDNS della riga identificata.

In questa pagina