Come confrontare file CSV o confrontare un file CSV con una tabella di un database
I file CSV sono un metodo rapido e pratico per registrare dati strutturati in un formato generico. Data la facilità con cui si possono creare file CSV, è possibile che si generino rapidamente numerose versioni simili di file CSV di grandi dimensioni. Spesso, diventa necessario confrontare i file CSV per individuare la versione desiderata. In uno scenario di ETL, un analista di dati potrebbe voler confrontare un file CSV con una tabella di database per la validazione o per aggiornare i dati.
DiffDog, lo strumento di confronto e unione XML di Altova, supporta il formato CSV come formato nativo per il confronto e può confrontare e unire selettivamente dati da file CSV a file CSV, oppure tra un file CSV e una tabella di database. Vediamo un esempio.

Poiché i file CSV contengono dati strutturati, viene avviata una comparazione CSV utilizzando la funzione "Confronta dati del database" di DiffDog, accedendo al menu "File" o tramite l'icona dello strumento. Questo apre una nuova finestra di comparazione in cui l'utente seleziona gli elementi da confrontare, uno a sinistra e uno a destra.

Si prega di notare che DiffDog consente di confrontare file CSV con virgole, tabulazioni o punti e virgola come separatori di colonna, e file con o senza righe di intestazione.
Nella schermata qui sotto, l'utente ha selezionato i file di confronto sinistro e destro, ha associato i file al livello superiore per confrontare tutte le colonne e ha eseguito il confronto cliccando sull'icona verde "Confronta" situata nell'angolo in alto a destra della barra degli strumenti.

Notare il numero di righe per ogni file, indicato vicino al nome dell'oggetto e all'icona "diverso" nel collegamento. Questi due file CSV hanno lo stesso numero di righe, ma i contenuti non sono identici. I nomi delle colonne sono elencati sotto ogni nome dell'oggetto. È possibile deselezionare qualsiasi collegamento per impedire il confronto di quella specifica colonna.
Successivamente, vogliamo esaminare le differenze precise tra i file CSV. Cliccando con il tasto destro sulla linea che indica una connessione non corrispondente, si apre un menu che offre l'opzione di visualizzare i risultati dettagliati.

La finestra dei risultati mostra una visualizzazione dettagliata di entrambi i file.

La barra degli strumenti di navigazione in alto consente di individuare rapidamente la prima differenza tra i file. Ad esempio, un ordine per il cliente numero 544 potrebbe essere stato inserito in modo errato e necessita di essere riclassificato in una regione diversa e assegnato a un altro responsabile vendite.
All'interno di questa finestra, è possibile selezionare e unire le singole differenze tra i file CSV tramite un menu contestuale accessibile con un clic destro:

È possibile unire le differenze in entrambe le direzioni e salvare i risultati aggiornando i file CSV esistenti oppure salvando nuovi file con nomi diversi.
Confronta i file CSV con le tabelle del database
La funzione di confronto tra un file CSV e un database si attiva facilmente utilizzando la procedura guidata di connessione, specificando un database come oggetto di confronto su entrambi i lati. L'immagine sottostante mostra il nostro file CSV originale sul lato sinistro e un database SQLite sul lato destro.

In questo esempio, il contenuto del file CSV e della tabella del database sono identici. Se ci sono delle differenze, tutte le funzionalità di confronto e unione tra file CSV descritte in precedenza funzionano anche per i confronti tra file CSV e tabelle del database. Qualsiasi modifica apportata alla tabella del database può essere immediatamente salvata nel database direttamente dalla finestra dei risultati.
Le seguenti banche dati sono supportate:
• Uccello di fuoco
• IBM DB2 per iSeries®
• IBM DB2®
• Informix®
• MariaDB
• Microsoft Access™
• Microsoft® Azure SQL
• Microsoft® SQL Server®
• MySQL®
• Oracle®
• PostgreSQL
• Progress OpenEdge
• SQLite
• Sybase® ASE
• Teradata
Automatizzate il confronto di file CSV con DiffDog Server
È possibile automatizzare la generazione di report di confronto per le comparazioni tra file CSV e tra file CSV e database, utilizzando DiffDog Server. Una volta installato su un computer all'interno della vostra rete, DiffDog Server funziona come un servizio. È possibile eseguire le comparazioni invocando DiffDog Server tramite un'interfaccia a riga di comando o attraverso script eseguibili.
Se è necessario eseguire frequentemente la stessa operazione di confronto dei dati, è possibile configurarla una sola volta in DiffDog e salvarla in un file di confronto dei dati del database (.dbdif), che può essere eseguito automaticamente dal server DiffDog.
DiffDog Server è disponibile per le piattaforme Windows, Windows Server, Linux e macOS.
Scarica una versione di prova gratuita per scoprire di persona quanto facilmente DiffDog può aiutarti a confrontare file CSV!