Che cos’è un file piatto?

Un file flat è una raccolta di informazioni archiviate e accessibili in modo sequenziale in un database, spesso creato per archiviare informazioni in modo non strutturato. I fogli con valori separati da virgola (CSV), ad esempio, presentano le informazioni con ogni campo separato dal successivo da una virgola. Sebbene un file system flat offra alcuni vantaggi, spesso rende molto ingombrante l’archiviazione e l’accesso a grandi quantità di dati. La maggior parte dei database utilizzati oggi sono sistemi relazionali che utilizzano query strutturate per recuperare informazioni e presentarle all’utente.

Come Funziona

Per rendere funzionale un modello dati file flat, tutte le informazioni rilevanti su un record devono essere archiviate nello stesso file. In un foglio CSV, ad esempio, non si applicano formati specifici dell’applicazione ai dati contenuti nel file; solo una virgola indica la fine di un campo in un record. Ciascun record viene scritto su una riga del file, consentendo di memorizzare separatamente tutti i dati di un singolo record dagli altri record.

Tali database possono diventare rapidamente molto grandi e difficili da gestire a causa del modo semplice in cui sono organizzati. Molti modelli di dati moderni utilizzano tabelle connesse per organizzare gruppi di dati correlati. Ciò rende tali informazioni più facili da individuare e più flessibili con cui lavorare.

Utilizzo di un sistema piatto

Se un cliente chiama un’azienda per effettuare un ordine, qualcuno inserisce le sue informazioni in una tabella o in un database. Quella stessa persona, o qualcun altro, inserisce quindi le informazioni per quel particolare ordine. Un file system flat potrebbe archiviare tutte queste informazioni per il cliente in un unico file.
Ciò non è necessario, tuttavia, potrebbero essere mantenuti più file: uno per il cliente e uno per ogni singolo ordine. Le informazioni su un ordine memorizzato in un file flat non sono associate alle informazioni sul cliente memorizzate in un altro. Questi file non sono in alcun modo correlati, quindi chi utilizza un database di file flat per trovare informazioni sui clienti può facilmente perdere file aggiuntivi sugli ordini.
Debolezze di questo sistema
Poiché ogni record deve essere completo in sé e per sé, un file system piatto di solito si traduce in file molto grandi o in una mancanza di connettività tra le informazioni al suo interno. Il database comune utilizzato oggi è un database relazionale. Questo modello consente di mettere in relazione le informazioni in una tabella con altre tabelle utilizzando i campi chiave che esistono in ciascuna di esse. Più tabelle vengono collegate attraverso questi campi, consentendo a ciascuna di avere solo una parte delle informazioni totali necessarie.
Database relazionali
Lo stesso esempio di cliente sopra riportato potrebbe apparire molto diverso in un modello relazionale. Quando il cliente chiama per effettuare un ordine, qualcuno inserisce le sue informazioni in una tabella “cliente” all’interno del database. Un’altra persona può quindi inserire le informazioni per il suo ordine in una tabella separata. Ognuna di queste tabelle include campi che le collegano tra loro. Ciò significa che qualcuno può utilizzare il sistema per trovare più facilmente tutte le informazioni per un cliente, inclusa la cronologia totale degli ordini.
Uso continuato
I database di file flat hanno alcuni usi, anche se la funzionalità di questo modello di dati non è altrettanto efficiente di un approccio relazionale più veloce. I sistemi semplici possono contenere facilmente informazioni di base per un database veloce. La mancanza di campi collegati elimina anche gli errori che possono derivare da tabelle mancanti, quindi molti database scaricabili utilizzano questo formato per evitare tali problemi.