"Bazele designului bazei de date". Etapele Cadrului bazei de date de proiectare pentru utilizarea designului bazei de date

Organizarea și întreținerea bazelor de date prin DBMS MS Access

Înainte de a crea o bază de date, este necesar să aveți o descriere a domeniului selectat, care ar trebui să acopere obiectele și procesele reale, să aibă toate informațiile necesare pentru a satisface cererile de utilizator estimate și pentru a determina cerințele pentru prelucrarea datelor.

Pe baza unei astfel de descrieri, compoziția și structura structurii de date, care ar trebui să fie în baza de date, sunt determinate și pentru a asigura punerea în aplicare a cererilor necesare și rezolvarea sarcinilor utilizatorului.

Procesul de proiectare și de creare a unei baze de date relaționale constă în următorii pași:

1) crearea unui model informatic și logic al zonei subiectului, adică Alocarea obiectelor de informare și definiția legăturilor dintre ele;

2) Construirea structurii logice a bazei de date relaționale, în care fiecare obiect al modelului infografic este afișat de tabelul relațional, iar legăturile dintre tabele corespund celor detectate relațiile de informare între obiecte;

3) construirea de tabele corespunzătoare obiectelor de informare ale modelului de date construite;

4) crearea unei scheme de date în care sunt înregistrate legăturile logice existente între tabele;

5) Introducerea datelor conținute în documentele din zona subiectului.

O atenție deosebită ar trebui acordată primelor două etape, deoarece fără studiul lor atent, este imposibil să se creeze o bază de date care să satisfacă pe deplin nevoile utilizatorului.

Construirea unui model infologic de date. Model infologic (ILM) Afișează datele din zona subiectului sub forma unui set de obiecte de informații și conexiuni între ele.

Obiect de informare - Aceasta este o descriere informațională a unui anumit obiect, proces sau eveniment real. Obiectul de informare este format dintr-un set de detalii interconectate logic reprezentând caracteristicile calitative și cantitative ale unei esențe a zonei subiectului. De exemplu, un obiect de bunuri se caracterizează prin astfel de detalii ca nume, unitate de măsură, producător, varietate, preț etc.

Fiecare obiect de informare este atribuit un nume unic, de exemplu, atunci când descrie zona subiectului oferta de bunuri Astfel de obiecte ca produs vor fi evidențiate.

Obiectul de informații are multe implementări - instanțe (intrări). De exemplu, fiecare instanță a obiectului Acest produs reprezintă un tip specific de produs. Instaina este formată dintr-un set de valori specifice de recuzită și trebuie identificate fără echivoc cu valoarea cheii obiectului de informații. Cheia poate consta din unul ( simplu) sau mai multe detalii cheie ( compozit).



La proiectarea unei baze de date relaționale, este necesar să rezolvăm problema celei mai eficiente structuri de date. În același timp, următoarele obiective sunt urmărite penal:

Furnizați acces rapid la datele din tabele.

Excludeți repetarea datelor inutile, care poate provoca erori la intrarea și utilizarea irațională a spațiului pe disc.

Asigurați integritatea datelor astfel încât atunci când se schimbă unele obiecte, se produce modificarea corespunzătoare a obiectelor asociate cu acesta.

Următorul pas la etapa de design ILM, după identificarea obiectelor de informații, este de a determina relația dintre ele.

Atitudine - Aceasta este o legătură între cele două tabele, care arată modul în care datele din aceste tabele aparțin reciproc. La crearea unei relații, aceleași câmpuri sunt specificate în două tabele diferite. De exemplu, puteți crea relații între tabele și furnizor utilizând identificatorul produsului ca câmp de legare.

Accesul acceptă următoarele tipuri de relații între tabele:

Unu - fără ambiguiu (1: 1),

Un lucru - multivid (1: m),

Multe sunt multivate (N: M).

One - conexiuni fără ambiguitate (1: 1) Există doar o singură instanță a altui obiect (b) corespunde fiecărei instanțe a unui obiect (a) și, dimpotrivă, doar o singură instanță a obiectului corespunde fiecărui obiect (A).

One - relații multivated (1: m) - Acestea sunt astfel de conexiuni atunci când mai multe cazuri ale obiectului (B) pot corespunde fiecărei instanțe a unui singur obiect (a), și numai o singură instanță a obiectului poate corespunde fiecărei instanțe a obiectului (C). Într-o astfel de conexiune, obiectul A este obiectul principal și obiectul din subordonat.

Multe - Multivalated (N: M) -apar în cazul în care fiecare instanță a obiectului A poate corespunde mai multor cazuri ale obiectului în și, dimpotrivă, fiecare instanță a obiectului poate corespunde mai multor instanțe ale obiectului lui A.Dlya, obiectul este utilizat - "Bunch Bunch "Obiect, care trebuie să aibă un identificator format din identificatorii obiectelor A și V.

