Basi Di Dati e DBMS

Introduzione alle Basi di Dati

Nella società moderna ogni azione che deve essere registrata comprende l’utilizzo delle basi di dati.

Acquistare un prodotto online, prelevare denaro dalla banca, prendere un libro dalla biblioteca, sono azioni che richiedono l’uso di una base di dati (database).

Cos’è una Base di Dati

Una base di dati (o database) è per definizione “Un insieme di dati omogeneo memorizzati in modo permanente“.

Per insieme di dati omogeneo intendiamo che devono essere dello stesso tipo, in modo da poterli catalogare e confrontare tra loro.

I dati devono essere memorizzati in modo permanente perchè  devono essere conservati e modificati quando serve.

Modelli di Basi di Dati

Le basi di dati possono essere di tre modelli differenti in base alla loro struttura:

  • Gerarchico, è un modello organizzato ad “albero“, c’è una gerarchia fra le entità che lo compongono, ogni albero ha un solo record radice detto padre, mentre i figli possono essere molti.
  • Reticolare, utilizza gruppi di record (struttura di dati eterogenei) e puntatori per spostarsi all’interno del database.
  • Relazionale, basato sulla teoria degli insiemi e sul concetto di rappresentare i dati come relazioni (tabella composta da righe e colonne), gestiti con l’algebra relazionale.
  • Ad Oggetti, è rappresentato da un insieme di classi, queste definiscono gli oggetti del database.

Database Management System

Il DBMS o sistema di gestione per le basi di dati, è un software che deve permettere la creazione, manipolazione e interrogazione di una base di dati.

Il modello di basi di dati più diffuso è quello relazionale, un DBMS per gestirlo ha i seguenti compiti:

  • DDL (Data Definition Language), si occupa dei metadati, crea e modifica gli schemi che contengono i dati.
  • DML (Data Manipulation Language), permette di inserire, modificare e gestire i dati memorizzati.
  • DQL (Data Query Language), consente di interrogare i dati.
  • VDL (View Definition Language), consente di creare diverse viste, cioè ogni utente vede solo una parte della base di dati.

Il database è suddiviso nei seguenti livelli:

  • Il Livello Esterno, ogni utente ha una propria vista della base di dati (VDL).
  • Livello Concettuale, dove sono presenti i dati e i metadati (DDL e DML).
  • Livello Fisico, i dettagli tecnologici del database.

I dati hanno un indipendenza logica, cioè modificando il livello concettuale le viste non cambiano.

Cosa deve garantire un DBMS

Le aziende come Google, Apple e Microsoft fanno ampio uso dei database, sono importanti per studiare cosa interessa ai clienti.

Il DMBS è quindi molto importante e per questo deve gestire in modo ottimale i dati, per essere affidabile deve garantire quindi:

  • Sicurezza, regolare l’accesso ai dati per ogni utente, in base alla propria vista (VDL).
  • Interrogazioni, le query (richieste dei dati) devono essere veloci ed ottimali.
  • Recupero dai guasti, il DBMS deve affrontare sia i guasti del sistema sia quelli del dispositivo di memorizzazione, in caso di problemi i dati devono essere salvati.
  • Gestione accesso concorrente, deve garantire l’accesso per modificare i dati ad un solo utente alla volta.
  • Gestione transazioni, questo tipo di operazioni non devono essere interrotte a metà, si terminano o si ricomincia da capo.

Alcuni esempi per l’affidabilità di un database

Riguardo la sicurezza le viste sono importanti nel database di un ospedale, un operatore che si occupa dell’aspetto tecnico della struttura, non deve avere accesso alla cartella clinica riservata ai dottori.

Per le interrogazioni è importante che le richieste siano veloci, se una base di dati impiega troppo tempo per la prenotazione di un biglietto per il concerto, questo non è ottimale.

Il recupero dai guasti deve essere gestito in modo sicuro, un azienda di vendita online come amazon non può permettersi di perdere i dati di un ordine dove il cliente ha già pagato.

La gestione dell’accesso concorrente se gestita in modo errato, potrebbe permettere a due venditori di prenotare lo stesso posto per una partita di calcio, con conseguente problema per i clienti.

La gestione delle transazioni deve completa, altrimenti potrebbero verificarsi dei casi dove persone vogliono spostare il denaro da una banca all’altra, che se interrotti tra il prelievo ed il deposito del denaro, l’utente perderebbe i propri soldi.

Conclusioni

Abbiamo visto quindi l’importanza delle basi di dati e del software per gestirli il DBMS, nei prossimi articoli della sezione rubrica vedremo la progettazione di un  database e cos’è un Class Diagram.

Sono uno studente di informatica di Napoli con la passione per tutto ciò che riguarda la tecnologia, la domanda dietro ogni nuova tecnologia che vedo è sempre la stessa “come fa a funzionare?”, ed è per questo che è nato techupgrade.it per spiegare in modo semplice e chiaro come funziona il mondo digitale che ci circonda.

About Biagio

Sono uno studente di informatica di Napoli con la passione per tutto ciò che riguarda la tecnologia, la domanda dietro ogni nuova tecnologia che vedo è sempre la stessa "come fa a funzionare?", ed è per questo che è nato techupgrade.it per spiegare in modo semplice e chiaro come funziona il mondo digitale che ci circonda.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *