Come configurare smartphone e PC. Portale informativo
  • casa
  • notizia
  • Rivelando oggetti informativi e le loro connessioni. Database come modello di informazioni di dominio

Rivelando oggetti informativi e le loro connessioni. Database come modello di informazioni di dominio

Elementi strutturali del database

Nella descrizione di un oggetto dati, è necessario evidenziare 2 componenti: una struttura e un'istanza.

Struttura- un elenco di attributi dell'oggetto e caratteristiche degli attributi.

Esempio- un insieme di valori di attributo.

La struttura cambia molto raramente. L'istanza è soggetta a modifiche.

Quando archiviato in un computer, un database corrisponde a un gruppo di file e cartelle, un file corrisponde a un insieme di oggetti. Ogni oggetto ha una voce corrispondente nel file. Ogni attributo ha un campo record corrispondente.

Le seguenti caratteristiche vengono utilizzate per descrivere un attributo:

1.nome, ad esempio nContratto, cStudente;

2. digitare, ad esempio, carattere, numerico;

3. lunghezza, ad esempio 15 byte;

4. precisione, per dati numerici.

5. descrizione, commento;

6. formato dell'immagine a video e su carta;

7. suggerimento;

8. formato di input;

9. valore iniziale;

10. range di valori.

ChiaveÈ un mezzo per organizzare gli oggetti in un insieme. La chiave contiene espressione chiave, composto da attributi dell'oggetto. I valori delle espressioni chiave crescenti vengono presentati per la visualizzazione e l'elaborazione.

È possibile specificare più chiavi per un set. Ad esempio, per l'insieme dei Dipendenti, è possibile specificare una chiave in ordine alfabetico dei cognomi, i dipendenti verranno presentati in ordine alfabetico.

La chiave si chiama primario se 0 o 1 oggetto è selezionato dall'insieme di un valore della sua espressione. Ad esempio, per l'assunzione di dipendenti, la chiave "Per numero di personale" è primaria, poiché per un valore del numero di personale non viene assegnato alcun dipendente o viene assegnato un solo dipendente.

La chiave si chiama secondario se 0 o più oggetti sono selezionati dall'insieme di un valore della sua espressione. Ad esempio, la chiave per il reclutamento dei dipendenti, la chiave "Cognomi alfabetici" è secondaria, poiché potrebbero esserci omonimi tra i dipendenti.

Secondo l'assioma della differenza, ogni insieme ha una chiave primaria. Come ultima risorsa, la sua espressione include tutti gli attributi dell'oggetto nell'insieme.

È buona norma introdurre un attributo artificiale "Sequence # in set" per un oggetto dati che viene assegnato automaticamente e univoco. La chiave per questo attributo è chiamata surrogato.

Si noti che i concetti di chiave primaria e secondaria sono indipendenti dal numero e dai valori degli oggetti nell'insieme. Esistono chiavi primarie e secondarie per i set vuoti.

Siano n insiemi di oggetti Е 1, Е 2, ..., Е n.

Comunicazioneè l'insieme delle successioni di oggetti (e i 1, e i 2,…, e i n), dove e i 1 Î E 1, e i 2 Î E 2,…, e i n Î E n.

Con l'aiuto dei collegamenti, gli insiemi di oggetti vengono combinati in un'unica struttura di informazioni.

Esistono tre tipi di collegamenti tra due insiemi di oggetti (n = 2):

1. uno a uno (1: 1);



2. uno a molti (1: M);

3. molti a molti (M: N).

"uno a uno", se per ogni oggetto del primo set puoi specificare 0 o 1 un oggetto del secondo set e per ogni oggetto del secondo set puoi specificare 0 o 1 un oggetto del primo insieme.

Esempi di relazioni 1: 1 sono relazioni tra:

Studenti e libri di classe,

Tra stati e valute,

Tra ufficiali e armi di servizio,

· Tra cittadini e passaporti stranieri. Ogni studente non ha un registro dei voti o ne ha solo uno.

Per ogni studente, o lo studente non è elencato, oppure ce n'è solo uno.

La connessione tra i due insiemi E 1 ed E 2 è del tipo Uno a molti 0 o più 0 o 1 un oggetto del primo insieme.

Esempi di collegamenti 1: M sono collegamenti tra

Banche e depositi,

Depositi e contributi,

Tra gruppi e studenti,

Tra reparti e dipendenti,

Tra dichiarazioni e righe di dichiarazioni,

· Tra client e applicazioni.

Ogni banca non ha depositi (la banca non ha ancora aperto) o potrebbero esserci molti depositi. Per ogni deposito o non è specificata la banca, oppure ce n'è solo una.

La connessione tra i due insiemi E 1 ed E 2 è del tipo Molti a molti se per ogni oggetto del primo set puoi specificare 0 o più oggetti del secondo set e per ogni oggetto del secondo set puoi specificare 0 o più oggetti del primo insieme.

Esempi di M: N relazioni sono relazioni tra

Prodotti e paesi,

Tra studenti e discipline,

Tra dipendenti e progetti,

Tra ordini e merci,

· Tra negozi e clienti.

Ogni prodotto può essere spedito da molti paesi e non spedito affatto. Ogni paese può fornire molti prodotti e nessuno.

I collegamenti sono rappresentati graficamente da frecce (Figura 4.5).

Nei DBMS reali, viene implementato un solo tipo di relazione: uno a molti.

Una relazione 1: 1 si ottiene da una relazione 1: M limitandola.

Per implementare la relazione M: N, viene introdotto un nuovo insieme di oggetti e vengono utilizzate due relazioni 1: M.

Ad esempio, la relazione tra paesi e prodotti M: N è ottenuta utilizzando il set di dati "spedizioni" (Figura 4.6).

Modello infologico (modello informativo-logico)- orientato all'uomo e indipendente dal tipo di modello di dominio DBMS, che determina l'insieme degli oggetti informativi, i loro attributi e le relazioni tra gli oggetti, la dinamica dei cambiamenti nel dominio, nonché la natura delle esigenze informative degli utenti. Il modello infologico dell'area disciplinare può essere descritto dal modello "entità-relazione" (modello di Chen), che si basa sulla divisione del mondo reale in entità distinguibili separate che sono in determinate relazioni tra loro, ed entrambe le categorie - si presume che essenza e relazione siano concetti primari, indefiniti...

Lo scopo della modellazione infologica

  • fornire i modi più naturali per una persona per raccogliere e presentare le informazioni che dovrebbero essere archiviate nel database in fase di creazione. Pertanto, cercano di costruire un modello di dati infologici per analogia con il linguaggio naturale (quest'ultimo non può essere utilizzato nella sua forma pura a causa della complessità dell'elaborazione informatica dei testi e dell'ambiguità di qualsiasi linguaggio naturale). I principali elementi costruttivi dei modelli infologici sono le entità, le relazioni tra di esse e le loro proprietà (attributi).

Concetti basilari

  • L'essenza- qualsiasi oggetto distinguibile (un oggetto che possiamo distinguere da un altro), le cui informazioni devono essere archiviate nel database. Le entità possono essere persone, luoghi, aeroplani, voli, gusti, colori, ecc. È necessario distinguere tra concetti come tipo di entità e istanza di entità. Il termine tipo di entità si riferisce a un insieme di individui, oggetti, eventi o idee omogenei che agiscono nel loro insieme. Un'istanza di entità fa riferimento a un oggetto specifico in una raccolta. Ad esempio, un tipo di entità può essere CITY e un'istanza può essere Mosca, Kiev e così via.
  • Attributo- la caratteristica nominata dell'entità. Il suo nome deve essere univoco per un tipo specifico di entità, ma può essere lo stesso per diversi tipi di entità (ad esempio, COLOR può essere definito per molte entità: CANE, AUTO, FUMO, ecc.). Gli attributi vengono utilizzati per determinare quali informazioni devono essere raccolte su un'entità. Esempi di attributi per l'entità VEHICLE sono TYPE, BRAND, NUMBER PLATE, COLOR e così via. C'è anche una distinzione tra tipo e istanza qui. Il tipo di attributo COLOR ha molte istanze o valori: Red, Blue, Banana, Night White e così via, ma a ciascuna istanza di un'entità viene assegnato un solo valore di attributo.

Non esiste una distinzione assoluta tra tipi di entità e attributi. Un attributo è tale solo in relazione al tipo di entità. In un altro contesto, un attributo può agire come un'entità indipendente. Ad esempio, per una fabbrica di automobili, il colore è solo un attributo di un prodotto di fabbricazione e per una fabbrica di vernici, il colore è un tipo di entità.

  • Chiave- l'insieme minimo di attributi, i cui valori possono essere utilizzati per trovare in modo univoco l'istanza dell'entità richiesta. Minimalità significa che l'esclusione di qualsiasi attributo dall'insieme non consente all'entità di essere identificata dal resto. Per l'entità Schedule, la chiave è l'attributo Flight_number o l'insieme: Departure_point, Departure_time e Destination_point (a condizione che un aereo parta da un punto all'altro).
  • Connessione- associazione di due o più enti. Se lo scopo del database fosse solo quello di memorizzare dati separati e non correlati, la sua struttura potrebbe essere molto semplice. Tuttavia, uno dei requisiti principali per l'organizzazione del database è garantire la possibilità di trovare alcune entità dai valori di altre, per le quali è necessario stabilire determinati collegamenti tra loro. E poiché i database reali contengono spesso centinaia o addirittura migliaia di entità, teoricamente possono essere stabilite più di un milione di connessioni tra di loro. La presenza di un tale insieme di connessioni determina la complessità dei modelli infologici.

