Febbraio 22, 2022

Matematica

image PANORAMICA del CAPITOLO

Unità 2.1 Caratteristiche di un buon database
Unità 2.2 Problemi con i database
Unità 2.3 Come sbarazzarsi di anomalie

image risultati di Apprendimento

Alla fine di questo capitolo sarai in grado di:

  • fornire le caratteristiche di un buon database
  • descrivere i problemi con i database
  • spiegare la normalizzazione e il processo.

INTRODUZIONE

I dati vengono memorizzati in tabelle in un database. Può essere memorizzato in una singola tabella (chiamata database flat – come mostrato in Figura 2.1) o in più tabelle collegate (chiamato database relazionale – come mostrato in Figura 2.2).

image
Figura 2.1: Dati memorizzati in una singola tabella in un database piatto
image
Figura 2.2: I dati memorizzati in più tabelle in un database relazionale

image
parole Nuove

campo – un singolo bit di Informazioni su una persona o un oggetto, per esempio, età

record di un gruppo di campi su un elemento o di una persona che viene catturato nella tabella

chiave Primaria è un campo che contiene un identificatore univoco per ogni record nel database, l’Unico mezzo c’è solo uno dei suo genere)

Ogni tabella è composta da campi e record. I campi sono le categorie per le quali si desidera registrare i dati. Ad esempio, la tabella musicale mostrata sopra contiene campi come Titolo, Artista, Durata e Album. I record si riferiscono ai dati effettivi acquisiti, con ogni record contenente i dati di un singolo elemento. Ad esempio, nella tabella Canzone, ogni record rappresenta un singolo brano, con tutte le informazioni (come artista e durata) relative a quel brano.

Ogni tabella può avere un campo obbligatorio, chiamato chiave primaria, che contiene un identificatore univoco per ogni record nel database. Ciò consente di fare riferimento a un record specifico su una tabella in modo tale che possa fare riferimento a una sola voce. Mentre è possibile rendere un campo esistente di una tabella un campo chiave, i creatori di database di solito creano un nuovo campo appositamente per questo scopo. Ciò consente loro di assicurarsi che non ci siano duplicati.

A volte ci sono anomalie con i database, imparerai come sbarazzarti di queste anomalie.

In questo capitolo, verrà progettato e creato un database relazionale. A volte ci sono anomalie con i database, imparerai come sbarazzartene e raggiungere la normalizzazione.

DATABASE IN POCHE PAROLE

I dati, in linea di principio, vengono memorizzati in 1s e 0s. Il computer deve ancora sapere come sono organizzati questi 1 e 0 e come dovrebbero essere interpretati. Per fare questo, i computer fanno uso di strutture di dati che descrivono una sequenza specifica per i dati da organizzare. Ciò consente al computer di capire come sono correlati i diversi bit di dati e di interpretare correttamente i dati.

Sappiamo che ogni lettera dell’alfabeto rappresenta un carattere. Quando si aggiungono abbastanza caratteri insieme, formano una parola (come’ arancione ‘o’ amore’) che rappresenta un concetto. Pertanto, consentendo la comunicazione di informazioni utili tra due o più persone – anche attraverso distanze.

Per comunicare dati e istruzioni, dati come numeri, lettere, caratteri, simboli speciali, suoni/fonetica e immagini vengono convertiti in forma leggibile dal computer (binario). Una volta che l’elaborazione di questi dati è completa, viene convertita in un formato leggibile dall’uomo, i dati elaborati diventano informazioni significative. L’informazione diventa conoscenza e può essere compresa e utilizzata dagli esseri umani per scopi diversi.

ATTIVITÀ 2.1 Attività di revisione

2.1.1 Con parole tue, spiega cos’è un database e a cosa può essere utilizzato. Fornisci un esempio per supportare la tua risposta.

2.1.2 Vero o falso: un data warehouse utilizza i dati delle transazioni provenienti da varie fonti e fa un uso analitico dei dati.

