Cosa si intende per creazione di modelli di dati?

La creazione di modelli di dati è il processo di creazione di una rappresentazione visiva o di uno schema che definisce i sistemi di raccolta e gestione delle informazioni di una qualsiasi organizzazione. Questo schema o modello di dati aiuta le diverse parti interessate, come analisti di dati, data scientist e data engineer, a creare una visione unificata dei dati dell'organizzazione. Il modello delinea i dati che l'azienda raccoglie, la relazione tra i diversi set di dati e i metodi che verranno utilizzati per archiviare e analizzare i dati.

Perché la creazione di modelli di dati è importante?

Le organizzazioni oggi raccolgono una grande quantità di dati da molte fonti diverse. In ogni caso, i dati grezzi non sono sufficienti. Si devono analizzare i dati per trovare informazioni utili che possano guidare verso decisioni vantaggiose per l'azienda. Un'analisi di dati accurata necessita di raccolta, archiviazione ed elaborazione dati efficaci. Vi sono diverse tecnologie database e strumenti di elaborazione dati, inoltre set di dati differenti richiedono strumenti differenti per analisi efficaci.

La creazione di modelli di dati offre l'opportunità di comprendere i propri dati e fare le giuste scelte tecnologiche per archiviare e gestire questi dati. Allo stesso modo in cui un architetto progetta uno schema prima di costruire una casa, le parti interessate progettano un modello dati prima di pianificare soluzioni database per la propria organizzazione.

La creazione di modelli di dati porta i seguenti vantaggi:

  • Riduce gli errori nello sviluppo del software database
  • Facilita la velocità e l'efficienza della progettazione e dello sviluppo database
  • Crea uniformità nella documentazione dei dati e nella progettazione di sistema attraverso l'organizzazione
  • Facilita la comunicazione tra data engineer e team di business intelligence

Quali sono le tipologie di modelli di dati?

La creazione di modelli di dati parte solitamente dalla rappresentazione concettuale dei dati e prosegue con la loro rappresentazione all'interno del contesto delle tecnologie scelte. Gli analisti e le parti interessate creano molte tipologie differenti di modelli di dati durante la fase di progettazione dati. Di seguito sono riportate le tre principali tipologie di modelli di dati:

Modello di dati concettuale

I modelli di dati concettuali offrono una visione panoramica dei dati. Spiegano ciò che segue:

  • Quali dati contiene il sistema
  • Gli attributi e le condizioni dei dati o limitazioni sui dati
  • A quali regole aziendali si riferiscono i dati
  • Come i dati sono meglio organizzati
  • Requisiti di sicurezza e di integrità dei dati

Le parti interessate e gli analisti aziendali creano solitamente il modello concettuale. Si tratta di una semplice rappresentazione diagrammatica che non segue le regole formali di creazione di modelli di dati. Ciò che conta è che esso aiuta sia le parti interessate tecniche che quelle non tecniche a condividere una visione comune e convenire su obiettivo, portata e progettazione del proprio progetto dati.

Esempi di modelli di dati concettuali

Per esempio, il modello di dati concettuale per una concessionaria di automobili potrebbe mostrare le entità di dati in questo modo:

  1. Un'entità Showroom che rappresenta le informazioni sui diversi punti vendita della concessionaria
  2. Un'entità Auto che rappresenta le differenti automobili che la concessionaria vende attualmente
  3. Un'entità Clienti che rappresenta tutti i clienti che hanno acquistato presso la concessionaria
  4. Un'entità Vendite che rappresenta l'informazione sulle vendite effettive
  5. Un'entità Venditore che rappresenta le informazioni riguardo tutti i venditori che lavorano per la concessionaria

Questo modello concettuale includerebbe anche i requisiti aziendali, come i seguenti:

  • Ogni auto deve appartenere a uno specifico showroom.
  • Ogni vendita deve avere almeno un venditore e un cliente associati.
  • Ogni auto deve avere una marca e un numero di prodotto.
  • Ogni cliente deve fornire il proprio numero di telefono e indirizzo email.

