Utilizzo di tabelle decisionali per semplificare la logica di mappatura dei dati
Un aspetto fondamentale di qualsiasi progetto di mappatura dei dati è la definizione delle regole di elaborazione dei dati, necessarie per trasformare i dati dalla loro fonte alla struttura dati di destinazione. Tuttavia, quando queste regole implicano numerose condizioni ed eccezioni, la logica può diventare rapidamente complessa e difficile da mantenere.
Se le vostre mappature dei dati sono tenute insieme da una complessa rete di condizioni, non siete soli. Le tabelle decisionali semplificano questa complessità, permettendovi di definire le regole aziendali in un formato tabellare chiaro e facile da leggere, testare e mantenere. Per i team di ETL e di integrazione dei dati, offrono manutenibilità e coerenza, soprattutto quando vengono implementate direttamente in MapForce.

Cos'è una tabella decisionale?
Una tabella decisionale è un metodo strutturato per rappresentare regole aziendali o logiche, che consiste nel elencare tutte le possibili condizioni e le corrispondenti azioni "se/allora/altrimenti" in un formato tabellare.
In un asse si elencano le diverse condizioni (input o criteri), e nell'altro asse si elencano le possibili combinazioni o righe di tali condizioni. Successivamente, si associano queste combinazioni ad azioni (output o decisioni)
In termini più semplici: invece di utilizzare decine di istruzioni "se/allora/altrimenti" nidificate, si raccolgono tutte le possibili combinazioni in una tabella ben strutturata. Un esempio comune di tabella decisionale è quella utilizzata per valutare le richieste di prestito, utilizzando condizioni come il punteggio di credito e il reddito per determinare l'esito (approvazione, rifiuto o richiesta di ulteriori informazioni).
| Età | Reddito annuale | Punteggio di credito | Decisione (risultato) |
| ≥ 21 | ≥ 60.000 $ | ≥ 700 | Approvato |
| ≥ 21 | ≥ 40.000 \(e < 60.000\) | ≥ 650 | Richiesta revisione da parte del responsabile |
| ≥ 21 | < 40.000 $ | < 650 | Rifiutato |
| < 21 | Qualsiasi | Qualsiasi | Rifiutato |
| ≥ 21 | ≥ 60.000 $ | 600–699 | Richiesta revisione da parte del responsabile |
| ≥ 21 | < 40.000 $ | ≥ 700 | Richiesta revisione da parte del responsabile |
| ≥ 21 | Qualsiasi | < 600 | Rifiutato |
Come illustrato nell'esempio precedente,
- Ogni riga della tabella corrisponde a una regola (ovvero, una combinazione unica di condizioni) e all'azione o alle azioni conseguenti
- Le condizioni sono i fattori di input (età, reddito, punteggio di credito)
- Le azioni definiscono cosa fare quando le condizioni sono soddisfatte (ad esempio, approvare, rifiutare o segnalare per una revisione)
- Una tabella decisionale ben strutturata significa che avete considerato tutte le combinazioni rilevanti, evitando così di lasciare alcuna regola non definita
Configurare tutte queste regole separatamente in un progetto di mappatura dei dati può essere un incubo: la mappatura diventa complessa e difficile da comprendere, e aumenta la probabilità di commettere errori.
Perché utilizzare le tabelle decisionali nell'integrazione dei dati?
Le tabelle decisionali sono ampiamente utilizzate per gestire regole complesse e con molteplici condizioni in diversi settori, e sono particolarmente utili nelle attività di mappatura dei dati e negli scenari di estrazione, trasformazione e caricamento (ETL) dove chiarezza, coerenza e manutenibilità sono fondamentali. I vantaggi includono:
Chiarezza e leggibilità: Le tabelle decisionali centralizzano la logica complessa delle regole in un formato tabellare, rendendole più facili da comprendere rispetto alle istruzioni IF nidificate o al codice frammentato.
Coerenza e completezza: Elencando esplicitamente tutte le possibili combinazioni di condizioni, si riduce il rischio di trascurare casi particolari o regole non definite.
Separazione della logica dal flusso: Le tabelle decisionali consentono di gestire le regole di business in modo indipendente dalle trasformazioni ETL, facilitando la manutenzione.
Riutilizzabilità: La stessa tabella decisionale può essere applicata a diverse mappature o flussi di lavoro, garantendo risultati coerenti.
Test e controlli semplificati: Grazie alla visualizzazione di tutte le regole in un'unica tabella, i team possono facilmente esaminare, validare e aggiornare la logica.
Gestisce criteri complessi in modo efficiente: Scenari con molteplici condizioni diventano gestibili, sostituendo le istruzioni condizionali nidificate con una struttura chiara e facilmente mantenibile.
Tabelle decisionali in MapForce
Altova MapForce semplifica la mappatura dei dati grazie a rappresentazioni grafiche delle strutture dati di origine e di destinazione, e strumento per migliorare la funzione visiva, e la funzionalità di mappatura dei campi tramite trascinamento. La sua libreria di funzioni per la gestione dei dati include una componente della tabella decisionale che consente di definire diverse regole per la gestione dei dati in un'unica posizione, per poi condensarle in una singola funzione MapForce, facile da comprendere, che applica le regole definite ai dati in entrata.
È possibile definire le condizioni di input e le azioni di output, inserire le regole, e collegare le sorgenti e le destinazioni. MapForce valuta quindi ogni record rispetto alla tabella, producendo l'output corretto, mantenendo al contempo la logica aziendale visibile, gestibile e completamente integrata nel flusso di lavoro ETL o di mappatura dei dati.
Per illustrare come funziona, consideriamo un altro esempio comune in cui una tabella decisionale è particolarmente utile: il calcolo delle percentuali di sconto. In questo caso, lo sconto è determinato da una combinazione dello status del cliente (VIP, cliente abituale o nuovo cliente) e dell'importo dell'acquisto.
| Tipo di cliente | Importo dell'acquisto | % di sconto |
| VIP | ≥ 500 | 30 |
| Cliente abituale | ≥ 500 | 20 |
| VIP | ≥ 300 | 20 |
| Nuovo cliente | ≥ 600 | 10 |
È facile elencare le possibili combinazioni all'interno del componente "tabella decisionale" di MapForce per qualsiasi numero di input

