Come validiamo i file CSV
Una panoramica tecnica del nostro motore di validazione CSV e dei controlli che eseguiamo su ogni file.
Rilevamento della codifica
Analizziamo i pattern di byte del tuo file per rilevare la codifica dei caratteri. Codifiche comuni come UTF-8, UTF-8 con BOM, Latin-1 (ISO-8859-1) e Windows-1252 vengono tutte rilevate. Se è presente un BOM (Byte Order Mark), viene identificato e segnalato. I file non-UTF-8 vengono convertiti prima dell'analisi.
Rilevamento automatico del delimitatore
Il nostro motore campiona le prime righe del tuo file e conta le occorrenze dei delimitatori comuni: virgola (,), punto e virgola (;), tabulazione e pipe (|). Viene selezionato il delimitatore con l'occorrenza più costante. Questo gestisce le differenze regionali dove i punti e virgola sono comuni nelle esportazioni CSV europee.
Validazione della struttura
Verifichiamo che ogni riga abbia lo stesso numero di colonne dell'intestazione. Le righe con colonne mancanti o aggiuntive vengono segnalate. Controlliamo anche righe vuote, delimitatori finali e fine riga corretti. Ogni problema strutturale viene categorizzato per gravità.
Validazione delle intestazioni
Se viene rilevata una riga di intestazione, controlliamo intestazioni vuote, nomi duplicati e intestazioni con spazi iniziali/finali. Intestazioni pulite e uniche sono essenziali per i sistemi di importazione dati e i database.
Analisi dei tipi di dati
Per ogni colonna, campioniamo i dati per determinare il tipo di dati predominante: intero, float, booleano, data, email, URL o stringa. Questo aiuta a identificare colonne dove i tipi di dati sono misti o inattesi, indicando spesso problemi di qualità dei dati.
Rilevamento duplicati e righe vuote
Calcoliamo l'hash di ogni riga per rilevare efficacemente i duplicati esatti. Le righe vuote (righe senza dati o con solo delimitatori) vengono anch'esse identificate e contate. Entrambi i problemi causano comunemente problemi durante l'importazione dei dati.
Calcolo del punteggio di qualità
Il punteggio di qualità parte da 100 e viene ridotto in base alla gravità e al numero di problemi trovati. Problemi importanti come colonne incoerenti o problemi di codifica causano deduzioni maggiori, mentre problemi minori come spazi finali causano deduzioni minori.
Fasce di punteggio
- 90-100: Eccellente – Il file è pulito e pronto all'uso
- 80-89: Buono – Problemi minori che potrebbero non causare difficoltà
- 60-79: Discreto – Alcuni problemi da esaminare
- 40-59: Scarso – Problemi significativi che necessitano di correzione
- 0-39: Critico – Problemi gravi che probabilmente causeranno errori di importazione