2.1.3 Riempire gli spazi vuoti scegliendo il termine corretto dalla lista qui sotto:

a.I dati sono memorizzati in ____________ in un database.

b. Un singolo bit di informazioni su un oggetto o una persona è un________.

c.Quando molti campi correlati su un elemento vengono messi insieme il modulo a ___________.

d.D ___________ chiave contiene identificatori univoci per ogni record in un database.

e. Un database è progettato per memorizzare _____________ transazioni mentre un dato ______________ memorizza una grande quantità di dati storici.

f.A ______________il database memorizza i dati in più tabelle.

UNIT2.1 Caratteristiche di un buon database

Tutti i buoni database dovrebbero iniziare con metadati e dati preziosi. Nel capitolo 1 abbiamo esaminato le caratteristiche dei dati preziosi e come gestirli. Questi sono illustrati nella Figura 2.3 di seguito:

image
Figura 2.3: Come gestire database di valore

Diamo ora un’occhiata alle caratteristiche di un buon database:

  • Il database dovrebbe essere abbastanza forte da memorizzare tutti i dati e i requisiti pertinenti.
  • Dovrebbe essere in grado di mettere in relazione le tabelle nel database mediante una relazione, ad esempio, un dipendente lavora per un reparto in modo che il dipendente sia correlato a un particolare reparto. Dovremmo essere in grado di definire tale relazione tra due entità qualsiasi nel database.
  • Più utenti dovrebbero essere in grado di accedere allo stesso database, senza influenzare l’altro utente. Ad esempio, diversi insegnanti possono lavorare su un database per aggiornare i voti degli studenti allo stesso tempo. Gli insegnanti dovrebbero anche essere autorizzati ad aggiornare i marchi per le loro materie, senza modificare altri marchi di materie.
  • Un singolo database fornisce viste diverse a diversi utenti, supporta più viste per l’utente, a seconda del suo ruolo. In un database scolastico, ad esempio, gli insegnanti possono vedere la ripartizione dei voti degli studenti; tuttavia, i genitori sono in grado di vedere solo il rapporto del loro bambino – quindi l’accesso dei genitori sarebbe di sola lettura. Allo stesso tempo, gli insegnanti avranno accesso a tutte le informazioni e ai dettagli di valutazione degli studenti con diritti di modifica. Tutto questo è in grado di accadere nello stesso database.
  • Integrità dei dati si riferisce alla precisione e coerenza dei dati in un database. Si dice che i database con molte informazioni mancanti e informazioni errate abbiano una bassa integrità dei dati.
  • L’indipendenza dei dati si riferisce alla separazione tra i dati e l’applicazione (o le applicazioni) in cui viene utilizzato. Ciò consente di aggiornare i dati nell’applicazione (ad esempio correggere un errore di ortografia)senza dover ricompilare l’intera applicazione.
  • La ridondanza dei dati si riferisce ad avere esattamente gli stessi dati in luoghi diversi nel database. La ridondanza dei dati Aumenta le dimensioni del database, crea problemi di integrità, diminuisce l’efficienza e porta ad anomalie. I dati devono essere memorizzati in modo che non vengano ripetuti in più tabelle.
  • La sicurezza dei dati si riferisce al modo in cui i dati nel database sono protetti da arresti anomali, hack e cancellazione accidentale.
  • La manutenzione dei dati si riferisce alle attività mensili, giornaliere o orarie che vengono eseguite per correggere gli errori all’interno di un database e impedire che si verifichino anomalie. La manutenzione del database non solo corregge gli errori, ma rileva anche potenziali errori e impedisce che si verifichino errori futuri.

Ci sono anche molte persone coinvolte nell’organizzazione di un database ben gestito. Questi sono:

  • gli sviluppatori, che consente di progettare e sviluppare la base di dati per soddisfare le esigenze di un’impresa
  • l’amministratore, che:
  • controlla il database per gli usi
  • che è il controllo
  • fornisce l’accesso ad altri usi
  • fornisce qualsiasi altro lavoro di manutenzione necessarie per mantenere il database aggiornato
  • l’utente finale, che utilizza il database, per esempio, i genitori o gli insegnanti.