Una volta definite le condizioni e le regole, la tabella decisionale viene trasformata in una funzione di elaborazione dati compatta e inserita nel progetto di mappatura dei dati. Qui, è possibile collegare gli input della tabella decisionale ai campi di origine nella mappatura e collegare l'output (o gli output) ai campi di destinazione.

Durante l'esecuzione, MapForce eseguirà la logica della tabella come parte del processo di trasformazione, al fine di scrivere la percentuale di sconto appropriata nel sistema di destinazione.
Verificare l'output della mappatura mostra il risultato desiderato:

Naturalmente, questo è un esempio semplice, ma nei progetti reali, MapForce può gestire trasformazioni complesse con molteplici fonti, trasformazioni a livelli e tabelle decisionali di grandi dimensioni, il tutto in modo visivo, senza dover nascondere la logica nel codice o utilizzare una complessa serie di funzioni condizionali.
Crea la tua tabella decisionale
Le tabelle decisionali trasformano la complessa rete di condizioni presenti nelle vostre mappature dei dati in una struttura chiara e facilmente gestibile. Centralizzando le regole di business in un'unica tabella, si riducono gli errori, si elimina la logica nascosta e si migliora il controllo. Insieme all'approccio visivo di MapForce per la mappatura dei dati, le tabelle decisionali possono semplificare la gestione, il controllo e l'aggiornamento di complessi processi ETL e di integrazione dei dati.
Potete provare subito con un Prova gratuita di 30 giorni di MapForce.