logo

Schemi di database

Al giorno d'oggi i dati sono una delle cose più importanti nel mondo degli affari, ogni azienda acquisisce i dati dei propri clienti per comprendere il loro comportamento, nel mondo di Internet, i dati stanno crescendo a dismisura, quindi le aziende hanno bisogno di soluzioni di database più avanzate, con le quali possono possono mantenere i sistemi di database e ogni volta che hanno bisogno di dati per risolvere problemi aziendali, possono facilmente ottenere i dati che desiderano senza alcun problema. Per soddisfare questa condizione, è necessario lo schema del database nell'immagine.

Cos'è lo schema?

  • Lo scheletro del database viene creato dagli attributi e questo scheletro è denominato Schema.
  • Lo schema menziona i vincoli logici come tabella, chiave primaria, ecc.
  • Lo schema non rappresenta il tipo di dati degli attributi.

Dettagli di un cliente



Dettagli di un cliente

Schema del cliente

Schema del cliente

Schema della banca dati

  • Uno schema di database è a rappresentazione logica dei dati che mostra come i dati in un database dovrebbero essere archiviati logicamente. Mostra come sono organizzati i dati e la relazione tra le tabelle.
  • Lo schema del database contiene tabella, campo, visualizzazioni e relazione tra chiavi diverse come chiave primaria , chiave esterna .
  • I dati vengono archiviati sotto forma di file di natura non strutturata, il che rende difficile l'accesso ai dati. Pertanto, per risolvere il problema, i dati sono organizzati in modo strutturato con l'aiuto dello schema del database.
  • Lo schema del database fornisce l'organizzazione dei dati e la relazione tra i dati archiviati.
  • Lo schema del database definisce una serie di linee guida che controllano il database e forniscono informazioni sul modo di accedere e modificare i dati.

Tipi di schemi di database

Esistono 3 tipi di schemi di database:



Schema del database fisico

  • Uno schema fisico definisce il modo in cui i dati o le informazioni vengono archiviati fisicamente nei sistemi di archiviazione sotto forma di file e indici. Questo è il codice o la sintassi vera e propria necessaria per creare la struttura di un database, possiamo dire che quando progettiamo un database a livello fisico, si chiama schema fisico.
  • L'amministratore del database sceglie dove e come archiviare i dati nei diversi blocchi di archiviazione.

Schema del database logico

  • Uno schema di database logico definisce tutti i vincoli logici che devono essere applicati ai dati archiviati e descrive anche tabelle, viste, relazioni di entità e vincoli di integrità.
  • Lo schema logico descrive come i dati vengono archiviati sotto forma di tabelle e come sono collegati gli attributi di una tabella.
  • Utilizzando È la modellazione la relazione tra le componenti dei dati viene mantenuta.
  • Nello schema logico sono definiti diversi vincoli di integrità al fine di mantenere la qualità dell'inserimento e aggiornare i dati.

Visualizza lo schema del database

  • Si tratta di un design a livello di vista in grado di definire l'interazione tra utente finale e database.
  • L'utente è in grado di interagire con il database con l'aiuto dell'interfaccia senza sapere molto sul meccanismo di memorizzazione dei dati nel database.
Visualizza lo schema del database

Progettazione dello schema a tre livelli

algoritmo Mergesort

Creazione dello schema del database

Per creare uno schema, in ogni database viene utilizzata l'istruzione CREATE SCHEMA. Ma diversi database hanno significati diversi per questo. Di seguito esamineremo alcune istruzioni per la creazione di uno schema di database in diversi sistemi di database:

1.MySQL: In MySQL, utilizziamo l'istruzione CREATE SCHEMA per creare il database, perché, in MySQL CREATE SCHEMA e CREATE DATABASE, entrambe le istruzioni sono simili.



2.SQLServer: In SQL Server utilizziamo l'istruzione CREATE SCHEMA per creare un nuovo schema.

3. Database Oracle: Nel database Oracle, utilizziamo CREATE USER per creare un nuovo schema, poiché nel database Oracle viene già creato uno schema con ciascun utente del database. L'istruzione CREATE SCHEMA non crea uno schema, ma popola lo schema con tabelle e viste e consente inoltre di accedere a tali oggetti senza bisogno di più istruzioni SQL per più transazioni.

Progetti di schemi di database

Esistono molti modi per strutturare un database e dovremmo utilizzare la progettazione dello schema più adatta per creare il nostro database perché le progettazioni di schemi inefficaci sono difficili da gestire e consumano memoria e risorse aggiuntive.

java lungo fino a int

La progettazione dello schema dipende principalmente dai requisiti dell’applicazione. Qui abbiamo alcuni progetti di schemi efficaci per creare le nostre applicazioni, diamo un'occhiata ai progetti di schemi:

  1. Modello piatto
  2. Modello gerarchico
  3. Modello di rete
  4. Modello relazionale
  5. Schema stellare
  6. Schema del fiocco di neve

Modello piatto