În ILM, obiectele sunt plasate în nivele. La nivelul zero, există obiecte care nu sunt subordonate altor obiecte. Nivelul altor obiecte este determinat de cel mai lung mod de obiect de la nivelul zero. O astfel de plasare a obiectelor oferă o idee despre subordonarea lor ierarhică, face un model mai vizual și facilitează înțelegerea legăturilor dintre obiecte.

Construcția unui model logic al unei baze de date.Structura logică a bazei de date este o afișare adecvată a modelului infoluxic obținut. Fiecare obiect de informare al modelului de date este afișat de tabelul relațional corespunzător. Structura tabelului este determinată de compoziția necesară a obiectului, unde fiecare coloană corespunde unei detalii. Liniile de masă corespund cazurilor obiectului și se formează când este încărcată tabelul.

Legăturile dintre obiectele modelului de date sunt implementate cu aceleași detalii - Taste de comunicare În tabelele relevante. În același timp, cheia de comunicare ar trebui să fie întotdeauna identificatorul obiectului principal.

Conceptele de bază ale bazelor de date.

Bază de date - Aceasta este o combinație de date structurate și interdependente, organizată de anumite regulicare oferă principii generale pentru descrierea, stocarea și prelucrarea datelor.

Există 4 modele de date principale - liste (mese plate), baze de date relaționale, structuri ierarhice și de rețea.

Timp de mulți ani, tabelele plate (baze de date plate) ale listei listelor din Excel au fost utilizate în principal. În prezent, modelele de date relaționale au primit cea mai mare distribuție în dezvoltarea bazei de date. Modelul de date relațional este un set de tabele simple bidimensionale - relații (eng. Relație), adică Cea mai simplă masă bidimensională este definită ca atitudini (multe dintre aceleași înregistrări ale temei combinate).

Din relația (raportul) se numește un model de date relațional. Baza de date relațională utilizează mai multe mese bidimensionale în care rândurile sunt numite înregistrări, dar câmpurile coloanelor, Dintre înregistrările care sunt stabilite. Această metodă de organizare a datelor permite date (înregistrări) într-un singur tabel pentru a comunica cu datele (înregistrările) în alte tabele prin identificatori unici (taste) sau câmpuri cheie.

Concepte de bază ale bazelor de date relaționale: normalizare, comunicare și chei

1. Principii de normalizare:

În fiecare tabel, baza de date nu trebuie să fie repetate;

Fiecare tabel trebuie să fie un identificator unic (cheie primară);

Fiecare valoare cheie primară trebuie să fie conformă cu informații suficiente despre tipul entității sau despre obiectul de masă (de exemplu, informații despre performanță, un grup sau studenți);

Schimbarea valorilor din câmpurile tabelului nu trebuie să afecteze informațiile din alte câmpuri (cu excepția modificărilor din câmpurile cheie).

2. Tipuri de conexiune logică.

Comunicarea este setată între două câmpuri comune (coloane) de două mese. Există conexiuni cu raportul "unu-la-unu", "unu-la-mulți" și "mulți co-multe".

unu la unu - Fiecare înregistrare de la un tabel corespunde unei intrări într-un alt tabel;

unul - la mulți - fiecare înregistrare de la un tabel corespunde mai multor intrări ale unui alt tabel;

mulți - la - unul - înregistrările multiple de la un tabel corespund unei intrări într-un alt tabel;

mulți - la mulți - O multitudine de înregistrări de la un tabel corespunde mai multor intrări într-un alt tabel.

Tipul de relație din comunicarea creată depinde de metoda de determinare a câmpurilor asociate:

Atitudinea "o singură" "este creată atunci când unul dintre câmpuri este un câmp cheie principal sau un indice unic.

Raportul "unu-to-one" este creat în cazul în care ambele câmpuri asociate sunt esențiale sau au indicii unici.

Raportul dintre "multe la mulți" este de fapt două relații "unu la mulți" cu un al treilea tabel, principala cheie constă din câmpurile cheie străine ale celorlalte două mese

3. Taste. Cheia este o coloană (pot exista mai multe coloane), adăugate la masă și vă permite să stabiliți o conexiune cu înregistrările într-un alt tabel. Există două tipuri de chei: primar și secundar (extern).

Cheia principala - Acesta este unul sau mai multe câmpuri (coloane), o combinație a căror valori determină în mod unic fiecare intrare în tabel. Cheia primară nu permite valorile nulă și ar trebui să aibă întotdeauna un indice unic. Cheia primară este utilizată pentru a lega o masă cu tastele externe în alte tabele.

Outdoor (secundar) cheie - Acesta este unul sau mai multe câmpuri (coloane) din tabelul care conține link-ul de pe câmp sau câmpul principal principal într-un alt tabel. Cheia externă definește metoda de combinare a tabelelor.

Din cele două mese legate logic, se numește tabelul principal de cheie sau tabelul principal și o altă masă a tastei secundare (externe) sau a tabelului subordonat. DBMS vă permit să comparați înregistrările legate de ambele tabele și le-ați împărtășit în formularul, raportul sau solicitarea.