Requisiti per un modello infologico

  • Visualizzazione adeguata dell'area tematica
  • Evitare interpretazioni ambigue del modello
  • Chiara definizione del dominio simulato (finitezza del modello)
  • Facile estendibilità, consentendo l'inserimento di nuovi dati senza modificare quelli precedentemente definiti, lo stesso vale per la cancellazione dei dati
  • Possibilità di composizione e scomposizione del modello data la grande dimensione dei veri modelli infologici
  • Facile percezione da parte di varie categorie di utenti; è auspicabile che il modello infologico sia costruito (o almeno partecipato alla sua realizzazione) da uno specialista operante in una determinata area disciplinare, e non solo da un progettista di sistemi di elaborazione dati macchina
  • Applicabilità del linguaggio di specifica del modello per la progettazione sia manuale che assistita da computer di sistemi informativi

Componenti del modello infologico

  • Descrizione degli oggetti e delle relazioni tra di loro, chiamato ER-model (sta per modello "Entity-relationship")
  • Descrizione delle esigenze informative degli utenti
  • Collegamenti ad attributi algoritmici
  • Relazioni linguistiche dovute alle peculiarità della rappresentazione dell'area disciplinare nell'ambiente linguistico
  • Vincoli di integrità

Costruzione dell'oggetto - Proprietà - Modello di relazione

Classi di oggetti

Nell'area tematica, nel processo del suo esame e analisi, ci sono classi di oggetti... Una classe di oggetti è una raccolta di oggetti che hanno lo stesso insieme di proprietà. Ad esempio, se consideriamo un'università come area disciplinare, allora in essa si possono distinguere le seguenti classi di oggetti: studenti, insegnanti, auditorium, ecc. Gli oggetti possono essere reali, come detto sopra, oppure possono essere astratti, come materie che gli studenti studiano.

Quando riflesso nel sistema informativo, ogni oggetto è rappresentato dal suo identificatore, che distingue un oggetto della classe da un altro, e ogni classe di oggetti è rappresentata dal nome di questa classe. Quindi, per gli oggetti della classe "SOGGETTI STUDIATI" l'identificatore di ogni oggetto sarà "NOME DEL SOGGETTO". L'identificatore deve essere univoco.

Ogni oggetto ha un insieme specifico di proprietà. Per oggetti della stessa classe, l'insieme di queste proprietà è lo stesso e i loro valori, ovviamente, possono differire. Ad esempio, per gli oggetti della classe "STUDENT", un tale insieme di proprietà che descrivono gli oggetti della classe può essere "YEAR OF BIRTH", "GENDER", ecc.

Quando si descrive l'area tematica, è necessario rappresentare ciascuna delle classi di oggetti esistenti e un insieme di proprietà fissate per gli oggetti di questa classe.

Useremo le seguenti designazioni per visualizzare gli oggetti e le loro proprietà.

Ad ogni feature class nel modello infologico viene assegnato un nome univoco. Il nome della classe oggetto è il turn over grammaticale del sostantivo (un sostantivo che può avere aggettivi e preposizioni). Se il nome è composto da più parole, è auspicabile che il nome venga prima. Il nome deve essere usato al singolare, non al plurale. Pertanto, per la classe di oggetti "DISCIPLINE STUDIATE" considerata sopra, è meglio dare il nome "DISCIPLINA STUDIATA". Se nell'area tematica vengono tradizionalmente usati nomi diversi per indicare una certa classe di oggetti (cioè esiste una sinonimia), allora tutti dovrebbero essere corretti nella descrizione del sistema, quindi uno di essi viene scelto come principale , e solo in ILM dovrebbe essere utilizzato in futuro. Oltre al nome della classe dell'oggetto in ILM, è possibile utilizzare la sua designazione del codice funzione.

Quando si costruisce un modello infologico, è desiderabile dare un'interpretazione verbale di ciascuna entità, soprattutto se è possibile un'interpretazione ambigua del concetto.

Relazioni tra un oggetto e le sue proprietà

Quando si descrive l'area tematica, è necessario riflettere le connessioni tra l'oggetto e le proprietà che lo caratterizzano. Questo è semplicemente rappresentato come una linea che collega la designazione dell'oggetto e le sue proprietà.

La relazione tra un oggetto e la sua proprietà può essere diversa. Un oggetto può avere un solo valore per una proprietà. Ad esempio, ogni persona può avere una sola data di nascita. Chiamiamo tali proprietà separare... Per altre proprietà, è possibile che esistano più valori per un oggetto contemporaneamente. Supponiamo, ad esempio, che nel descrivere il "DIPENDENTE", la "LINGUA STRANIERA" che possiede sia fissata come sua proprietà. Poiché un dipendente può conoscere diverse lingue straniere, verrà chiamata tale proprietà plurale... Quando si descrive la relazione tra un oggetto e le sue proprietà, utilizzeremo una freccia singola per proprietà singole e una doppia freccia per proprietà multiple.

Inoltre, alcune proprietà sono permanenti, il loro valore non può cambiare nel tempo. Chiamiamo tali proprietà statico, e quelle proprietà, il cui valore può cambiare nel tempo, saranno chiamate dinamico.

Un'altra caratteristica della relazione tra un oggetto e la sua proprietà è il segno se questa proprietà è presente in tutti gli oggetti di una data classe o assente in alcuni oggetti. Ad esempio, per i singoli dipendenti potrebbe esistere la proprietà "LAUREA ACCADEMICA" e altri oggetti di questa classe potrebbero non avere la proprietà specificata. Chiamiamo condizionali tali proprietà.

Quando si descrive la connessione di una proprietà condizionale con un oggetto, utilizzeremo una linea tratteggiata e, per indicare le proprietà dinamiche e statiche, utilizzeremo le lettere D e S sopra la linea corrispondente.

A volte in un modello infologico è utile introdurre il concetto di "proprietà composta". Esempi di tali proprietà sarebbero INDIRIZZO, composto da CITTÀ, VIA, CASA e APPARTAMENTO, e DATA DI NASCITA, composto da NUMERO, MESE e ANNO. In ILM, usiamo un quadrato per denotare una proprietà composta da cui hanno origine le linee che lo collegano con le designazioni dei suoi elementi costitutivi.

Relazioni tra oggetti

Oltre alla connessione tra un oggetto e le sue proprietà, il modello infologico registra le connessioni tra oggetti di classi diverse. Ci sono link del tipo:

  • "Uno a uno" (1: 1): in ogni momento, ogni rappresentante (istanza) dell'entità A corrisponde a 1 o 0 rappresentanti dell'entità B:
Lo studente non può "guadagnare" una borsa di studio, ricevere una borsa di studio regolare o una delle borse di studio maggiorate.
  • "Uno a molti" (1: M): un rappresentante dell'entità A corrisponde a 0, 1 o più rappresentanti dell'entità B.