Uno schema di modello piatto è un array 2D in cui ogni colonna contiene lo stesso tipo di dati/informazioni e gli elementi con righe sono correlati tra loro. È proprio come una tabella o un foglio di calcolo. Questo schema è migliore per le piccole applicazioni che non contengono dati complessi.

Modello piatto

Progettazione del modello piatto

Modello gerarchico

I dati sono organizzati utilizzando relazioni genitore-figlio e una struttura ad albero nel modello di database gerarchico. Poiché ogni record è composto da diversi elementi secondari e da un elemento principale, può essere utilizzato per illustrare le relazioni uno-a-molti in diagrammi quali gli organigrammi. Anche se ovvio, potrebbe non essere altrettanto adattabile nelle partnership complicate.

Modello gerarchico

Progettazione del modello gerarchico

Modello di rete

Il modello di rete e il modello gerarchico sono abbastanza simili con un'importante differenza legata alle relazioni tra i dati. Il modello di rete consente relazioni molti-a-molti mentre i modelli gerarchici consentono relazioni uno-a-molti.

elenco Java
Modello di rete

Progettazione del modello di rete

Modello relazionale

Il modello relazionale viene utilizzato principalmente per i database relazionali, in cui i dati vengono archiviati come relazioni della tabella. Questo schema del modello relazionale è migliore per la programmazione orientata agli oggetti.

Modello relazionale

Progettare un modello relazionale

Schema stellare

Lo schema a stella è migliore per archiviare e analizzare grandi quantità di dati. Ha una tabella dei fatti al centro e più tabelle delle dimensioni collegate ad essa proprio come una stella, dove la tabella dei fatti contiene i dati numerici che eseguono i processi aziendali e la tabella delle dimensioni contiene i dati relativi a dimensioni come prodotto, tempo, persone, ecc. . o possiamo dire, questa tabella contiene la descrizione della tabella dei fatti. Lo schema a stella ci consente di strutturare i dati di RDBMS .

Schema stellare

Progettare lo schema stellare

Schema del fiocco di neve

Proprio come lo schema a stella, anche lo schema a fiocco di neve ha una tabella dei fatti al centro e più tabelle di dimensione collegate ad essa, ma la differenza principale in entrambi i modelli è che nello schema a fiocco di neve le tabelle delle dimensioni sono ulteriormente normalizzate in più tabelle correlate. Lo schema a fiocco di neve viene utilizzato per analizzare grandi quantità di dati.

Schema del fiocco di neve

Progettazione dello schema del fiocco di neve

Differenza tra schema di database logico e fisico

Schema fisico

Schema logico

pagine del server Java
Lo schema fisico descrive il modo di archiviazione dei dati sul disco.

Lo schema logico fornisce la vista concettuale che definisce la relazione tra le entità di dati.

Avere un basso livello di astrazione. Avere un alto livello di astrazione.

La progettazione del database è indipendente da qualsiasi sistema di gestione del database.

La progettazione di un database deve funzionare con uno specifico sistema di gestione del database o piattaforma hardware.

I cambiamenti nello schema fisico influiscono sullo schema logico Qualsiasi modifica apportata allo schema logico ha un effetto minimo sullo schema fisico
Lo schema fisico non include gli attributi. Lo schema logico include attributi.
Lo schema fisico contiene gli attributi e i relativi tipi di dati. Lo schema logico non contiene attributi o tipi di dati.
Esempi: Data Definition Language (DDL), strutture di archiviazione, indici. Esempi: Diagramma delle relazioni tra entità , Linguaggio di modellazione unificato, diagramma di classe.

Vantaggi dello schema del database

  • Fornire coerenza dei dati: Schema della banca dati garantisce la coerenza dei dati e previene i duplicati.
  • Mantenere la scalabilità: Lo schema del database ben progettato aiuta a mantenere l'aggiunta di nuove tabelle nel database e aiuta a gestire grandi quantità di dati nelle tabelle in crescita.
  • Miglioramento delle prestazioni: Lo schema del database aiuta a recuperare i dati più velocemente, riducendo i tempi operativi sulle tabelle del database.
  • Manutenzione facile: Lo schema del database aiuta a mantenere l'intero database senza influenzare il resto del database
  • Sicurezza dei dati: Lo schema del database aiuta a archiviare i dati sensibili e consente solo l'accesso autorizzato al database.

Istanza del database

Lo schema del database viene definito prima della creazione del database vero e proprio, dopo che il database è operativo, è molto difficile modificare lo schema perché lo schema rappresenta la struttura fondamentale del database. L'istanza del database non contiene alcuna informazione relativa ai dati salvati nel database. Pertanto l'istanza del database rappresenta i dati e le informazioni attualmente archiviati nel database in un momento specifico.

Istanza del database

Istanza del database della tabella Customer in un momento specifico

Conclusione

  • La struttura del database viene definita schema e rappresenta, tra le altre cose, restrizioni logiche come tabella e chiave.
  • Architettura a tre schemi è stato sviluppato per impedire all'utente l'accesso diretto al database.
  • Poiché le informazioni salvate nel database sono soggette a modifiche frequenti, Istanza è una rappresentazione di dati in un momento specifico.