Există trei tipuri de chei primare: câmpuri de metru cheie (contra), cheia simplă și cheia compozită.

Contor de câmp (Tipul de date "Counter"). Tipul de date de câmp din baza de date, în care pentru fiecare tabel de înregistrare, o valoare numerică unică este introdusă automat în câmp.

Cheie simplă. Dacă câmpul conține valori unice, cum ar fi codurile sau numerele de inventar, atunci acest câmp poate fi definit ca cheie primară. Ca o cheie, puteți defini orice câmp care conține date dacă acest câmp nu conține valori repetate sau valori nulă.

Cheie compozită.. În cazurile în care este imposibil să se asigure unicitatea valorilor fiecărui câmp, este posibil să se creeze o cheie constând din mai multe câmpuri. Cel mai adesea, această situație apare pentru un tabel folosit pentru a lega două mese - la mulți.

Este necesar să menționăm încă o dată În câmpul cheie primar, trebuie să existe numai valori unice în fiecare rând al tabelului, adică. Coincidența nu este permisă, Și în câmpul cheie secundar sau extern, este permisă coincidența valorilor în rândurile tabelului.

Dacă există dificultăți în alegerea unui tip adecvat de cheie primară, atunci este recomandabil să selectați câmpul Counter ca cheie.

Programe care sunt concepute pentru a structura informații, puneți-l în tabele și manipularea datelor se numesc sisteme de gestionare a bazelor de date (DBMS): MS SQL Server, Oracle, Informix, Sybase, DB2, MS Access etc.

Bazele proiectării bazei de date.

Crearea bazei de date începe cu designul.

Etapele de proiectare DB:

· Studiul zonei subiectului;

· Analiza datelor (entități și atributele acestora);

· Determinarea relațiilor dintre entități și definiția cheilor primare și secundare (externe).

În procesul de proiectare, se determină structura bazei de date relaționale (compoziția tabelelor, structura lor și conexiunile logice). Structura tabelului este determinată de compoziția coloanelor, tipul de date și dimensiunea coloanelor, cheile cheie.

Conceptele de bază ale modelului BD "Essence - Comunicare" includ: entități, legături între ele și atributele acestora (proprietăți).

Esență - orice obiect specific sau abstract în zona subiectului în cauză. Entitățile sunt tipurile de informații de bază care sunt stocate în baza de date (un tabel este atribuit în baza de date relațională a fiecărei entități). Entitățile se pot referi la entități: studenți, clienți, diviziuni etc. O copie a entității și tipul entității sunt diferite concepte. Conceptul de natură entității aparține setului de personalități omogene, obiecte sau evenimente care vorbesc ca întreg (de exemplu, un student, client etc.). O copie a entității aparține, de exemplu, unei personalități specifice în set. Tipul entității poate fi student și copiatorul - Petrov, Sidorov etc.

Atribut - Aceasta este proprietatea esenței în zona subiectului. Numele său trebuie să fie unic pentru un anumit tip de entitate. De exemplu, pentru entitate, elevul poate folosi următoarele atribute: prenume, nume, patronimic, data și locul nașterii, detaliile pașaportului etc. În baza de date relațională, atributele sunt stocate în câmpurile tabelelor.

Comunicare - relația dintre entitățile din domeniul subiectului. Comunicațiile sunt conexiuni între componentele bazei de date (în baza de date relațională este o conexiune între înregistrările tabelelor).

Entitățile sunt datele clasificate după tip, iar contactele arată cum aceste tipuri de date se corelează cu altul. Dacă descrieți un anumit domeniu din punct de vedere al entității - comunicare, vom primi un model de entitate - o conexiune pentru această bază de date.

Luați în considerare zona de subiect: Deanate (Performanța studenților)

Baza de date "Deanat" ar trebui păstrată date despre studenți, grupuri de studenți, cu privire la estimările studenților pe diferite discipline, despre profesori, despre burse etc. Ne limităm la studenții despre studenți, studenți ai studenților și estimările studenților pe diferite discipline. Definim esențele, atributele entităților și cerințele de bază pentru caracteristicile bazei de date cu date limitate.

Principalele entități care înțeleg subiectul din Deanat sunt: Elevii, grupurile de studenți, discipline, performanțe academice.

Obiectivul principal și atributele semnificative ale entităților:

· Studenți - prenume, nume, patronimic, podea, data și locul nașterii, grupul de studenți;

· Grupuri de studenți - nume, curs, semestru;

· Discipline - titlu, număr de ore

· Impuls - evaluare, tip de control.

Cerințe de bază pentru funcțiile bazei de date:

· Alegeți performanța studenților pe discipline, indicând numărul total de ore și tipul de control;

· Alegeți performanța studenților în grupuri și discipline;

· Selectați disciplinele studiate de un grup de elevi la un anumit curs sau un semestru specific.