I modelli concettuali agiscono dunque come ponte tra le regole aziendali e il sistema di gestione di database fisico sottostante (DBMS). I modelli di dati concettuali sono inoltre chiamati modelli di dominio.

Modello di dati logico

I modelli di dati logici mappano le classi di dati concettuali nelle strutture dati tecniche. Offrono maggiori dettagli sui concetti dati e le relazioni dati complesse che erano state individuate nel modello di dati concettuale, come questi:

  • Tipologie di dati dei vari attributi (per esempio, serie o numero)
  • Relazioni tra entità di dati
  • Attributi primari o campi chiave nei dati

Architetti e analisti dei dati lavorano insieme per creare il modello logico. Essi seguono uno dei numerosi sistemi di creazione di modelli di dati per creare la rappresentazione. A volte dei team flessibili potrebbero scegliere di saltare questo step e passare direttamente da modelli concettuali a modelli fisici. In ogni caso, questi modelli sono utili per progettare vasti database, chiamati data warehouse, e sistemi di report automatici.

Esempi di modelli di dati logici

Nel nostro esempio della concessionaria di auto, il modello di dati logico espanderebbe il modello concettuale ed esaminerebbe approfonditamente le classi di dati, come segue:

  • L'entità Showroom possiede campi come nome e ubicazione in qualità di dati di testo e un numero di telefono in qualità di dati numerici.
  • L'entità Clienti possiede un campo indirizzo email con il formato xxx@esempio.com o xxx@esempio.com.yy. Il campo del nome non può essere più lungo di 100 caratteri.
  • L'entità Vendite ha un nome cliente e un nome venditore come campi, insieme alla data di vendita come dato di data e la somma come dato decimale.

I modelli logici così agiscono come ponte tra i modelli di dati concettuali e la tecnologia sottostante e il linguaggio di database che gli sviluppatori utilizzano per creare il database. Comunque, essi sono tecnologia-indipendenti, ed è possibile implementarli in qualsiasi linguaggio di database. I data engineer e le parti interessate ai dati, generalmente, prendono decisioni tecnologiche dopo aver creato un modello di dati logico.

Modello di dati fisico

I modelli di dati fisici mappano i modelli di dati logici in una specifica tecnologia DBMS e utilizzano la terminologia del software. Per esempio, forniscono dettagli su ciò che segue:

  • Tipologie di campo di dati come rappresentati nel DBMS
  • Relazioni tra dati come rappresentate nel DBMS
  • Ulteriori dettagli, come l'ottimizzazione delle prestazioni

I data engineer creano il modello fisico prima dell'implementazione finale del progetto. Essi seguono, inoltre, le tecniche formali di creazione di modelli di dati per assicurarsi di aver coperto tutti gli aspetti del progetto.

Esempi di modelli di dati fisici

Immaginiamo che la concessionaria di auto abbia deciso di creare un archivio dati in recupero flessibile Amazon S3 Glacier. Il loro modello di dati fisico descrive le seguenti specifiche:

  • In Vendite, l'importo di vendita è una tipologia di dato fluttuante e la data della vendita è un tipo di dato a marca temporale.
  • In Clienti, il nome del cliente è una tipologia di dato di stringa.
  • Nella terminologia di recupero flessibile S3 Glacier, un insieme di credenziali è la localizzazione geografica dei propri dati. 

Il proprio modello di dati fisico include inoltre dettagli aggiuntivi, come la Regione AWS nella quale si creerà il proprio insieme di credenziali. Il modello di dati fisico, quindi, agisce come ponte tra il modello di dati logico e l'implementazione finale della tecnologia.

Quali sono le tipologie di tecniche di creazione di modelli di dati?

