Che cos'è il data modeling?

Piccoli uffici privati colorati

Che cos'è il data modeling?

Il data modeling è il processo di creazione di una rappresentazione visiva di un intero sistema informativo o di parti di esso per comunicare le connessioni tra punti e strutture di dati.

L'obiettivo del data modeling è 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 in base alle esigenze aziendali. Le regole e i requisiti sono definiti in anticipo tramite feedback degli stakeholder aziendali, così da poter 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 con la raccolta di informazioni sui requisiti aziendali da stakeholder e utenti finali. Queste business rules vengono poi tradotte in strutture di dati per formulare un progetto di database concreto. Un modello di dati può essere paragonato a una roadmap, a un blueprint o a qualsiasi diagramma formale che faciliti una comprensione più approfondita di ciò che si sta progettando.

Il data modeling impiega schemi standardizzati e tecniche formali. Questo fornisce un modo comune, coerente e prevedibile di definire e gestire le risorse dati all'interno di un'organizzazione, o anche oltre.

Idealmente, i modelli di dati sono documenti viventi che si evolvono insieme alle esigenze aziendali che mutano. Svolgono un ruolo importante nel supportare i processi aziendali e pianificare l'architettura e la strategia IT. I modelli di dati possono essere condivisi con fornitori, partner e/o colleghi del settore.

Le ultime notizie nel campo della tecnologia, supportate dalle analisi degli esperti

Resta al passo con le tendenze più importanti e interessanti del settore relative ad AI, automazione, dati e oltre con la newsletter Think. Leggi l' Informativa sulla privacy IBM.

Grazie per aver effettuato l'iscrizione!

L'abbonamento sarà fornito in lingua inglese. Troverai un link per annullare l'iscrizione in tutte le newsletter. Puoi gestire i tuoi abbonamenti o annullarli qui. Per ulteriori informazioni, consulta l'Informativa sulla privacy IBM.

Tipi di modelli di dati

Come ogni processo di progettazione, la progettazione di database e sistemi informativi inizia da un alto livello di astrazione e poi diventa sempre più concreta e specifica. I modelli di dati possono generalmente essere suddivisi in tre categorie, che variano in base al grado di astrazione. Il processo inizierà con un modello concettuale, progredirà verso un modello logico e si concluderà con un modello fisico. Ogni tipo di modello di dati verrà discusso più in dettaglio nelle sezioni successive:

Modelli di dati concettuali

Vengono anche definiti modelli di dominio e offrono una visione d'insieme di ciò che il sistema conterrà, come sarà organizzato e quali business rules sono coinvolte. I modelli concettuali vengono solitamente creati come parte del processo di raccolta dei requisiti iniziali del progetto. In genere, includono le classi di entità (che definiscono i tipi di elementi che è importante che l'azienda rappresenti nel modello di dati), le loro caratteristiche e vincoli, le relazioni tra esse e i requisiti di sicurezza e integrità dei dati pertinenti. Qualsiasi notazione è tipicamente semplice.

Grafico di data modeling concettuale

Modelli di dati logici

Sono meno astratti e forniscono maggiori dettagli sui concetti e le relazioni nel dominio in esame. Si segue uno dei diversi sistemi di notazione formale di data modeling. Questi indicano gli attributi dei dati, come i tipi di dati e le loro lunghezze corrispondenti, e mostrano le relazioni tra le entità. I modelli di dati logici non specificano alcun requisito tecnico di sistema. Questa fase viene spesso omessa nelle pratiche Agile o DevOps. I modelli di dati logici possono essere utili negli ambienti di implementazione altamente procedurali o per i progetti orientati ai dati per natura, come la progettazione di data warehouse o lo sviluppo di sistemi di reportistica.

Grafico di data modeling logico

Modelli di dati fisici

Forniscono uno schema di come i dati saranno fisicamente memorizzati all'interno di un database. Pertanto, sono i meno astratti di tutti. Offrono una progettazione finalizzata che può essere implementata come database relazionale, comprese tabelle associative che illustrano le relazioni tra le entità, nonché le chiavi primarie ed esterne che verranno utilizzate per mantenere tali relazioni. I modelli di dati fisici possono includere proprietà specifiche del sistema di gestione del database (DBMS), inclusa la regolazione delle prestazioni.

Grafico di data modeling fisico

Processo di data modeling