Din analiza acestor subiecte, rezultă că fiecare entitate trebuie să i se atribuie cea mai simplă tabel bidimensional (relație). Apoi, trebuie să setați conexiuni logice între tabele. Între tabele, studenții și performanța academică trebuie să stabilească o astfel de comunicare, astfel încât fiecare înregistrare din tabelele din tabel să corespundă mai multor intrări în tabelul de testare, adică Unul - la mulți, deoarece fiecare student poate avea mai multe estimări.

Conexiunea logică dintre entitățile grupului - elevii este definită ca una - la mulți dintre faptul că există mulți studenți în grup, iar fiecare student face parte din același grup. Conexiunea logică dintre entitățile disciplinei - performanța este definită ca una - la mulți, deoarece pentru fiecare disciplină pot fi livrate mai multe estimări ale diferiților studenți.

À săgeată este un simbol al comunicării: unul - la mulți.

Esența designului bazei de date (baza de date), precum și orice alt proces de proiectare, în crearea unei descrieri a noului, care anterior nu exista în această formă a sistemului, care, atunci când îl punem în aplicare, este capabil să funcționeze în condiții adecvate. Din aceasta rezultă că etapele de proiectare a bazei de date trebuie să reflecte în mod constant și logic esența acestui proces.

Conținutul și stadiul bazei de date

Planul de proiectare se bazează pe orice nevoie socială formulată. Această nevoie are un mediu de apariție și țintă audiența consumatorilor care va fi utilizată prin rezultatul designului. În consecință, procesul de proiectare a bazei de date începe cu studierea acestei necesități din punctul de vedere al consumatorilor și a mediului funcțional al plasării sale intenționate. Adică prima etapă este de a colecta informații și definirea modelului zonei subiectului sistemului, precum și - uitați-vă de la punctul de vedere public țintă. În general, pentru a determina cerințele sistemului, se determină gama de acțiuni, precum și frontierele aplicațiilor bazei de date.

Mai mult, designerul are deja anumite idei pe care trebuie să le creeze, clarifică probabil soluționarea de către aplicație, se formează lista (mai ales dacă dezvoltarea proiectului este o bază de date mare și complexă), rafină secvența de rezolvare și analiză a datelor . Un astfel de proces este, de asemenea, o lucrare de proiectare a complotului, dar de obicei în structura de proiectare, acești pași sunt absorbiți de stadiul de design conceptual - etapa de alocare a obiectelor, a atributelor, a conexiunilor.

Crearea unui conceptual (model de informare) implică o formare preliminară a cerințelor conceptuale ale utilizatorilor, inclusiv cerințele de aplicații care nu pot fi implementate imediat, dar care vor permite în viitor să îmbunătățească funcționalitatea sistemului. Având în vedere reprezentările obiectelor de abstractizare ale setului (fără a specifica metodele de stocare fizică) și a relațiilor lor, modelul conceptual corespunde în mod semnificativ modelul zonei subiectului. Prin urmare, în literatură, prima etapă de proiectare a BD se numește designul informațiilor.

În plus, printr-o etapă separată (sau adăugată la cea precedentă), o etapă de formare a cerințelor pentru mediul de operare, în cazul în care cerințele pentru resursele de calcul sunt evaluate capabile să asigure funcționarea sistemului. În consecință, cu atât mai mare volumul bazei de date desemnate, cu atât este mai mare activitatea utilizatorului și intensitatea apelurilor, cu atât sunt cele mai mari cerințele resurselor: la configurația computerului la tipul și versiunea versiunii sistem de operare. De exemplu, modul multiplayer de funcționare al bazei de date viitoare necesită o conexiune la rețea utilizând un sistem de operare corespunzător multitasking-ului.

Următorul pas, designerul trebuie să selecteze sistemul de gestionare a bazelor de date (DBMS), precum și instrumente software. După aceasta, modelul conceptual trebuie transferat la modelul de date compatibil cu sistemul de control selectat. Dar este adesea limitat la modificările și modificările modelului conceptual, deoarece nu este întotdeauna relația dintre elementele dintre ele, reflectată de modelul conceptual, poate fi implementată prin intermediul acestui DBMS.

Această circumstanță determină apariția următoarei etape - apariția unui model conceptual furnizat de mijloace. Această etapă corespunde pasului de design logic (crearea unui model logic).

În cele din urmă, stadiul final de proiectare a bazei de date devine design fizic - etapa de legare a structurii logice și a mediului de stocare fizică.

Astfel, principalele etape ale designului în formă detaliată sunt reprezentate de etape:

  • design infologic,
  • formarea cerințelor pentru setarea de funcționare
  • selectarea bazelor de date și baze de date software,
  • design logic,
  • design fizic

Cheia lor va fi discutată mai jos.

Design infologic

Identificarea entității este baza semantică a designului informațiilor. Esența aici este un astfel de obiect (abstract sau beton), informații despre care se vor acumula în sistem. În modelul infologic al zonei subiectului în termeni de înțeles, care nu depind de implementarea specifică a bazei de date, sunt descrise structura și proprietățile dinamice ale zonei subiectului. Dar termenii sunt luați într-o scară tipică. Adică descrierea nu este exprimată prin obiecte individuale ale domeniului subiectului și a relației lor, ci prin:

  • descrierea tipurilor de obiecte,
  • limitările de integritate asociate cu tipul descris,
  • procesele care conduc la evoluția domeniului sunt de ao tranziționa într-un alt stat.