Le tecniche di creazione di modelli di dati sono i diversi metodi che si possono utilizzare per creare diversi modelli di dati. Gli approcci si sono evoluti nel tempo come risultato delle innovazioni nei concetti di database e gestione dati. Di seguito sono riportate le principali tipologie di creazione di modelli di dati:

Creazione di modelli di dati gerarchica

Nella creazione di modelli di dati gerarchica, è possibile rappresentare le relazioni tra vari elementi di dati in un formato ad albero. I modelli di dati gerarchici rappresentano relazioni uno a molti, con classi di dati padri o origine che conducono a diversi figli.

Nell'esempio della concessionaria di auto, la classe padre Showroom avrebbe entrambe le entità Auto e Venditori come figli, dal momento che un singolo showroom ha diverse auto e venditori che vi lavorano.

Creazione di modelli di dati a grafo

La creazione di modelli di dati gerarchica si è evoluta nel tempo in creazione di modelli di dati a grafo. I modelli di dati a grafo rappresentano le relazioni tra dati che trattano equamente le entità. Le entità possono collegarsi tra loro in relazioni uno a molti o molti a molti, senza nessun concetto di padre o figlio.

Per esempio, un singolo showroom può avere diversi venditori e un singolo venditore può lavorare presso diversi showroom se i suoi turni variano per ubicazione.

Creazione di modelli di dati relazionale

La creazione di modelli di dati relazionale è un approccio di creazione di modelli popolare che mostra le classi di dati come tabelle. Diverse tabelle dati si uniscono o si collegano attraverso l'uso di chiavi che rappresentano la relazione di entità nel mondo reale. Si può utilizzare la tecnologia di database relazionale per archiviare dati strutturati e un modello di dati relazionale è un metodo utile per rappresentare la propria struttura di database relazionale.

Per esempio, la concessionaria di auto avrebbe dei modelli di dati relazionali che rappresentano la tabella Venditore e quella Auto, come mostrato di seguito:

ID venditore Nome               
1 Jane
2 John
ID auto Marca dell'auto
C1 XYZ
C2 ABC

L'ID venditore e l'ID auto sono chiavi primarie che identificano in maniera univoca entità individuali del mondo reale. Nella tabella Showroom, queste chiavi primarie agiscono come chiavi esterne nei segmenti di dati.

 

ID showroom Nome dello showroom ID venditore ID auto           
S1 Showroom di NY 1 C1

 

Nei database relazionali, le chiavi primarie ed esterne collaborano per mostrare la relazione tra dati. La tabella precedente dimostra che gli showroom possono possedere venditori e auto.

Creazione di modelli di dati entità-relazione

La creazione di modelli di dati entità-relazione (ER) utilizza diagrammi formali per rappresentare le relazioni tra entità in un database. Gli architetti dei dati utilizzano diversi strumenti di creazione di modelli ER per rappresentare i dati.

Creazione di modelli di dati orientata agli oggetti

La programmazione orientata agli oggetti utilizza strutture di dati chiamate oggetti per archiviare dati. Questi oggetti di dati sono astrazioni software di entità reali. Per esempio, in un modello di dati orientato agli oggetti, la concessionaria di auto possiederebbe oggetti di dati come Clienti con attributi quali nome, indirizzo e numero di telefono. Si archivierebbero i dati del cliente in modo tale che ogni cliente reale sia rappresentato come un oggetto dati cliente.

I modelli di dati orientati agli oggetti aggirano numerose delle limitazioni dei modelli di dati relazionali e sono popolari nei database multimediali.

Creazione di modelli di dati dimensionale

Il calcolo moderno delle aziende utilizza la tecnologia di data warehouse per archiviare grosse quantità di dati per le analisi. Si possono utilizzare progetti di creazione di modelli di dati dimensionale per l'archiviazione di dati ad alta velocità e il recupero da un data warehouse. I modelli dimensionali utilizzano duplicazioni o dati ridondanti e privilegiano la performance rispetto all'utilizzo di uno spazio minore per l'archiviazione di dati.