Come disciplina, il data modeling invita gli stakeholder a valutare il trattamento e l'archiviazione dei dati nei minimi dettagli. Le tecniche di data modeling hanno convenzioni diverse che determinano quali simboli vengono utilizzati per rappresentare i dati, come vengono disposti i modelli e come vengono trasmessi i requisiti aziendali. Tutti gli approcci forniscono workflow formalizzati che includono una sequenza di attività da eseguire in modo iterativo. Generalmente, questi workflow si presentano così:

  1. Identifica le entità. Il processo di data modeling inizia con l'identificazione delle cose, degli eventi o dei concetti rappresentati nel set di dati che deve essere modellato. Ogni entità dovrebbe essere coesa e logicamente distinta da tutte le altre.
  2. Identifica le proprietà chiave di ciascuna entità. Ogni tipo di entità può essere distinta da tutte le altre perché possiede una o più proprietà uniche, chiamate attributi. Ad esempio, un'entità chiamata "cliente" potrebbe possedere attributi come nome, cognome, numero di telefono e formula di saluto, mentre un'entità chiamata "indirizzo" potrebbe includere il nome e numero della via, una città, uno stato, un paese e un codice postale.
  3. Identifica le relazioni tra entità. La prima bozza di un modello di dati specificherà la natura delle relazioni che ciascuna entità ha con le altre. Nell'esempio precedente, ogni cliente "vive in" un indirizzo. Se quel modello fosse ampliato per includere un'entità chiamata "ordini", anche ogni ordine verrebbe spedito e fatturato a un indirizzo. Queste relazioni sono solitamente documentate tramite l'Unified Modeling Language (UML).
  4. Mappa completamente gli attributi sulle entità. Questo garantirà che il modello rifletta il modo in cui l'azienda utilizzerà i dati. Ci sono diversi modelli formali di data modeling che sono ampiamente utilizzati. Spesso gli sviluppatori orientati agli oggetti applicano schemi di analisi o di progettazione, mentre gli stakeholder di altri domini aziendali potrebbero ricorrere ad altri schemi.
  5. Assegna le chiavi in base alle necessità e decidi un grado di normalizzazione che bilanci la necessità di ridurre la ridondanza con i requisiti di prestazioni. La normalizzazione è una tecnica per organizzare i modelli di dati (e i database che rappresentano) in cui degli identificatori numerici, chiamati chiavi, vengono assegnati a gruppi di dati per rappresentare le relazioni tra di essi senza ripetere i dati. Ad esempio, se a ciascuno dei clienti viene assegnata una chiave, tale chiave può essere collegata sia al loro indirizzo che alla cronologia degli ordini senza dover ripetere queste informazioni nella tabella dei nomi dei clienti. La normalizzazione tende a ridurre la quantità di storage richiesta da un database, ma può farlo a costo delle prestazioni delle query.
  6. Finalizza e convalida il modello di dati. Il data modeling è un processo iterativo che deve essere ripetuto e perfezionato man mano che le esigenze aziendali cambiano.
Mixture of Experts | 12 dicembre, episodio 85

Decoding AI: Weekly News Roundup

Unisciti al nostro gruppo di livello mondiale di ingegneri, ricercatori, leader di prodotto e molti altri mentre si fanno strada nell'enorme quantità di informazioni sull'AI per darti le ultime notizie e gli ultimi insight sull'argomento.

Tipi di data modeling

La modellazione dei dati si è evoluta insieme ai sistemi di gestione dei database, con i tipi di modelli che sono diventati sempre più complessi con l'accrescersi delle esigenze di data storage delle aziende. Ecco diversi tipi di modelli:

  • I modelli di dati gerarchici rappresentano relazioni "uno a molti" in un formato ad albero. In questo tipo di modello, ogni record ha una singola radice o un singolo livello primario mappati su una o più tabelle di livello secondario. Questo modello fu implementato nell'IBM® Information Management System (IMS), introdotto nel 1966 e diffuso rapidamente, specialmente nel settore bancario. Sebbene questo approccio sia meno efficiente rispetto ai modelli di database sviluppati più recentemente, è ancora utilizzato nei sistemi XML (Extensible Markup Language) e nei sistemi informativi geografici (GIS).
  • I modelli di dati relazionali furono inizialmente proposti dal ricercatore di IBM E.F. Codd nel 1970. Sono ancora oggi implementati nei diversi database relazionali comunemente utilizzati nell'informatica aziendale. Il data modeling relazionale non richiede una comprensione dettagliata delle proprietà fisiche del data storage utilizzato. In esso, i segmenti di dati sono esplicitamente uniti tramite l'uso di tabelle, il che riduce la complessità del database.