image
Figura 2.4: Persone coinvolte nell’organizzazione di un database ben gestito

image Attività 2.1

2.1.1 Scegli un termine / concetto dalla COLONNA B che corrisponda a una descrizione nella COLONNA A. Scrivi solo la lettera accanto al numero della domanda (ad esempio 5–F).

image

2.1.2 Descrivere i tre tipi di persone coinvolte in un database.

2.1.3 Elencare le cinque caratteristiche dei dati di qualità.

2.1.4 Una scuola desidera creare un database che può:

  • tenere informati i genitori sugli accademici, le valutazioni e le attività scolastiche dei loro figli
  • aiutare gli insegnanti a registrare il lavoro e le valutazioni
  • memorizzare i dettagli di ogni bambino e delle loro famiglie.

a. Lavorare in piccoli gruppi di quattro o cinque studenti. Discutere ogni caratteristica di un buon database e spiegare questi riferendosi allo scenario di cui sopra.

b. Usa una mappa mentale per presentare la tua discussione.

UNITÀ2.2 Problemi con i database

Se un database flat-file è mal pianificato, denormalizzato e incoerente, creerà problemi quando si tenta di inserire, eliminare o modificare i record (tabelle) nel database. Ciò causa anomalie, che rendono la gestione dei dati sempre più difficile man mano che il database cresce. Rende anche l’integrità dei dati più difficile da mantenere. Cercare di rendere i dati coerenti una volta che si verifica un’anomalia può diventare piuttosto difficile.

Esistono tre tipi di problemi che possono verificarsi nei database:

  • Anomalia di inserimento: Il database è stato creato in modo tale che i dati richiesti non possano essere aggiunti a meno che non venga aggiunta anche un’altra parte di dati non disponibili. Ad esempio, un database ospedaliero che non può memorizzare i dettagli di un nuovo membro fino a quando tale membro non è stato visto da un medico.
  • Anomalia di cancellazione: la cancellazione legittima di un record di dati può causare la cancellazione di alcuni dati richiesti. Ad esempio, l’eliminazione di alcuni dettagli del paziente può rimuovere tutti i dettagli del paziente dal database dell’ospedale.
  • Anomalia di modifica: I dati errati potrebbero dover essere modificati, il che potrebbe comportare la modifica di molti record, portando alla possibilità che alcune modifiche vengano apportate in modo errato.

Esempio 2.1 i Problemi che si verificano in un database

Per esempio, guardate il seguente schema che rappresenta le informazioni relative a una scuola:

AccountInfo

image

Problemi:

  • la ridondanza dei Dati: la ridondanza dei Dati si riferisce alla memorizzazione di dati identici in luoghi diversi in un database. La ridondanza dei dati aumenta le dimensioni del database, crea problemi di integrità, diminuisce l’efficienza del database e può portare ad anomalie del database. I dati devono essere memorizzati in modo tale da non essere ripetuti in più tabelle. La famiglia può essere rappresentata come un’unità.
  • Anomalia di aggiornamento: i dati saranno incoerenti se viene aggiornata un’entità, ad esempio, se l’indirizzo della famiglia cambia, il capturer dei dati dovrà modificare tutte e quattro le entità.
  • Impossibile rappresentare alcune informazioni: la scuola non può tenere informazioni sugli studenti che sono in lista d’attesa in quanto non hanno un account con la scuola.
  • Anomalia di cancellazione: la chiusura dell’account per un figlio rimuoverà tutti i dati del secondo figlio dal database.

image Attività 2.2

2.2.1 Elencare i tre tipi di anomalie e fornire un esempio per ciascuno di essi.

2.2.2 Guarda lo schema sottostante che rappresenta le informazioni relative a un ospedale:

AccountInfo

image