Modelul infografic poate fi creat folosind mai multe metode și abordări:

  1. Abordarea funcțională este respinsă din sarcinile stabilite. Se numește funcțional, deoarece este folosit dacă funcțiile și sarcinile persoanelor care utilizează informațiile despre informațiile utilizând baza de date proiectată vor servi nevoilor lor de informare.
  2. O abordare a subiectului la capitolul Unghi stabilește informații despre informațiile care vor fi conținute în baza de date, în ciuda faptului că structura interogării nu poate fi definită. În acest caz, studiile din domeniul subiectului se concentrează pe afișajul maxim adecvat în baza de date în contextul gamei complete de solicitări de informații presupuse.
  3. O abordare integrată în conformitate cu metoda "Esence-comunicare" combină avantajele celor două anterioare. Metoda este redusă la separarea întregului subiect la părțile locale, care sunt simulate separat și apoi re-combinate într-o zonă solidă.

Deoarece utilizarea metodei "Esența-comunicare" este o metodă de proiectare combinată în acest stadiu, devine mai des prioritate.

Reprezentările locale în separarea metodică ar trebui, dacă este posibil, să includă informații care ar fi suficiente pentru a rezolva o sarcină separată sau pentru a oferi un fel de grup de utilizatori potențiali. Fiecare dintre aceste zone conține aproximativ 6-7 entități și îndeplinește orice aplicație externă separată.

Dependența entităților se reflectă în separarea lor în puternică (fundamentală, parentală) și slabă (filiale). Esența puternică (de exemplu, cititorul din bibliotecă) poate exista în baza de date în sine și o esență slabă (de exemplu, un abonament al acestui cititor) "este obligatorie" la puternic și separat.

Conceptele unei "instanțe de entitate" trebuie să fie separate (un obiect caracterizat prin valori specifice ale proprietăților) și conceptul de "tip de entitate" - un obiect pentru care se caracterizează numele comun și lista proprietăților.

Pentru fiecare entitate individuală, sunt selectate atribute (setate de proprietăți), care, în funcție de criteriu, pot fi:

  • identificarea (cu o valoare unică pentru entitățile de acest tip, ceea ce le face cheile potențiale) sau descriptive;
  • neechivocal sau multi-evaluat (cu numărul corespunzător de valori pentru o instanță a esenței);
  • de bază (independentă de atributele rămase) sau derivatele (calculate, pe baza valorilor altor atribute);
  • simplă (individuală indivizibilă) sau compozit (combinat din mai multe componente).

După aceasta, se efectuează specificația atributului, specificația legăturilor în reprezentarea locală (cu separare opțională și obligatorie) și combinarea reprezentărilor locale. Inters de numărul de zone locale de până la 4-5, ele pot fi combinate într-un singur pas . În cazul creșterii numărului, asociația binară a regiunilor are loc în mai multe etape.

În cursul acestei etape intermediare, natura iterativă a designului este reflectată aici, în faptul că, pentru a elimina contradicțiile, este necesar să se reîntoarcă la etapa de modelare a reprezentărilor locale pentru a clarifica și schimba (de exemplu, schimbarea Aceleași nume de obiecte semantic diferite sau de a negocia atributele de integritate pe aceleași atribute în diferite aplicații).

Selectarea sistemelor de management și a bazelor de date software

Implementarea practică depinde de selectarea sistemului de gestionare a bazelor de date sistem informatic. Cele mai semnificative criterii în procesul de alegere sunt parametrii:

  • tipul modelului de date și respectarea acesteia cu nevoile domeniului,
  • furnizarea de oportunități în cazul unei extinderi a sistemului informațional,
  • caracteristicile de performanță ale sistemului selectat,
  • fiabilitatea operațională și comoditatea DBMS,
  • personalul de administrare a datelor orientate spre date
  • costul DBMS în sine și software-ul suplimentar.

Erori în alegerea DBMS practic probabil vor provoca necesitatea de a ajusta modelul conceptual și logic.

Design logic al bazei de date

Structura logică a dB trebuie să respecte modelul logic al zonei subiectului și să ia în considerare conexiunea modelului de date de la DBMS acceptate. Prin urmare, etapa începe cu selectarea modelului de date, în cazul în care este important să se țină seama de simplitatea și vizibilitatea acestuia.

Este preferabil atunci când structura de date naturală coincide cu modelul său reprezentând-l. De exemplu, dacă datele sunt prezentate sub forma unei structuri ierarhice, modelul este mai bine să alegi o ierarhică. Cu toate acestea, în practică, o astfel de alegere este mai des determinată de sistemul de gestionare a bazelor de date, nu de un model de date. Prin urmare, modelul conceptual este difuzat de fapt într-un astfel de model de date, compatibil cu sistemul de control al bazei de date selectat.