L'appartamento può essere vuoto, uno o più inquilini possono viverci.
  • "Molti a uno" (M: 1)

Questi tipi di relazioni sono a volte indicati come il grado di relazione. Oltre al grado di connessione nel modello infologico, per caratterizzare la connessione tra entità diverse, è necessario indicare la cosiddetta "classe di appartenenza", che mostra se non può esserci connessione tra un oggetto di questa classe e qualsiasi oggetto di un'altra classe. La classe di entità deve essere obbligatoria o facoltativa.

Spieghiamo quanto detto con esempi concreti. Come accennato in precedenza, il modello infologico non è costruito per un oggetto separato, ma visualizza le classi di oggetti e le relazioni tra di loro. Il diagramma corrispondente che lo mostra è chiamato diagramma di tipo ER (questo nome è dovuto al fatto che in inglese la parola "entità" è scritta "Entità" e la relazione è "Relazione"). Tuttavia, a volte, oltre ai diagrammi di tipo ER, vengono utilizzati diagrammi di istanza ER.

Supponiamo che il modello infologico mostri una relazione tra due classi di oggetti: "PERSONALITÀ" e "LINGUA STRANIERA". -

Supponiamo che l'argomento sia una fabbrica in cui alcuni dipendenti conoscano una lingua straniera, ma nessuno di loro parla correntemente più di una lingua. Naturalmente ci sono molte lingue che nessuno dei dipendenti parla, e anche che alcuni dipendenti parlano la stessa lingua straniera.

Supponiamo inoltre che l'area disciplinare sia un'istituzione e che l'oggetto "PERSONALITÀ" rifletta i candidati che entrano in questa istituzione. Ciascuno dei candidati deve necessariamente parlare una lingua straniera, ma nessuno parla più di una lingua.

Sia nel primo che nel secondo caso considerato si osserva la relazione M: 1 tra le entità. Nel diagramma, questo è mostrato dal lato dell'oggetto "PERSONALITÀ" con una doppia freccia e dal lato dell'oggetto "LINGUA STRANIERA" - una singola freccia sulla linea che rappresenta la relazione tra queste entità.

La differenza nelle situazioni considerate è che nel primo caso la classe di appartenenza è facoltativa per entrambe le entità, e nel secondo, per l'entità "PERSONALITÀ", la classe di appartenenza è obbligatoria. Questo è mostrato sul diagramma da un punto nel rettangolo corrispondente all'oggetto "PERSONALITÀ".

Lascia che l'area disciplinare sia la stessa del caso precedente, ma ci sono situazioni in cui alcuni candidati conoscono diverse lingue straniere. In questo caso il collegamento tra gli oggetti sarà di tipo M: M.

Supponiamo che l'area disciplinare sia un istituto linguistico, in cui ciascuno dei dipendenti conosce necessariamente più lingue straniere, e per ciascuna delle lingue conosciute dalla scienza in questo istituto ci sia almeno uno specialista che la parli.

In questo caso, la relazione tra gli oggetti "sarà M: M, e la classe di appartenenza di entrambe le entità è obbligatoria".

Oggetti semplici e complessi

Un oggetto si dice semplice se è considerato indivisibile. Un oggetto complesso è una combinazione di altri oggetti, semplici o complessi, visualizzati anche nel sistema informativo. Il concetto di oggetto "semplice" e "complesso" è relativo. In una vista, un oggetto può essere considerato semplice e in un'altra lo stesso oggetto può essere considerato complesso. Ad esempio, l'oggetto "sedia" nel sottosistema della contabilità dei beni materiali sarà considerato un oggetto semplice, ma per un'impresa che produce sedie sarà un oggetto composito (compresi "gambe", "schienale", "sedile", eccetera.).

Esistono diversi tipi di oggetti complessi: oggetti composti, oggetti generalizzati e oggetti aggregati.

L'oggetto composito corrisponde alla mappatura della relazione intera-parte. Esempi di oggetti compositi sono NODI - DETTAGLI, CLASSE - STUDENTI e così via.

I modelli infologici di solito non utilizzano convenzioni speciali per visualizzare oggetti complessi. La relazione tra il composto ei suoi oggetti costitutivi viene visualizzata nello stesso modo descritto sopra. Inoltre, la natura della connessione può anche essere diversa: ad esempio, "DETTAGLI" e "NODI" sono interconnessi da una relazione del tipo M: M, e "GRUPPO" e "STUDENTI" - da una relazione di 1: M .

L'oggetto generalizzato riflette la presenza del rapporto "genere - specie" tra gli oggetti dell'area disciplinare. Ad esempio, gli oggetti STUDENTE, SCOLASTICO, LAUREATO, STUDENTE STUDENTI formano un oggetto generalizzato STUDENTI. Gli oggetti che compongono un oggetto generalizzato sono chiamati le sue categorie.

Sia un oggetto "generico" che gli oggetti "specifici" possono avere un determinato insieme di proprietà. Inoltre, si osserva la cosiddetta ereditarietà delle proprietà, cioè un oggetto "specifico" ha tutte le proprietà che possiede un oggetto "generico", più proprietà inerenti solo a oggetti di questo tipo.

Gli oggetti aggregati di solito corrispondono a qualche processo in cui sono "coinvolti" altri oggetti. Ad esempio, l'oggetto aggregato "FORNITURA" combina gli oggetti "FORNITORE", che fornisce i prodotti, "CONSUMATORE", che riceve questi prodotti, nonché il "PRODOTTO" fornito. L'oggetto originale è la "DATA DI CONSEGNA". Un oggetto aggregato può, come un semplice oggetto, avere proprietà che lo caratterizzano. Nell'esempio in esame, tale proprietà può essere la dimensione della consegna.

Confronto di metodi per la costruzione di modelli ER

I modelli ER sono ampiamente utilizzati nella pratica della progettazione di database. Inoltre, sono utilizzati sia nella progettazione manuale che in quella assistita da computer. I metodi di presentazione grafica dei modelli ER differiscono leggermente nei diversi sistemi di automazione della progettazione e nelle diverse fonti letterarie.

Successivamente, considereremo le caratteristiche della presentazione dei modelli ER nei tre più famosi sistemi di automazione della progettazione (sistemi CASE): Prokit * WORKBENCH, Desing / IDEF e CASE ORACLE, nonché in alcune fonti letterarie.

Esistono diverse categorie di differenze nella rappresentazione dei modelli ER.

1. Differenze insignificanti associate all'uso di simboli diversi per visualizzare le stesse entità. Quindi, rettangoli, blocchi con angoli arrotondati, ovali, ecc. possono essere usati per denotare un oggetto.

La prossima serie di differenze riguarda il modo in cui vengono rappresentate le relazioni tra gli oggetti e la denominazione delle relazioni. Quindi, in alcune tecniche, per la rappresentazione di una connessione nel connettore di una linea che mostra tale connessione, si propone di disegnare un rombo e scrivere il nome della connessione al suo interno o accanto ad esso (modello di Chen). Poiché i collegamenti sono bidirezionali, il nome del collegamento cambierà a seconda del lato da cui viene visualizzato. Pertanto, in ILM viene spesso suggerito di indicare entrambi questi nomi (ad esempio, nei sistemi CASE ORACLE, Prokit). Inoltre, al fine di rendere chiaro a quale direzione di comunicazione si riferisca quale nome, vengono presi alcuni accordi su come posizionare questi nomi sui diagrammi. Ad esempio, nella parte superiore della riga, posiziona i nomi relativi al lato sinistro del collegamento e sotto la riga, a destra. La presenza di un numero così elevato di simboli ed etichette ingombra il modello. Inoltre, l'assegnazione stessa dei nomi è spesso alquanto difficile, il che aumenta la laboriosità della modellazione infologica. Pertanto, nei casi in cui ciò non porti ad ambiguità e ambiguità, se il sistema lo consente, è possibile raccomandare di non utilizzare designazioni e nomi speciali per i collegamenti.

Diverse convenzioni sono utilizzate per l'immagine del tipo di collegamento (1: 1, 1: M, M: M). Alcuni sistemi di automazione della progettazione, ad esempio Prokit, offrono all'utente l'opportunità di scegliere tra una varietà di possibili designazioni quelle che gli piacciono o con cui ha più familiarità. In questo sistema, le seguenti convenzioni possono essere utilizzate per indicare il tipo di collegamenti tra oggetti.