Elencare e spiegare almeno quattro anomalie con questo database.

UNIT2.3 Come eliminare le anomalie

Per evitare anomalie è necessario normalizzare il database organizzando in modo efficiente i dati in un database.
Secondo Edgar F Codd, l’inventore dei database relazionali, gli obiettivi della normalizzazione includono:

  • rimozione di tutti i dati ridondanti (o ripetuti) dal database
  • rimozione di inserimenti indesiderati, aggiornamenti e dipendenze di cancellazione
  • riduzione della necessità di ristrutturare l’intero database ogni volta che vengono aggiunti nuovi campi
  • rendendo le relazioni tra tabelle più utili e comprensibili.

La normalizzazione è un approccio sistematico di scomposizione delle tabelle per eliminare la ridondanza dei dati e le anomalie di inserimento, modifica e cancellazione. Il database designer struttura i dati in modo da eliminare inutili duplicazioni e fornisce un percorso di ricerca rapido per tutte le informazioni necessarie. Si tratta di un processo multi-step che mette i dati in forma tabellare, rimuovendo i dati duplicati dalle tabelle di relazione. Questo processo di specificare e definire tabelle, chiavi, colonne e relazioni al fine di creare un database efficiente è chiamato normalizzazione.

La normalizzazione ridurrà la quantità di spazio utilizzata da un database e garantirà che i dati siano archiviati in modo efficiente. Senza normalizzazione, i sistemi di database possono essere imprecisi, lenti e inefficienti. Potrebbero non produrre i dati che ti aspetti.

In pratica ciò significa modificare il database in modo che siano soddisfatti i seguenti requisiti:

  • ogni tabella deve avere una chiave primaria
  • ogni record deve avere attributi/colonne a valore singolo (atomico)
  • non ci dovrebbero essere gruppi ripetuti di informazioni.

Le chiavi vengono utilizzate per stabilire e identificare le relazioni tra le tabelle e anche per identificare in modo univoco qualsiasi record o riga di dati all’interno di una tabella. Una chiave può essere un singolo attributo o un gruppo di attributi (chiave compositeprimary), in cui la combinazione può fungere da chiave. Le chiavi ci aiutano a identificare qualsiasi riga di dati.

Quando si progetta un database, i quattro tipi di campi chiave sono:

  • Chiave primaria: il campo selezionato dal creatore del database per identificare in modo univoco ogni record su una tabella. Ad esempio, ogni brano nel database musicale potrebbe avere un campo chiave primaria chiamato “song_id”.
  • Chiave alternativa: un campo contenente valori univoci che possono essere utilizzati come chiave primaria ma non è attualmente impostato come chiave primaria, ad esempio, artist_id.
  • Chiave esterna: un campo contenente valori provenienti dal campo della chiave primaria di una tabella diversa. Le chiavi esterne vengono utilizzate per mostrare la relazione tra diverse tabelle. Ad esempio, ogni brano nel database musicale potrebbe avere un campo chiave esterna chiamato “artist_id” che collega il brano a un artista specifico in una tabella “artisti”.
  • Chiave composita: una combinazione di più di un campo che identifica in modo univoco ogni record su una tabella, ad esempio, song_id e artist_id.

usiamo questo esempio per capire i quattro principali tipi di chiavi:

image

Normalizzazione regole sono suddivise nelle seguenti forme normali:

PRIMA FORMA NORMALE (1NF)