Aici, natura designului, care permite (sau necesității) să se întoarcă la modelul conceptual pentru ao schimba în cazul în care relațiile reflectate acolo între obiecte (sau atributele obiectului) nu vor putea implementa DBMS selectate.

La finalizarea etapei, trebuie să se formeze diagrame ale bazelor de date ale nivelurilor de arhitectură (conceptuale și externe), create în limbă de definiție susținute de DBMS selectate.

Diagramele bazei de date sunt formate utilizând una din cele două abordări multidirecționale:

  • folosind o abordare ascendentă atunci când lucrarea trece de la nivelurile inferioare ale determinării atributelor grupate în relații reprezentând obiecte pe baza relațiilor existente între atribute;
  • folosind o abordare inversă, descendentă, folosită în semnificativă (până la sute și mii) o creștere a numărului de atribute.

A doua abordare implică determinarea unui număr de entități la nivel înalt și a relațiilor lor, urmate de detalii la nivelul dorit, care reflectă, de exemplu, un model creat pe baza metodei "Esence-Communication". Dar, în practică, ambele abordări sunt, de obicei, combinate.

Proiectarea fizică a bazei de date

În etapa următoare a designului fizic al bazei de date, structura logică este afișată sub forma structurii de stocare a bazei de date, adică este legată de un astfel de mediu de stocare fizic, unde datele vor fi plasate cât mai eficient posibil. Aici detaliază schema de date cu indicarea tuturor tipurilor, câmpurilor, dimensiunilor și restricțiilor. În plus față de dezvoltarea indexurilor și tabelelor, sunt determinate principalele cereri.

Construcția modelului fizic este asociată cu soluția în multe moduri de sarcini contradictorii:

  1. minimizarea locației de depozitare
  2. sarcini de realizare a integrității, siguranței și performanței maxime.

Cea de-a doua sarcină intră în conflictul de la început, de exemplu:

  • pentru funcționarea efectivă a tranzacțiilor, trebuie să rezervați un spațiu pe disc pentru obiecte temporare,
  • pentru a mări viteza de căutare, trebuie să creați indexuri, numărul căruia este determinată de numărul tuturor combinațiilor posibile ale câmpurilor participante,
  • pentru a recupera datele vor fi create backups. Baze de date și un jurnal al tuturor modificărilor.

Toate acestea cresc dimensiunea bazei de date, astfel încât designerul caută un echilibru rezonabil, în care sarcinile sunt rezolvate în mod optim prin localizarea competentă a datelor în spațiul de memorie, dar nu în detrimentul protecției casetei casetei, care este evaluată ca protecție împotriva accesului și protecției neautorizate împotriva eșecurilor.

Pentru a finaliza crearea modelului fizic, se estimează că este o evaluare a caracteristicilor sale operaționale (viteza de căutare, eficiența interogării și consumului de resurse, corectitudinea operațiunilor). Uneori, această etapă, precum și etapele implementării bazei de date, testarea și optimizarea, precum și întreținerea și funcționarea, se efectuează dincolo de proiectarea directă a bazei de date.

  • Transfer

Bazele de date sunt utilizate peste tot, inclusiv cele mai multe dintre proiectele din lumea dezvoltării web. Toate, variind de la cele mai simple bloguri si cataloage, la proiecte sociale serioase. Indiferent de complexitatea site-ului și a bazei de date corespunzătoare, fiecare dintre ele necesită un design atent să funcționeze eficient, precum și în mod fiabil.


În acest articol, vom analiza elementele de bază ale dezvoltării. avea un plan bun Baze de date, indiferent de destinația sa finală. Pentru toate variantele structurii bazei de date, există un set de reguli standard și cele mai bune practici care ar trebui utilizate. Acestea vor contribui la baza de date pentru a rămâne organizată și va face interacțiunea cu site-ul mai rezonabil și mai eficient.

Ce funcționalitate este necesară din baza de date

Prima metodă utilizată la planificare este o brainstorming obișnuită, făcând înregistrări pe hârtie sau altceva, în funcție de ceea ce este necesar pentru a fi stocat în baza de date și care va fi necesar. Încercați să nu vă gândiți la anumite domenii, tabele care vor fi utilizate într-un caz specific - toate punctele specifice vor fi luate în considerare de dvs. mai târziu. Scopul dvs. în această etapă este de a obține o imagine generală și completă a structurii bazei de date, care va specifica și face mai detaliat. Adesea, poate fi mai dificil să adăugați unele elemente în planul dvs., mai degrabă decât la etapa inițială.
Fotografie: binaryape.
Eliminați din baza de date. Încercați să gândiți că va fi solicitat de pe site? De exemplu, dacă doriți să faceți un site care combină oamenii, puteți începe imediat să vă gândiți la datele pe care utilizatorii vor stoca. Uitați, amânați-o mai târziu. Mai bine scrieți că utilizatorii și informațiile despre ele trebuie să fie stocate în baza de date. Și ce altceva? Ce vor face utilizatorii pe site-ul dvs.? Vor să publice înregistrări, încărcați fișiere, fotografii, scrieți reciproc mesajele? În consecință, baza de date trebuie să stocheze toate aceste informații: înregistrări, fișiere, fotografii, posturi etc.
Cum vor interacționa utilizatorii cu site-ul dvs.? Vor avea nevoie de o căutare, de exemplu, rețetele lor preferate, au acces la intrări disponibile la o anumită comunitate, să caute produse sau să urmărească o listă de produse recent vizualizate și achiziționate? Baza de date ar trebui să asigure capacitatea de a stoca rețete, înregistrări "închise" disponibile unui anumit cerc de utilizatori, informații despre produs, precum și posibilitatea de comunicare a unui anumit produs și utilizator.