Diverse convenzioni vengono utilizzate anche per indicare l'occorrenza obbligatoria di oggetti in una relazione ("classe di appartenenza / appartenenza"). Quindi, in CASE ORACLE, la classe di appartenenza viene passata come segue; la linea tratteggiata viene utilizzata sul lato del collegamento con il quale l'elemento potrebbe non essere necessariamente nel collegamento, e dove è richiesta l'appartenenza, la linea continua. Tenendo conto della classe di appartenenza, sono possibili le tipologie di relazioni mostrate in figura.

Le designazioni utilizzate in CASE ORACLE sono più convenienti, poiché se l'oggetto partecipa a un numero elevato di collegamenti, i rettangoli aggiuntivi con punti diventano scomodi da posizionare nella figura.

In Desing IDEF, la natura della relazione di appartenenza è rappresentata come mostrato nella figura.

2. Differenze, associate anche al modo di raffigurare determinate situazioni, ma più significative, che portano a differenze nei modelli stessi. Ad esempio, nel sistema 3RACLE, un oggetto generalizzato è rappresentato da blocchi "nidificati" che rappresentano oggetti "specifici" all'interno di un blocco che rappresenta un oggetto "generico". La figura mostra un'immagine dell'oggetto PERSONALITÀ discusso sopra, nelle convenzioni utilizzate in CASE ORACLE.

Come risulta dal confronto delle figure, l'immagine degli oggetti generalizzati nei metodi confrontati differisce non solo nella forma di presentazione. Quindi, se un oggetto è classificato secondo criteri diversi, quando si utilizza il primo dei metodi considerati per rappresentare oggetti generalizzati, è chiaramente visibile su quale base viene eseguita la classificazione. Il secondo metodo di immagine non fornisce questo. In altre parole, il metodo di rappresentazione degli oggetti generalizzati proposto all'inizio del capitolo è semanticamente più significativo e informativo.

La figura mostra lo stesso oggetto PERSONALITY generico utilizzando la sintassi del sistema IDEF1X. In termini di semantica, questo metodo di immagine è più vicino al metodo di base dell'immagine ILM da noi proposto. La differenza è che per le entità di categoria e le entità "generali" in IDEF1X, vengono utilizzate le stesse designazioni -

3. Oltre alle differenze nella rappresentazione di alcune entità, nella teoria della modellazione infologica c'è una discrepanza nella terminologia utilizzata. Ad esempio, in CASE ORACLE, un oggetto generico è chiamato syper-type e un oggetto specifico è chiamato sottotipo. Esistono molte differenze terminologiche del genere, ma questo non è il nostro obiettivo ora.

4. Il prossimo cerchio di differenze è associato all'immagine spaziale di alcuni componenti dell'ILM. Ad esempio, le proprietà di un oggetto a volte non vengono visualizzate nello stesso diagramma degli oggetti e le relazioni tra di essi e le loro descrizioni vengono eseguite separatamente. Spesso “la scrittura delle proprietà è presentata in forma tabulare o in altra forma analitica, e non in forma grafica.

ILM, anche per un'area disciplinare piccola e semplice, include una descrizione di un numero significativo di componenti e relazioni tra loro. Ciò solleva il problema della chiarezza dello schema generale. Questo problema viene risolto in modi diversi con la costruzione manuale e automatizzata di un modello infologico. Nei sistemi automatizzati, molto spesso viene costruita una singola immagine del modello ER e viene utilizzata la tecnica dello scaling, quando, diminuendo o aumentando la scala dell'immagine, è possibile vedere sullo schermo sia l'intero diagramma che il suo singolo frammento.

Varie tecniche sono inoltre utilizzate per ridurre il numero di incroci di linea sul diagramma. Quindi, nel sistema Prokit, per questi scopi, è consentito duplicare l'immagine di un oggetto e posizionare questo duplicato accanto all'oggetto con cui deve essere collegato. Per dimostrare che questo non è un oggetto nuovo, viene utilizzata una designazione convenzionale, ad esempio viene delineato un angolo per i blocchi corrispondenti.

Nella progettazione manuale, di solito non è possibile rappresentare l'intero modello ER come un unico diagramma. In questo caso, possiamo consigliare la seguente tecnica: rappresentare e descrivere ogni oggetto in modo indipendente, assegnare un codice funzione a ciascun oggetto. Utilizzando questi codici, per ogni oggetto, indicare la sua relazione con altri oggetti.

5. Alcune delle capacità disponibili in alcuni sistemi o tecniche mancano in altri. In questi casi sono possibili diverse opzioni: a) per rappresentare la situazione si utilizzano le possibilità fornite dal modello, ma ciò richiede l'uso di alcune tecniche, spesso alquanto artificiali, per rappresentarle; b) la situazione semplicemente non viene visualizzata nel modello.

Ad esempio, in molti sistemi di modellazione infologica, si presume che le proprietà di un oggetto possano essere solo singole. In questo caso, ogni proprietà multipla dovrebbe essere rappresentata come un oggetto indipendente e dovrebbe essere rappresentata la relazione tra questo oggetto appena introdotto e l'oggetto originale.

In IDEF, le proprietà dell'oggetto possono essere solo singole e sempre definite (non condizionali). Se una proprietà può essere assente in alcuni oggetti, è necessario selezionare entità separate, ad esempio un DIPENDENTE PERSONALE con l'attributo SALARY e HOURS, che non ha tale attributo. Ciò comporterà la necessità di selezionare un gran numero di oggetti e collegamenti nell'ILM, per ridurre la visibilità del modello. Ad esempio, singole istanze dell'oggetto PERSONALITY possono o meno avere un titolo accademico, titolo accademico, anno di laurea e molte altre caratteristiche. Per ciascuna di queste caratteristiche, dovrai sottoclasse.

Alcune metodologie non introducono un oggetto aggregato come categoria indipendente. In questo caso, l'oggetto aggregato viene rappresentato come semplice e l'utente deve prima definirne l'identificatore e le proprietà. Se il modello consente di visualizzare solo collegamenti binari, il progettista deve trasformare il collegamento n-ario in un insieme di collegamenti binari.

Oltre alle difficoltà indicate nel determinare l'identificatore di un'entità aggregata, possono sorgere problemi quando si passa da HLM a un modello datalogico.

L'opzione quando la situazione non può essere riflessa nell'ILM può essere illustrata da quanto segue: se il metodo di costruzione del modello non implica la fissazione della classe di appartenenza nella connessione, queste informazioni andranno semplicemente perse.

In alcuni sistemi CASE, c'è una situazione in cui un costrutto è consentito nel sistema come intermedio. Ad esempio, in IDEF e CASE ORACLE, la relazione M:M è consentita come relazione non specifica. La sua presenza è consentita nelle prime fasi di sviluppo del progetto, e in futuro dovrà essere sostituita da un rapporto specifico introducendo una terza entità. Questo è uno svantaggio del sistema, poiché, in primo luogo, non tutti i DBMS richiedono tale trasformazione (alcuni sistemi supportano esplicitamente la relazione M: M) e, in secondo luogo, se tale trasformazione è richiesta, potrebbe essere completamente eseguita dal design sistema di automazione automaticamente nella fase di progettazione datalogica. Anche se viene eseguita la progettazione "manuale", la trasformazione specificata dovrebbe essere eseguita dal progettista nella fase della progettazione datalogica e non durante la descrizione dell'area tematica. Inoltre, durante la trasformazione in esame in fase di progettazione infologica, viene introdotta in IDEF una nuova categoria di entità - entità di intersezione o entità associative. L'introduzione di nuove entità comporta l'introduzione di ILM e rapporti aggiuntivi. Tutto ciò, nel suo insieme, complica il già difficile compito del design infologico.