Per una tabella in Prima Forma Normale, si devono seguire le seguenti quattro regole:

  • Ogni colonna deve avere un campo separato/attributo. Ogni colonna della tabella non deve contenere più valori. Ad esempio, immagina il database per gli aggiornamenti di stato di Facebook, in particolare la tabella relativa ai Mi piace. Affinché i record siano indivisibili, ogni like deve essere memorizzato in un record separato. In questo modo, ogni record si sarebbe verificato o non si è verificato. Non c’è modo di dire che solo una piccola parte di simili si è verificata, mentre una parte diversa no. Tuttavia, se tutti i Mi piace per un aggiornamento di stato sono memorizzati in un singolo record, il record sarebbe divisibile, poiché sarebbe possibile che alcuni Mi piace si siano verificati mentre altri non si sono verificati.
  • I valori memorizzati in una colonna devono essere dello stesso tipo o tipo (dominio). In ogni colonna i valori memorizzati devono essere dello stesso tipo o tipo.
  • Tutte le colonne di una tabella devono avere nomi univoci. Ogni colonna di una tabella deve avere un nome univoco per evitare confusione al momento del recupero dei dati o dell’esecuzione di qualsiasi altra operazione sui dati memorizzati. Ad esempio, specificare il nome del bambino e il nome del genitore, non utilizzare ‘Nome’.
  • L’ordine in cui vengono memorizzati i dati, non importa. Ad esempio

image
  • La tabella è conforme a tre regole delle quattro regole: i nomi delle colonne sono univoci, i dati memorizzati sono nell’ordine corretto e non ci sono diversi tipi di dati misti nelle colonne. Tuttavia, gli studenti nella tabella hanno optato per più di un argomento. Questi dati sono stati memorizzati nei nomi dei soggetti in una singola colonna. Come per il 1NF, ogni colonna deve contenere un singolo valore.

SECONDA FORMA NORMALE (2NF)

Per una tabella nella Seconda forma Normale:

  • dovrebbe essere nella prima forma normale.
  • e non dovrebbe avere una dipendenza parziale.

Questo è dove un attributo in una tabella dipende solo da una parte della chiave primaria e non dall’intera chiave. Ad esempio, una tabella registra le chiavi primarie come student_id e subject_id di ogni studente. Solo il nome dell’insegnante dipende dal soggetto. Quindi, il subject_id, e non ha nulla a che fare con student_id.

TERZA FORMA NORMALE (3NF)

Si dice che una tabella sia nella terza forma normale quando:

  • è nella seconda forma normale.
  • non ha dipendenza transitiva. La dipendenza transitiva si verifica quando un attributo / campo dipende da altri attributi / campi anziché dalla chiave primaria.

Questa è una relazione indiretta tra i valori nella stessa tabella.

image Attività 2.3

2.3.1 Spiegare perché la normalizzazione è importante per un database.

2.3.2 Come raggiungere la normalizzazione?

2.3.3 Elencare e descrivere i quattro tipi di campi chiave che possono essere utilizzati in un database.

2.3.4come risolveresti la tabella sottostante per raggiungere 1N?

image

2.3.5 Fornire esempi, non menzionati sopra, dei diversi campi chiave.

2.3.6 Utilizzando le informazioni nella tabella seguente, fornire esempi di due chiavi qualsiasi.

image

ATTIVITÀ DI CONSOLIDAMENTO Capitolo 2: Concetti di progettazione di database

1.Scegli la risposta corretta.

a. Quale dei seguenti scenari NON ha bisogno di un database?

A. Memorizzazione delle credenziali di tutti gli account Gmail.

B.Backup di tutte le informazioni sul tuo personal computer.

C. Memorizzazione di tutte le pagine web di un sito web.

D. Memorizzazione di tutte le informazioni sull’inventario di un’azienda.

b. Quale delle seguenti è una caratteristica di un buon database?

A. Fare copie di dati in un database per il backup.

B. Mantenere i dati e l’applicazione connessi e dipendenti l’uno dall’altro.

C. Prevenire errori nel database.

D. Memorizzazione dei dati in diversi formati.

c.Quale dei seguenti è necessario per rendere diverso ogni record in una tabella di database?

A. Chiave secondaria

B. Chiave esterna

C. Chiave primaria

D. Chiave alternativa

2.Elenca i quattro tipi di chiavi utilizzate per progettare un database. Progettare una tabella da utilizzare come esempio.

3.In progettazione di database quali sono i requisiti per 1NF, 2NF e 3NF?

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.