Determinarea tabelelor și câmpurilor necesare

Următorul pas este de a determina ce tabele și câmpuri vor fi necesare în baza de date. Acesta este nucleul dezvoltării și cea mai dificilă parte a acesteia. Utilizați metodele corecte de pachete de tabele, determinând structura de date în fiecare tabel, identificând necesitatea de a împrăștia aceste date utilizând tabele diferite - toate aceste probleme sunt populate cu baza de date directă de proiectare. Acum trebuie să determinați lista de tabele și câmpurile evident necesare, să fiți cât mai specifice posibil. În timpul acestui proces, unele elemente pot fi reconstruite sau reorganizate pentru a îmbunătăți eficiența și securitatea bazei de date.

Utilizați instrumentul de modelare a datelor

Acum, că știți că site-ul va trebui să facă, este timpul să se determine ce informații speciale vor trebui stocate. Un instrument pentru proiectarea bazelor de date va fi foarte potrivit aici, în special cu capacitatea de a crea modele de baze de date vizuale, cum ar fi bancul de lucru MySQL sau. Gliffy este un excelent instrument online gratuit pentru crearea diferitelor diagrame bloc și modele de baze de date.

Există, de asemenea, o cea mai cunoscută, de înaltă calitate, în opinia mea, Instrumentul - Microsoft Visio (numai în Windows, prețul este de 249,99 USD). Dar nu vă fie frică, există alternative mai ieftine, dintre care multe sunt proiecte cu sursă deschisă, inclusiv cele două menționate mai sus.
Familiarizați-vă cu grafica generală și elementele vizuale standard necesare pentru a crea un model de bază de date și pentru a începe pre-planificarea utilizând fluxurile și diagramele. Acest lucru va evita erorile logice înainte ca orice bază de date specifică să fie deja creată.

Gruparea și separarea datelor

În ceea ce privește câmpurile, este de asemenea important să știți când să grupați o anumită parte a datelor și când nu. Mod bun Determinați ce informații ar trebui să fie într-un singur câmp sau invers, gândiți-vă dacă ar fi necesar să schimbați orice parte a acestuia? De exemplu, dacă să stocheze adresa prin ruperea acesteia în componente: 1) stradă, 2) oraș, 3) de stat, 4) cod poștal, 5) Țară?
Aceasta este o parte integrantă a funcționalității site-ului (eventual utilizatori sau administratori doresc să caute alți utilizatori la adresa sau personalul) sau doar o creștere a spațiului ocupat de baza de date de pe disc? Dacă acest lucru nu este atât de important, de ce încărcați baza de date pentru a schimba 5 câmpuri când puteți actualiza doar un singur câmp de șir. Mai convenabil ar putea fi opțiunea de a obține aceste date din formularul HTML, unde câmpurile sunt separate și înainte de adăugarea adresei în baza de date, îmbinați valorile din câmpurile corespunzătoare într-o singură linie.
Acesta este doar un exemplu, dar întotdeauna au o idee despre cele mai multe metode eficiente Organizarea câmpurilor de tabel atunci când le combinați când să conțină separat, pentru a menține funcționalitatea site-ului.

Normalizarea bazei de date

Normalizarea prezintă un set de orientări create pentru organizarea unei stocări mai eficiente a informațiilor. Am menționat deja câteva practici de bază importante care sunt incluse în cele mai populare forme normale. Există cinci forme normale. Ar fi util să vă familiarizați cu aceste forme normale și să dezvoltăm baze de date în conformitate cu cerințele acestora.
Normalizarea bazei de date este un subiect mare, dar deja înțelegerea elementelor sale de bază vă poate ajuta extrem de. A avea vedere generala despre fiecare formă și normalizare normală ca întreg, nu uitați să vă uitați

În prezent, viața unei persoane este atât de bogată în informațiile care să o gestioneze, este necesar să se creeze baze de date și bănci de date utilizate în diverse domenii de activitate. Prelucrarea datelor a evoluat de la metode primitive de 50 de ani la sisteme complexe integrate de astăzi.

Principiile de bază pentru proiectarea bazelor de date relaționale