Nell'area argomenti possono esserci entità i cui identificatori dipendono dall'identificatore di qualche altro oggetto. Ad esempio, se i siti di un'impresa sono numerati all'interno di un'officina, l'identificatore del sito sarà composto, includendo il codice dell'officina e il codice del sito. In un modello infologico, puoi limitarti a specificare questo identificatore composto. Alcune tecniche per la costruzione di modelli ER (ad esempio, la metodologia IDEFIX, Prokit) prevedono l'introduzione di tipi speciali di entità e tipi speciali di relazioni per visualizzare tali situazioni. Quindi, in IDEF, un'entità, per l'identificazione della quale è necessario considerare la sua relazione con altre entità; è chiamato un'entità dipendente dall'ID e utilizza una casella con gli angoli arrotondati per visualizzarlo. Un rettangolo viene utilizzato per rappresentare un'entità indipendente dall'identificazione. Per la connessione di oggetti, di cui uno è necessario per la completa identificazione dell'altro, si introduce il concetto di relazione identificativa. Per esso, viene anche introdotto il proprio simbolo. In IDEF, viene utilizzata una linea continua per una relazione di identificazione e una linea tratteggiata per una relazione non identificativa.

6. Come notato sopra quando si considerano i principi della modellazione infologica, i concetti di "oggetto", "proprietà", "relazione" sono relativi. Quindi, nel nostro modello infologico di base proposto, si distinguono diversi tipi di oggetti: semplici, composti, aggregati, generalizzati. Alcuni sistemi, come IDEF, non dispongono di una tale classificazione degli oggetti e utilizzano invece varietà di relazioni.

E lui e l'altro approccio hanno il diritto di esistere. Non vi è alcuna differenza fondamentale che comporti conseguenze significative negli approcci confrontati.

Fondamenti di sistemi informativi. Banca dati.

Piano.

1. Concetti di base.

2. Classificazione delle banche dati.

3. Modelli di dati.

4. Oggetti informativi e connessioni.

5. Progettazione di banche dati.

6. Composizione del file database. Architettura DBMS.

7. Tabelle di collegamento. Integrità dei dati.

8. Tipi di richieste. Struttura delle richieste.

Concetti basilari.

Nella storia dello sviluppo della tecnologia informatica, c'erano due direzioni principali della sua applicazione.

Il primo prevede l'esecuzione di calcoli numerici di grandi dimensioni che sono difficili o impossibili da eseguire manualmente. Lo sviluppo di quest'area ha contribuito all'accelerazione dello sviluppo di metodi di modellazione matematica, metodi numerici, linguaggi di programmazione di alto livello progettati per una comoda rappresentazione di algoritmi computazionali.

La seconda direzione è associata all'uso della tecnologia informatica per la creazione, l'archiviazione e l'elaborazione di grandi quantità di dati. Tali compiti sono risolti Sistemi di informazione(È). Questi includono ricerca, riferimento, sistemi bancari, sistemi di gestione aziendale automatizzati.

Il primo tipo di compiti è caratterizzato da grandi quantità di lavoro computazionale con requisiti di memoria relativamente piccoli. Al contrario, le attività del secondo tipo richiedono grandi quantità di memoria esterna con calcoli relativamente piccoli. La seconda area di applicazione è nata un po 'più tardi della prima. Ciò è dovuto al fatto che nelle prime fasi la memoria esterna dei sistemi informatici era imperfetta, ad es. non era possibile archiviare in modo affidabile grandi quantità di dati.

Per facilitare l'elaborazione delle informazioni, vengono creati sistemi informativi. Sistema informativo è un complesso hardware e software che fornisce le seguenti funzioni:

· Inserimento di dati su oggetti di una determinata area tematica;

· Archiviazione affidabile e protezione dei dati nella memoria esterna del sistema informatico;

· Aggiunta, cancellazione, modifica dei dati;

· Ordinamento, selezione dati in base alle richieste dell'utente;

· Implementazione di trasformazioni informative specifiche per una determinata area disciplinare;

· Fornire agli utenti una comoda interfaccia; compilazione e rendicontazione dei dati.

La quantità di dati in un IC può essere di miliardi di byte. Da qui la necessità di dispositivi che memorizzino grandi quantità di dati nella memoria esterna. Il numero di utenti IS può raggiungere decine di migliaia, il che crea molti problemi nell'implementazione di algoritmi efficienti per il funzionamento di IS. Questi compiti vengono risolti con successo se i dati nel sistema informativo strutturato.

Esempio dati strutturati - gruppo di studenti. Ogni membro del gruppo è per molti versi individuale e può essere caratterizzato da diversi lati. Ma il preside, molto probabilmente, sarà interessato ai seguenti dati (area disciplinare): cognome, nome, patronimico, corso, nome del gruppo, una serie di voti nelle discipline studiate. Pertanto, dall'intera varietà di dati, ne vengono selezionati solo alcuni, ad es. viene creato un modello informativo dell'oggetto. I dati sono ordinati in base alle tipologie (formati) di dati utilizzati, dopodiché possono essere trattati da una macchina automatica, che è un computer.

La raccolta di dati correlati si chiama struttura dati... Viene chiamato un insieme di dati strutturati relativi a un'area tematica banca dati (DB) ... Viene chiamato l'insieme dei programmi che implementano le funzioni IS nel database in una forma user-friendly sistema di gestione della banca dati (DBMS)... I programmi che eseguono un'elaborazione specifica dei dati in un database costituiscono un pacchetto applicativo (APP). Quindi, possiamo concludere che IPè una combinazione organizzativa di hardware (AO), uno o più database (DB), un sistema di gestione di database (DBMS) e pacchetti applicativi (PPP).

Classificazione delle banche dati.

Con la tecnologia di elaborazione I dati del DB sono suddivisi in centralizzati e distribuiti.

centralizzato Il database è archiviato interamente nella memoria di un sistema informatico. Se il sistema fa parte di una rete, è possibile accedere a questo database di altri sistemi.

distribuito Un database è costituito da più database, eventualmente sovrapposti o duplicati, archiviati nella memoria di diversi sistemi informatici, uniti in una rete.

In base al metodo di accesso ai dati, i database sono suddivisi in accesso locale e remoto (rete).

Accesso locale presuppone che il DBMS elabori il DB che è memorizzato sullo stesso sistema informatico.

Accesso remoto- questo è un appello al database, che è memorizzato su uno dei sistemi inclusi nella rete informatica. L'accesso remoto può essere eseguito su base file server o client server.

Architettura del file server prevede l'allocazione di uno dei computer della rete (server) per l'archiviazione di un database centralizzato. Tutti gli altri computer della rete (client) svolgono il ruolo di workstation che copiano la parte richiesta del database centralizzato nella loro memoria, dove avviene l'elaborazione. Tuttavia, con un'elevata intensità di richieste al database centralizzato, il carico sui canali di rete aumenta, il che porta ad una diminuzione delle prestazioni dell'IS nel suo insieme.

Architettura client-server presuppone che il server dedicato all'archiviazione del database centralizzato elabori inoltre le richieste dei client. I client ricevono i dati già elaborati sulla rete. Data l'ampia diffusione delle banche dati in diversi ambiti, recentemente l'architettura client-server è stata utilizzata anche su singoli sistemi informatici. In questo caso, il programma client, che necessita di dati dal database, invia una richiesta al server, il programma che gestisce la manutenzione del database, in uno speciale linguaggio di query universale. Il server invia al programma i dati che sono il risultato di una ricerca nel database su sua richiesta. Questo metodo è conveniente in quanto il programma client non è obbligato a contenere tutte le funzioni di manutenzione e mantenimento del database, questo; il server è in carica. Di conseguenza, è più semplice scrivere programmi client e inoltre un numero qualsiasi di client può accedere al server.

Modelli di dati.

Per implementare le funzioni principali nell'IS, vengono utilizzati vari principi di descrizione dei dati. Il nucleo di qualsiasi database è modello di presentazione dei dati.