I database relazionali utilizzano spesso un linguaggio di query strutturato (SQL) per la gestione dei dati. Questi database funzionano bene per mantenere l'integrità dei dati e ridurre al minimo la ridondanza. Sono spesso utilizzati nei sistemi POS, così come in altri tipi di elaborazione delle transazioni.

  • I modelli di dati entità-relazione (ER) utilizzano diagrammi formali per rappresentare le relazioni tra le entità in un database. I data architect utilizzano diversi strumenti di modellazione ER per creare mappe visive che trasmettono gli obiettivi di progettazione del database.
  • I modelli di dati orientati agli oggetti si sono affermati con la programmazione orientata agli oggetti e sono diventati popolari a metà degli anni Novanta. Gli "oggetti" coinvolti sono astrazioni di entità del mondo reale. Gli oggetti sono raggruppati in gerarchie di classi e hanno caratteristiche associate. I database orientati agli oggetti possono incorporare tabelle, ma possono anche supportare relazioni di dati più complesse. Questo approccio viene utilizzato nei database multimediali e ipertestuali e in altri casi d'uso.
  • I modelli di dati dimensionali furono sviluppati da Ralph Kimball e progettati per ottimizzare le velocità di recupero dei dati a scopo analitico in un data warehouse. Mentre i modelli relazionali ed ER mettono in primo piano uno storage efficiente, i modelli dimensionali aumentano la ridondanza per semplificare la localizzazione delle informazioni per il reporting e il recupero. Questa modellazione viene in genere utilizzata nei sistemi OLAP.

Due modelli di dati dimensionali popolari sono lo schema a stella, in cui i dati sono organizzati in fatti (elementi misurabili) e dimensioni (informazioni di riferimento), dove ogni fatto è circondato dalle dimensioni associate in un motivo simile a una stella. L'altro è lo schema a fiocco di neve, che somiglia allo schema a stella ma include strati aggiuntivi delle dimensioni associate, quindi il pattern di ramificazione è più complesso.

Benefici del data modeling

Il data modeling consente a sviluppatori, data architect, analisti aziendali e stakeholder di visualizzare e comprendere più facilmente le relazioni tra i dati in un database o in un data warehouse. Inoltre, può:

  • Ridurre gli errori nello sviluppo di software e database.
  • Aumentare la coerenza nella documentazione e nella progettazione dei sistemi in tutta l'azienda.
  • Migliorare le prestazioni di applicazioni e database.
  • Facilitare la mappatura dei dati in tutta l'organizzazione.
  • Migliorare la comunicazione tra sviluppatori e team di business intelligence.
  • Facilitare e accelerare il processo di progettazione di database a livello concettuale, logico e fisico.

Strumenti di data modeling

Oggi ci sono numerose soluzioni commerciali e open source di ingegneria software assistita dal computer (CASE) che sono ampiamente utilizzate, inclusi molteplici strumenti di data modeling, diagrammatizzazione e visualizzazione. Ecco alcuni esempi:

  • erwin Data Modeler è uno strumento di data modeling basato sul linguaggio di data modeling IDEF1X (Integration DEFinition for Information Modeling) che ora supporta altre metodologie di notazione, tra cui un approccio dimensionale.
  • Enterprise Architect è uno strumento di modellazione e progettazione visiva che supporta la modellazione di sistemi informativi e architetture aziendali, nonché di applicazioni software e database. Si basa su linguaggi e standard orientati agli oggetti.
  • ER/Studio è un software di progettazione di database compatibile con molti dei sistemi di gestione di database più diffusi. Supporta sia il data modeling relazionale che quello dimensionale.
  • Gli strumenti gratuiti di data modeling includono soluzioni open source come Open ModelSphere.
Soluzioni correlate
Strumenti e soluzioni di data science

Usa strumenti e soluzioni di data science per scoprire modelli e creare previsioni utilizzando dati, algoritmi, tecniche di machine learning e AI.

Esplora le soluzioni di data science
IBM Cognos Analytics

Introduzione a Cognos Analytics 12.0, insight basati sull'AI per prendere decisioni migliori.

Esplora Cognos Analytics
Servizi di consulenza per dati e analytics

Sblocca il valore dei dati enterprise con IBM Consulting, creando un'organizzazione basata su insight in grado di generare vantaggi aziendali.

Esplora i servizi di analytics
Fasi successive

Usa strumenti e soluzioni di data science per scoprire modelli e creare previsioni utilizzando dati, algoritmi, tecniche di machine learning e AI.

Esplora le soluzioni di data science Esplora i servizi di analytics