Modelele de date sunt o anumită abstracție că, fiind aplicate datelor specifice, permite utilizatorilor și dezvoltatorilor să le interpreteze deja ca informații, adică informațiile care conțin nu numai date, ci și relația dintre ele.

Există următoarele modele de date principale:

Modele bazate pe listele inversate - Baza de date, organizată utilizând listele inversate, construite astfel încât tabelele și căile de acces la acestea să fie vizibile utilizatorilor, în timp ce rândurile tabelelor sunt comandate fizic în unele secvențe.

Modelele de date ierarhice - baza de date bazată pe modelul ierarhic constă dintr-un set comandat de copaci. Fiecare copac dintr-o "rădăcină" și a comandat set de subtradii zero sau mai multe (descendenți). Integritatea legăturii dintre ele este menținută automat.

În baza de date cu o structură de rețea, datele de asistență pot avea orice număr de rădăcini. De fapt, baza de date a rețelei constă într-un set de înregistrări între aceste înregistrări.

În prezent, în majoritatea bazelor de date utilizează modele de date relaționale. Modelul relațional Aceasta este o metodă specială de luare a datelor care conțin date (sub formă de tabele) și modalități de lucru și manipulare cu acestea (ca conexiuni). Modelul relațional implică trei elemente conceptuale: structura, integritatea și prelucrarea datelor.

Tabelul din baza de date relațională este considerat drept "depozitare" direct de date. În mod tradițional, în schemele relaționale, tabelul este numit atitudinea. Linia mesei este numită o tuplă, iar coloana este un atribut. În acest caz, atributele au numele unic (în relația). Numărul de tuple este numit un număr fundamental, iar numărul de atribute este o diplomă. Identificatorul este furnizat pentru relație, adică unul dintre mai multe atribute, ale căror valori, în același timp nu sunt aceleași - identificatorul se numește cheia primară.

Domeniul este un set de valori omogene permise pentru unul sau alt atribut. Astfel, domeniul poate fi vizualizat ca un set numit de date și o parte din Acest set este unitățile indivizibile logic (ca domeniu poate acționa, de exemplu, o listă de nume de familie ale instituției, dar nu toate prenumele pot fi prezente în tabel).

Raportul conține două părți - titlul și propria sa parte substanțială. Titlul conține un set finit de atribute, iar partea semnificativă (corpul relației) este setul de nume de atribut și valoarea acesteia.

În baza de date relațională, spre deosebire de alte modele, utilizatorul indică ce date pentru aceasta este necesară și nu cum să o faceți. Baza oficială a modelului relațional al bazei de date este o algebră relațională bazată pe teoria seturilor și luând în considerare operatorii speciali în ceea ce privește relațiile și calculul relațional bazat pe logica matematică.

Există multe abordări ale definiției algebrei relaționale care diferă într-un set de operațiuni și metoda interpretării acestora. Prin cod, un set de operațiuni algebrice constă din opt principale:

  • 1. Relația de probă;
  • 2. Proiecția relațiilor;
  • 3. combinarea relațiilor;
  • 4. intersecția relațiilor;
  • 5. scăderea relațiilor;
  • 6. Producția de relații;
  • 7. Conectarea relațiilor;
  • 8. Diviziunea relațiilor;

În plus față de cele de mai sus, există o serie de operațiuni speciale caracteristice de lucru cu baza de date: se obține o operațiune de "redenumire", setul de tuple coincide cu corpul relației inițiale, dar atributul numele sunt modificate. Operația de atribuire vă permite să mențineți rezultatul calculării expresiei relaționale în baza de date existentă. Rezultă că, dacă rezultatul unei operațiuni relaționale este un anumit raport, atunci este posibil să se formeze expresii relaționale în care se va utiliza o relație inițială (operand relevant) expresie relațională investită. Acest lucru se datorează faptului că operațiunile de algebră relațională sunt într-adevăr închise cu privire la conceptul de relație.

Una dintre cerințele de bază pentru organizarea bazei de date relaționale este de a asigura posibilitatea găsirii unor nuclee valorile posibile Altele, pentru care este necesar să se stabilească o legătură între ele.

Comunicare - Aceasta este o dependență funcțională între două entități (există o legătură cu ea însăși). Dacă există o legătură între entități, instanțele de conectare ale unei entități se referă la sau în unele moduri sunt asociate cu instanțele celeilalte.

La nivelul logic, puteți stabili link-uri:

  • 1. unu-la-unul;
  • 2. Unu-la-mulți;
  • 3. Mulți-co-multe;
  • 4. multi-k-one;

Etapele implementării fizice a bazei de date proiectate

Implementarea este un pas de transformare a unui model conceptual într-o bază de date funcțională. Implementarea include etapele:

  • 1. Selectarea și achiziționarea de DBMS.
  • 2. Conversia unui model conceptual în modelul fizic.
  • 3. Construirea unui dicționar.
  • 4. Completarea bazei de date.
  • 5. Crearea de aplicații.
  • 6. Instruirea utilizatorilor.