Modello di dati definisce la struttura logica dei dati archiviati nel database (ovvero l'introduzione di alcune convenzioni sulla modalità di presentazione dei dati) e la relazione tra di essi.

I principali modelli di presentazione dei dati includono:

gerarchico

Rete

relazionale

Post-relazionale

Multidimensionale

Orientato agli oggetti

Il più diffuso è il modello dati relazionale, è il più universale e ad esso si possono ridurre altri modelli Il modello dati relazionale è focalizzato sull'organizzazione dei dati sotto forma di tabelle bidimensionali.

Il concetto più importante di modelli di dati relazionali è essenza. L'essenzaè un oggetto di qualsiasi natura, i cui dati sono memorizzati nel database. I dati su, le entità sono archiviati in tabelle bidimensionali, che vengono chiamate relazionale.

Ogni tabella relazionale deve avere le seguenti proprietà:

· Un elemento di tabella - un elemento di dati;

· Ogni colonna della tabella contiene dati dello stesso tipo (intero, numerico, testo, ecc.);

· Ogni colonna ha un nome univoco;

· Il numero di colonne viene impostato durante la creazione di una tabella;

· L'ordine dei record in relazione può essere arbitrario;

· Le registrazioni non devono essere ripetute;

· Il numero di record in relazione non è limitato.

Gli oggetti, le loro interconnessioni e relazioni sono presentati nella forma tavoli... La costruzione formale delle tabelle è legata al concetto fondamentale atteggiamento(termine relazionale deriva dalla parola inglese relazione- atteggiamento).

Per dati insiemi finiti arbitrari М 1, М 2, ..., MN, l'insieme di tutte le possibili collezioni della forma (μ 1, μ 2, ..., μ Ν), dove μ 1 Є М 1, μ 2 Є М 2, ..., μ Ν Є MN li chiamiamo prodotto cartesiano М 1 × М 2 × ... × MN. La relazione R definito sull'insieme M 1, M 2, ..., M N è un sottoinsieme del prodotto cartesiano M 1 × M 2 × ... × M N. Inoltre, gli insiemi М 1, М 2, ..., M N sono chiamati domini relazioni, e gli elementi del prodotto cartesiano sono tuple relazione. Il numero N determina livello relazioni, il numero di tuple è il suo potenza.

In una tabella relazionale, ogni colonna è un dominio (il suo nome alternativo campo), e la raccolta di elementi di ogni riga è una tupla (o registrazione).

La barra del titolo si chiama schema di relazione.

ad esempio, il diagramma di relazione STUDENTE può essere il seguente:

STUDENTE (COGNOME, NOME, COGNOME, FACOLTA', CORSO, GRUPPO), qui STUDENTE è un atteggiamento, e COGNOME, NOME, ecc. - attributi.

In una relazione, ogni istanza specifica di un'entità è rappresentata da una stringa chiamata da una tupla(o registrazione).

La tabella seguente presenta la relazione STUDENTE

COGNOME NOME PATRONIMICO FACOLTÀ BENE
Ivanov Ivan Ivanovich IEF
Petrov Peter Petrovic RTF
Sidorov Anton Egorovich VT

Chiave primaria una relazione è un campo o un gruppo di campi che identifica in modo univoco un record. In relazione a STUDENTE, la chiave primaria può essere il campo COGNOME, se non ci sono omonimi in tutto, questo sarà semplice chiave. Se ci sono omonimi, verrà creato un insieme di campi: cognome, nome, patronimico composito chiave primaria. In pratica, il campo viene solitamente scelto come campo chiave in cui le coincidenze sono volutamente escluse.

Per l'esempio in esame, tale campo può essere il numero del registro dei voti dello studente.

Proprietà chiave primaria:

· Unicità - nella tabella può essere assegnata una sola chiave primaria, i campi di una chiave composta possono essere ripetuti, ma non tutti;

· Non ridondanza - non devono esistere campi che, essendo rimossi dalla chiave primaria, non ne violino l'unicità;

· La chiave primaria non deve includere campi di tipo, commento e grafica.

Per evitare record duplicati, vieni a collegare le tabelle. Ad esempio, se in relazione allo STUDENTE è necessario descrivere l'università in cui studia, allora, a prima vista, nella relazione potrebbero essere inclusi i seguenti campi STUDENTE (COGNOME, NOME, PATRONARIO, FACOLTA', CORSO, GRUPPO , NOME DELL'UNIVERSITÀ, INDIRIZZO). Ma quando si compila una tabella del genere, ogni studente dovrà indicare un nome piuttosto lungo dell'università e il suo indirizzo, il che è scomodo. Inoltre, qualsiasi piccolo errore nell'inserimento di questi campi interromperà la coerenza del database. Ad esempio, un errore nell'indirizzo di un'università porterà al fatto che nel database compariranno due università con lo stesso nome e indirizzi diversi. In questo caso, agiscono così: inserisci il campo "codice università" (un numero intero) nella relazione STUDENTE e aggiungi un'altra relazione dell'università (codice università, nome, indirizzo). Successivamente i rapporti tra lo STUDENTE e l'Ateneo saranno legati dal campo “codice ateneo”.

STUDENTE (Cognome, Nome, Patronimico, FACOLTA', CORSO, GRUPPO, CODICE UNIVERSITARIO)

UNIVERSITÀ (CODICE UNIVERSITARIO, NOME, INDIRIZZO, TELEFONO)

Quando si lavora con tali tabelle, possono essere ripetuti solo i dati nel campo "CODICE dell'università" e tutte le informazioni necessarie sull'università possono essere ricavate dalla relazione dell'università. Nota che inserendo un numero intero invece di un nome lungo nel campo "CODICE Università" si otterranno molti meno errori. Per HEI, il campo HEI CODE sarà la chiave primaria e per STUDENTE, il campo HEI CODE sarà la chiave esterna.

Per collegare tabelle relazionali è necessario inserire campi dello stesso tipo in entrambe le tabelle, che determineranno la relazione tra i record di entrambe le tabelle. Esistono diversi tipi di relazioni: uno a uno, uno a molti e molti a molti. Nell'esempio precedente, è stata stabilita una relazione uno a molti, ad es. un record nella tabella UNIVERSITY corrisponde a molti record nella tabella STUDENTE.

Oggetti informativi e connessioni.

Oggetto informativoè una descrizione di un oggetto, processo o fenomeno reale sotto forma di un insieme delle sue caratteristiche (elementi informativi), chiamato requisiti... Un oggetto informazioni di una certa struttura (composizione richiesta) forma un tipo (classe), a cui viene assegnato un nome univoco. Un oggetto informazioni con caratteristiche specifiche è chiamato istanza. Ogni istanza viene identificata specificando un attributo chiave (chiave). Gli stessi attributi in diversi oggetti di informazione possono essere sia chiave che descrittivi. Un oggetto informazioni può avere più chiavi.

Esempio... L'oggetto informativo STUDENTE ha le seguenti proprietà: Camera(numero del registro di voto - requisito chiave), cognome, nome, patronimico, Data di nascita, luogo di studio codice... Oggetto dell'informazione AFFARI PERSONALI: numero studente, indirizzo di casa, numero di certificato oh educazione secondaria, stato civile, bambini... L'oggetto informativo LUOGO DI APPRENDIMENTO include oggetti di scena, il codice(oggetti di scena chiave), nome dell'università, facoltà, gruppo... Oggetto informativo INSEGNANTE: il codice(oggetti di scena chiave), sedia, cognome, nome, patronimico, titolo accademico, titolo accademico, posizione.

Le relazioni che esistono tra oggetti reali sono definite nei modelli informativi come connessioni ... Esistono tre tipi di relazioni: uno a uno (1:1), uno a molti(1: ∞) e molti a molti (∞:∞).

Connessione uno a uno definisce la corrispondenza ad un'istanza dell'oggetto informativo X con non più di un'istanza dell'oggetto informativo Y, e viceversa.

Esempio... Gli oggetti informativi STUDENTE e AFFARI PERSONALI saranno collegati in un rapporto uno a uno. Ogni studente ha alcuni dati univoci nel suo file personale.

Quando si comunica uno a molti Qualsiasi numero di istanze dell'oggetto informativo Y può corrispondere a un'istanza dell'oggetto informativo X, ma ogni istanza dell'oggetto informativo Y è associata a non più di un'istanza dell'oggetto X.

Esempio... Deve essere stabilita una relazione uno a molti tra gli oggetti informativi LOCATION e STUDENTE. Lo stesso luogo di studio può essere ripetuto più volte per studenti diversi.

Connessione molti a molti presuppone che un numero qualsiasi di istanze di Y possa corrispondere a un'istanza dell'oggetto informazioni X e viceversa.

Esempio... Gli oggetti informativi STUDENTE e INSEGNANTE hanno una relazione molti a molti. Ogni studente impara da molti insegnanti e ogni insegnante insegna a molti studenti.

In Access è possibile definire tre tipi di relazioni tra le tabelle: uno a molti, molti a molti e uno a uno... Connessione uno a moltiè il tipo più comunemente usato di relazione tra tabelle. Connessioni molti a molti viene implementato solo con l'ausilio di una terza tabella (di collegamento), la cui chiave è costituita da almeno due campi, di cui uno comune alla tabella X e l'altro comune alla tabella Y. Relazione uno a uno non vengono utilizzati molto spesso, poiché tali dati possono essere inseriti in una tabella. Connessione con l'atteggiamento uno a uno vengono utilizzati per separare tabelle molto larghe, per separare parti di una tabella per motivi di sicurezza e per memorizzare informazioni relative a un sottoinsieme di record nella tabella principale.


Informazioni simili.


Quando si sviluppa un database, viene prima esplorata l'area tematica (ad esempio, "Università"). Gli oggetti principali sono evidenziati in esso. Possono essere reali ("Studente") o astratti ("Disciplina"). Ogni oggetto è caratterizzato da un insieme di proprietà - attributi oggetto (campi dati)... Per ogni oggetto, gli attributi sono riempiti con valori specifici. Gli attributi possono essere semplici e chiave.

Attributo chiave (chiave)- si tratta di elementi di dati separati mediante i quali è possibile determinare tutti gli altri elementi di dati ("Numero registro dei voti"). La chiave può essere semplice o composta ("Cognome", "Nome", "Patronimico").

Dopo aver definito gli oggetti principali dell'area tematica utilizzando i loro attributi chiave, vengono stabiliti i collegamenti tra questi oggetti:

a) 1: 1 ("uno a uno") - ogni istanza dell'oggetto A corrisponde a una sola istanza dell'oggetto B e viceversa (Figura 17).

Figura 17 - Relazione uno a uno

b) 1: M ("uno-a-molti") - ogni istanza dell'oggetto A può corrispondere a 0, 1 o più istanze dell'oggetto B, ma ogni istanza dell'oggetto B corrisponde solo a 1 istanza dell'oggetto A (Figura 18 ).

Figura 18 - Relazione uno a molti

c) M: M ("molti a molti") - ogni istanza dell'oggetto A corrisponde a 0, 1 o più istanze dell'oggetto B e viceversa (Figura 19).

