La modellazione dei dati è il processo di creazione di una rappresentazione visiva di un intero sistema informativo o di parti di esso per stabilire delle connessioni tra punti e strutture di dati. L'obiettivo è illustrare i tipi di dati utilizzati e memorizzati all'interno del sistema, le relazioni tra questi tipi di dati, i modi in cui i dati possono essere raggruppati e organizzati e i loro formati e attributi.
I modelli di dati sono costruiti intorno alle esigenze aziendali. Regole e requisiti sono definiti in anticipo attraverso il feedback delle parti aziendali interessate in modo che possano essere incorporati nella progettazione di un nuovo sistema o adattati nell'iterazione di uno esistente.
I dati possono essere modellati a vari livelli di astrazione. Il processo inizia raccogliendo informazioni sui requisiti di business dalle parti interessate e dagli utenti finali. Queste regole di business sono poi tradotte in strutture di dati per formulare un progetto di database concreto. Un modello di dati può essere paragonato a una roadmap, un progetto di un architetto o qualsiasi diagramma formale che faciliti una comprensione più profonda di ciò che viene progettato.
La modellazione dei dati impiega schemi standardizzati e tecniche formali. Questo fornisce un modo comune, coerente e prevedibile di definire e gestire le risorse di dati in tutta un'organizzazione e anche oltre.
Idealmente i modelli di dati sono documenti dinamici che si evolvono con il mutare delle esigenze aziendali. Giocano un ruolo importante nel supportare i processi di business e nel pianificare l'architettura e la strategia IT. I modelli di dati possono essere condivisi con fornitori, partner e/o colleghi del settore.
Come ogni processo di progettazione, la progettazione di database e sistemi informativi parte da un alto livello di astrazione e diventa via via più concreta e specifica. I modelli di dati possono essere generalmente divisi in tre categorie, che variano a seconda del loro grado di astrazione. Il processo inizierà con un modello concettuale, per poi continuare con un modello logico e concludersi con un modello fisico. Ogni tipo di modello di dati è discusso più dettagliatamente di seguito:
Come disciplina, la modellazione dei dati chiede alle parti interessate di valutare l'elaborazione e l'immagazzinamento dei dati nei minimi dettagli. Le tecniche di modellazione dei dati hanno diverse convenzioni che stabiliscono quali simboli sono usati per rappresentare i dati, come sono disposti i modelli e come sono trasmessi i requisiti di business. Tutti gli approcci prevedono flussi di lavoro formalizzati che includono una sequenza di compiti da eseguire in modo iterativo. Questi flussi di lavoro generalmente sono simili al seguente:
La modellazione dei dati si è evoluta insieme ai sistemi di gestione dei database, con tipi di modelli che aumentano di complessità man mano che i bisogni di archiviazione dei dati delle aziende crescono. Di seguito sono riportati diversi tipi di modello:
I database relazionali utilizzano spesso un linguaggio di interrogazione strutturato (SQL - Structured Query Language) per la gestione dei dati. Questi database vanno bene per mantenere l'integrità dei dati e minimizzare la ridondanza. Sono spesso utilizzati nei sistemi di punti vendita, così come per altri tipi di elaborazione delle transazioni.
Tra i modelli di dati dimensionali più diffusi c'è lo schema a stella, in cui i dati sono organizzati in fatti (elementi misurabili) e dimensioni (informazioni di riferimento), dove ogni fatto è circondato dalle relative dimensioni associate in una struttura a stella. L'altro è lo schema snowflake, che assomiglia allo schema a stella ma include ulteriori strati di dimensioni associate, rendendo il modello di ramificazione più complesso.
La modellazione dei dati rende più facile per gli sviluppatori, i data architect, gli analisti di business e altre parti interessate visualizzare e capire le relazioni tra i dati in un database o un data warehouse. In aggiunta può:
Oggigiorno esistono numerose soluzioni commerciali e open source per l'ingegneria del software assistita dal computer (CASE - computer-aided software engineering), tra cui diversi strumenti per la modellazione dei dati, la creazione di diagrammi e la visualizzazione. Ecco alcuni esempi:
Un data warehouse su cloud completamente gestito ed elastico, creato per analytics a AI ad alte prestazioni
Ibrido. Aperto. Resiliente. La tua piattaforma e il tuo partner per la trasformazione digitale.
Software cloud ibrido basato su AI.