Per esempio, nei modelli di dati dimensionali, la concessionaria di auto ha dimensioni come Auto, Showroom e Data. La dimensione Auto possiede attributi come nome e marca, ma la dimensione Showroom possiede gerarchie come stato, città, nome della via e nome dello showroom.

Cos'è il processo di creazione di modelli di dati?

Il processo di creazione di modelli di dati segue una sequenza di fasi che si devono eseguire ripetutamente fino alla creazione di un modello di dati esaustivo. In qualsiasi organizzazione, diversi azionisti si uniscono per creare una panoramica dati completa. Sebbene le fasi varino sulla base del tipo di creazione di modelli di dati, si riporta di seguito una panoramica generale.

Fase 1: individuazione delle entità e delle loro proprietà

Individua tutte le entità nel tuo modello di dati. Ogni entità dovrebbe essere distinta logicamente da tutte le altre entità e può rappresentare persone, luoghi, cose, concetti o eventi. Ogni entità è distinta perché ha una sola o più proprietà univoche. Si può pensare alle entità come sostantivi e agli attributi come aggettivi nel tuo modello di dati.

Fase 2: individuazione delle relazioni tra le entità

Le relazioni tra le diverse entità sono il cuore della creazione di modelli di dati. Le regole aziendali inizialmente definiscono queste relazioni a un livello concettuale. Si può pensare alle relazioni come i verbi nel tuo modello. Per esempio, il venditore vende tante auto, oppure lo showroom impiega tanti venditori.

Fase 3: individuazione della tecnica di creazione di modelli di dati

Dopo aver compreso concettualmente le tue entità e le loro relazioni, puoi determinare la tecnica di creazione di modelli di dati che meglio si adatta al tuo caso d'uso. Per esempio, potresti utilizzare la creazione di modelli di dati relazionale per dati strutturati, mentre per i dati non strutturati la creazione di modelli di dati dimensionale.

Fase 4: ottimizzazione e iterazione

Puoi ottimizzare ulteriormente il tuo modello di dati affinché sia adatto alla tua tecnologia e ai requisiti di performance. Per esempio, se hai pianificato di utilizzare Amazon Aurora e un linguaggio query strutturato (SQL), inserirai le entità direttamente nelle tabelle e in relazioni specifiche utilizzando chiavi esterne. Invece, se scegli di utilizzare Amazon DynamoDB, avrai bisogno di pensare ai pattern di accesso prima di modellare la tua tabella. Dal momento che DynamoDB privilegia la velocità, stabilisci inizialmente come accedere ai tuoi dati e poi modella i dati nella forma con la quale vi si farà accesso.

Si rivedranno tipicamente queste fasi in maniera ripetuta man mano che la tecnologia e i requisiti cambiano nel tempo.

In che modo AWS può fornire il suo contributo alla creazione di modelli di dati?

I database AWS includono oltre 15 motori di database per supportare modelli di dati differenti. Per esempio, si può utilizzare Amazon Relational Database Service (Amazon RDS) per implementare i modelli di dati relazionali e Amazon Neptune per implementare i modelli di dati a grafo.

Si può utilizzare anche AWS Amplify DataStore per una creazione di modelli di dati più veloce e semplice, per sviluppare applicazioni web e mobili. Possiede un'interfaccia visiva e basata su codice per definire i modelli di dati con relazioni, il che accelererà lo sviluppo dell'applicazione.

Inizia a usare la creazione di modelli di dati in AWS creando un account gratuito oggi stesso.

Fasi successive della creazione di modelli di dati con AWS

Scopri ulteriori risorse correlate al prodotto
Ulteriori informazioni sui database 
Servizi AWS di database a piano gratuito

Visualizza i servizi AWS di database a piano gratuito

Visualizza i servizi di database gratuiti 
Inizia subito nella console

Inizia subito a costruire con AWS nella Console di gestione AWS.

Accedi