Figura 19 - Relazione molti a molti

Gli oggetti principali selezionati dell'area tematica con connessioni stabilite tra di loro rappresentano modello infologico .

Relazione

Un oggetto dell'area tematica può essere rappresentato sotto forma di relazione di tabella - una tabella di un tipo speciale, in cui:

Ogni riga contiene informazioni su un'istanza di un oggetto (linea di relazione - corteo);

· Tutte le colonne sono omogenee, ovvero tutti gli elementi di una colonna hanno lo stesso tipo e lunghezza, hanno un nome e contengono informazioni su un attributo separato di un oggetto;

· Ogni elemento rappresenta un elemento di dati sull'oggetto;

· Tutte le righe e le colonne sono uniche (nessuna ripetizione);

· Non ci sono celle vuote nelle tabelle.

I database basati su tabelle di relazione sono chiamati relazionale (relazione). Un insieme di relazioni (tabelle) viene utilizzato in un database per memorizzare informazioni sugli oggetti nel mondo reale e per modellare le connessioni tra di essi. Ad esempio, per memorizzare l'oggetto "studente", utilizzare la relazione ALUNNO, in cui le proprietà dell'oggetto si trovano nelle colonne della tabella, che sono gli attributi dell'oggetto (tabella 8):

Tabella 8 - Rapporto ALUNNO


L'elenco dei nomi degli attributi di relazione è chiamato schema di relazione... Diagramma di relazione ALUNNO si può scrivere così: STUDENTE = (Cognome, Fascia di età ).

Un database relazionale è un insieme di relazioni interconnesse. Ogni relazione (tabella) nel computer è rappresentata sotto forma di un file di record.

Sulle tabelle - relazioni possono essere eseguite otto diverse operazioni di teoria degli insiemi e di algebra relazionale (unione, selezione, proiezione, intersezione, addizione, moltiplicazione, differenza, divisione). Di conseguenza, molte nuove tabelle (calcolate) - relazioni (report, selezioni, query, ecc.) possono essere ottenute dalle relazioni (di base) introdotte.

A causa del fatto che le informazioni nei database sono presentate in due forme: informazioni memorizzate (tabelle originali inserite) e informazioni calcolate (tabelle ottenute sulla base di quelle iniziali), è possibile risparmiare notevolmente memoria e accelerare l'elaborazione di queste informazioni .

Per creare un database semplice e affidabile, è necessario normalizzare le relazioni. Normalizzazione delle relazioni- un processo graduale di scomposizione delle relazioni in relazioni più piccole e più semplici. Nonostante l'aumento del numero di relazioni contemporaneamente, le operazioni di accesso ai dati sono notevolmente accelerate grazie a una migliore correttezza, eliminazione delle duplicazioni e garantire la coerenza dei dati nel database.

Ce ne sono diversi forme normali:

1a forma normale. La relazione è considerata in il primo forma normale se tutti i suoi attributi sono indivisibili (semplice). Ad esempio, la relazione mostrata nella Figura 20 di seguito non è normalizzata perché contiene un attributo complesso Sport... Per portare questa relazione in una forma normalizzata, è necessario eliminare questo attributo complesso.


Figura 20 - Riduzione alla prima forma normale

Nella relazione risultante, la chiave è composta, costituita da attributi Cognome e Tipo di sport.

2a forma normale. Una relazione è considerata in seconda forma normale se tutti i suoi attributi dipendono dalla chiave composta nel suo insieme e non dalle sue parti. Pertanto, se una relazione è in prima forma normale e ha una chiave semplice anziché composta, allora è automaticamente sia nella prima che nella seconda forma normale.

Ad esempio, per quanto riguarda DICHIARAZIONE(Figura 21), che ha una chiave composta " Studente, Disciplina", attributo Docente dipende solo da discipline piuttosto che dall'intera chiave. Questa relazione può essere normalizzata "spezzandola" in due relazioni PROGRESSO e INSEGNANTE:

DICHIARAZIONE = (Studente, Disciplina, docente, valutazione)


PRESTAZIONI = (Studente, Disciplina, Grado) INSEGNANTE = (Disciplina, Docente)

Figura 21 - Riduzione alla seconda forma normale

3a forma normale. Una relazione è considerata in terza forma normale se le dipendenze tra attributi non chiave (dipendenze transitive) vengono rimosse. Ad esempio, per quanto riguarda SOGGETTO = (Nome, Docente, Presidente, Telefono) non è un attributo chiave Telefono dipende da un attributo non chiave Dipartimento.

Per eliminare la dipendenza transitiva è necessario "splittare" in due la relazione originaria DISCIPLINA = (Nome, Docente, Dipartimento) e DATI DI REPARTO = (Dipartimento, Telefono).

Un'ulteriore semplificazione delle tabelle è associata a un'ulteriore restrizione dei tipi di dipendenze tra attributi di relazione.

Dopo la normalizzazione delle relazioni e l'instaurazione di connessioni tra di esse, si forma un modello infologico dell'area disciplinare. Di seguito (in Figura 22) è riportato un esempio di modello infologico di un'azienda che redige transazioni con i clienti attraverso i suoi dipendenti-manager:


Cliente Cognome I.O. Transazione n. Cognome I.O. Posizione Data L'indirizzo Esperienza Cognome del nome del manager Telefono Cognome, I.O. del cliente

Figura 22 - Modello dell'impresa

Sulla base del modello infologico, viene sviluppato un modello dati che descrive la struttura logica del database su linguaggio di descrizione dei dati (DL), - modello datalogico (DM).

Per associare il DM al supporto di memorizzazione, viene utilizzato il modello dati del livello fisico - modello fisico (FM). In questa fase della progettazione fisica del database, viene effettuata la scelta del tipo di supporto, viene sviluppato il formato dei record archiviati e vengono progettate le modalità di accesso ai dati.

DBMS

Successivamente, è già possibile formare (riempire) il database e lavorarci direttamente. L'utilizzo dei database si riduce all'esecuzione delle seguenti operazioni:

1) registrazione (riempimento del database);

2) visualizzazione;

3) modifica (aggiunta, eliminazione, correzione);

4) campione (richieste, rapporti).

Queste operazioni di accumulo e manipolazione dei dati vengono eseguite da un apposito programma - sistema di gestione di database (DBMS).

Secondo la tecnologia per la risoluzione dei problemi eseguita dal DBMS, i database possono essere suddivisi in due tipi:

Database centralizzato (archiviato interamente sull'OVC di un sistema informatico e, se il sistema fa parte di una rete, è possibile l'accesso a questo database di altri sistemi);

Database distribuito (composto da diversi database, a volte sovrapposti o duplicati, archiviati sull'OVC di diversi nodi di rete).

Il DBMS fornisce l'accesso ai dati del database in due modi:

Accesso locale (presuppone che il DBMS elabori il database, che è memorizzato sull'OVC dello stesso computer);

Accesso remoto (si tratta di una chiamata al database, che è memorizzato su uno dei nodi di rete).

L'accesso remoto può essere eseguito utilizzando la tecnologia file-server o client-server. La tecnologia del file server presuppone l'allocazione di uno dei sistemi informatici, chiamato server, per l'archiviazione del database. Tutti gli altri computer della rete (client) svolgono il ruolo di workstation che copiano la parte richiesta del database centralizzato nella loro memoria, dove avviene l'elaborazione. La tecnologia client-server presuppone che un server dedicato alla memorizzazione di un database centralizzato elabori inoltre le richieste dalle workstation client. Il client invia una richiesta al server. Il server invia i dati al client, che è il risultato di una ricerca nel database su sua richiesta.

Sistema di gestione del database: un insieme di software e strumenti linguistici.

Software fornire l'organizzazione dell'input, l'elaborazione e l'archiviazione dei dati, nonché garantire l'interazione di tutte le parti del sistema durante il suo funzionamento (impostazione, test, ripristino).

Strumenti linguistici fornire l'interazione dell'utente con il database. Questi includono:

  • linguaggi di manipolazione dei dati(YAMD) - lingue di query al database, che è un sistema di comandi per lavorare con i dati (selezione, query, inserimento, eliminazione, ecc.);
  • linguaggi di definizione dei dati(YOD) - linguaggi progettati per creare uno schema di database (descrizioni dei tipi di dati, struttura del database, interazione e relazioni tra elementi).


Figura 22 - Schema di interazione dell'utente con il database

DBMS moderno- un programma applicativo progettato per facilitare il lavoro di un utente non qualificato con un database. Ci lavora in linguaggio naturale senza conoscere il linguaggio di manipolazione dei dati e il linguaggio di definizione dei dati (Figura 22). Uno degli esempi di un tale DBMS è il noto prodotto Microsoft: Access DBMS.


Database come modello di informazioni di dominio

Qualsiasi area tematica può essere considerata come un campo di informazioni dinamico, che copre le proprietà degli oggetti, le loro relazioni, i flussi di informazioni tra di loro, ecc. I cambiamenti nell'area tematica portano alla generazione di nuove informazioni, nuovi elementi informativi o al loro cambiamento, il che ci consente di parlare del campo dell'informazione e, inoltre, del campo dell'informazione dinamica. Ma ciò solleva la questione di come il campo informativo dell'area disciplinare sia mappato sullo spazio informativo delle banche dati, o, in altre parole, quali componenti dell'area tematica si riflettano pienamente nelle banche dati.

Il database è un modello di informazioni di dominio.

Il modello delle informazioni definisce gli oggetti e le relazioni tra di essi. Lo sviluppo di un modello di informazioni di dominio include la definizione di oggetti di dominio, un insieme di attributi che descrivono le proprietà di questi oggetti e la creazione di collegamenti tra gli oggetti.

Tutti gli insiemi di oggetti nell'area argomenti sono divisi in gruppi dello stesso tipo di oggetti con lo stesso insieme di attributi (proprietà). Per distinguere ogni oggetto dell'area tematica da altri oggetti di un determinato tipo, gli viene assegnato un identificatore che gli consente di essere referenziato in modo univoco. Questo identificatore è chiamato chiave primaria... Qualsiasi attributo o una combinazione di più attributi dell'oggetto può essere utilizzato come chiave primaria. Inoltre, vengono utilizzati identificatori non univoci, chiamati chiavi esterne(chiavi secondarie) e designando insiemi di oggetti di un dato tipo. Ciascuno di questi set include oggetti che hanno lo stesso valore di chiave esterna.

Tra gli oggetti dell'area tematica possono esserci connessioni che hanno significati significativi diversi. Questi collegamenti possono essere obbligatori e facoltativi (opzionali). Esiste una relazione obbligatoria SOSTITUISCI, ad esempio, tra 2 tipi di oggetti DIPENDENTE e POSIZIONE nell'area tematica "Risorse umane dell'organizzazione". Ogni dipendente è iscritto a qualsiasi posizione e non può esserci un dipendente che non ricopre alcuna posizione. Allo stesso tempo, la relazione è SOSTITUITA tra i tipi di oggetti POSITION e EMPLOYEE è facoltativa, poiché possono esistere posti vacanti.

I collegamenti tra i tipi di oggetti possono essere di qualsiasi dimensione (arity). Le più comunemente usate sono le relazioni binarie che stabiliscono varie corrispondenze tra oggetti di 2 tipi: "uno a uno" (1: 1), "uno a molti" (1: n), molti a molti "(m: n).

L'insieme dei tipi di oggetti e dei tipi di connessioni tra di essi caratterizza la struttura dell'area disciplinare.

Si consideri la costruzione di un modello informativo dell'area tematica utilizzando un esempio. Prendiamo un istituto di istruzione superiore come area disciplinare. Uno dei compiti associati all'organizzazione dell'ammissione a un'università è la registrazione delle informazioni sui candidati. Sono di interesse le seguenti informazioni: facoltà, specialità per la quale vengono presentati i documenti, dati anagrafici (cognome, nome, patronimico, anno di nascita, stato civile, stato sociale, ecc.), esami e voti degli stessi. Il richiedente è caratterizzato da un identificatore univoco Id *, che consente di identificare in modo univoco uno specifico richiedente.

Inoltre, sono note le seguenti relazioni:
SPECIALITÀ DI FACOLTÀ ®®;
FACOLTA ®® Id *;
SPECIALTY ®® ID *;
Id * ®® ARTICOLO;
Id * ® COGNOME, NOME, PATTERNAME, ANNO DI NASCITA,…;
Id * ® OGGETTO, VALUTAZIONE;
PRESIDENTE FACOLTA' ®, NUMERO DI TELEFONO;
CODICE SPECIALITÀ ® NUMERO, NOME SPECIALITÀ.

Qui ®® è una connessione di tipo 1: n; ® - relazione di tipo 1: 1.

Consideriamo ora il modello informativo di quella parte dell'area disciplinare, che è associata all'organizzazione dell'ammissione all'università (Fig. 1), dopo aver selezionato gli oggetti "RICHIEDENTE", "FACOLTA'", "SPECIALITÀ" e " SUBJECT" e ha formalizzato i link.


Fig. 1. Modello informativo in base all'analisi degli oggetti

Gli oggetti del modello informativo sono rappresentati da tabelle in un database relazionale. Le colonne della tabella impostano gli attributi degli oggetti, le righe della tabella corrispondono a oggetti specifici di un determinato tipo.

Le chiavi primarie ed esterne vengono utilizzate per definire le relazioni tra gli oggetti in un database relazionale. Per definire una relazione 1:1, la chiave primaria di una tabella viene inserita nella seconda tabella come chiave primaria. Per definire una relazione 1:n, la chiave primaria della prima tabella viene aggiunta alla seconda tabella, ma come chiave esterna che punta alla chiave primaria della prima tabella.

Pertanto, il database può essere considerato un modello informativo dell'area disciplinare, poiché riflette gli oggetti, le loro proprietà e le relazioni tra loro - elementi della struttura informativa dell'area disciplinare. La completezza della riflessione di questi elementi è determinata dai risultati della fase di modellazione delle informazioni.

Principali articoli correlati