Cum se configurează smartphone-uri și PC-uri. Portal informativ
  • Acasă
  • In contact cu
  • Revizuirea sistemelor de management al bazelor de date (DBMS) pentru sistemele de control și management al accesului (ACS). SQL, baze de date NoSQL și diferențe între modelele de baze de date

Revizuirea sistemelor de management al bazelor de date (DBMS) pentru sistemele de control și management al accesului (ACS). SQL, baze de date NoSQL și diferențe între modelele de baze de date

Baza de date (DB)– o colecție numită de date care reflectă starea obiectelor și relațiile lor în domeniul subiectului luat în considerare.

Sistemele de management al bazelor de date (DBMS) au fost dezvoltate pentru a manipula bazele de date. Sistem de management al bazelor de date (DBMS)- un set de limbaje și instrumente software concepute pentru crearea, întreținerea și partajarea unei baze de date de către mulți utilizatori.

Utilizarea unui SGBD asigură:

    minimizarea redundanței datelor - în cazuri extreme, orice date pot fi stocate într-o singură copie;

    partajarea datelor între mulți utilizatori;

    independența datelor față de programe;

    eficiența accesului la date, cum ar fi îndeplinirea cerințelor de promptitudine, fiabilitate etc.;

    ușurința de a lucra cu baza de date etc.

De obicei, DBMS este responsabil pentru următoarele: funcții:

    descrierea datelor;

    manipulare de date;

    crearea unei baze de date;

    executarea cererilor;

    emiterea de rapoarte;

    serviciu (menținerea integrității, funcții de ajutor, restaurarea bazei de date).

Prin natura locației lor, bazele de date pot fi centralizate sau distribuite.

O bază de date centralizată este o bază de date situată pe un singur server.

Revizuirea subbazelor de date de la producători de top

Deoarece SGBD nu funcționează singur, ci pe lângă o anumită platformă software și hardware, costul acestei platforme joacă un rol important pentru client. Prin urmare, nu este surprinzător faptul că companiile mari preferă DBMS pentru Unix și cele medii și mici - pentru Windows și Linux. Pentru a satisface toate solicitările, furnizorii oferă DBMS pentru toate platformele. Pe piața mondială, cererea de DBMS pentru Linux crește cel mai rapid. Totuși, în ceea ce privește volumul vânzărilor, sistemele Unix de la Oracle sunt în frunte, DBMS pentru Windows este pe locul doi și Linux pe locul trei, dar decalajul dintre ultimele două platforme scade în fiecare an.

Liderii de pe piața bazelor de date în acest moment sunt ibm, Oracle, Microsoft și Sybase.

SGBD

Companii

SGBD

O scurtă descriere a

Produse străine

Baza de date universală DB2

Multimedia, SGBD compatibil Web, funcționează cu major versiuni Unix, Linux și Windows pe platformele hardware zSeries, iSeries, VSE și VM.

DBMS pentru sisteme la scară întreprindere și grup de lucru, oferă lucru cu baze de date foarte mari în condiții de deficit de resurse.

SGBD relațional pentru gestionarea datelor la scară întreprindere, acceptă tehnologii XML și Internet, are un instrument de analiză încorporat și extragerea datelor, integrat cu Microsoft Office, rulează pe platforma Windows.

DBMS pentru procesarea tranzacțiilor la scară largă (OLTP), depozite de date de mare intensitate și aplicații de Internet care necesită resurse. Compatibil cu versiunile majore de Unix, Windows și Linux. Cea mai recentă versiune acceptă Grid computing.

Sybase Adaptive Server Enterprise (ASE)

Sybase Adaptive Server Anywhere (ASA)

SGBD la scară întreprindere pentru procesarea centralizată a informațiilor critice, rulează pe platformele Unix și Linux.

SGBD relațional compact, cu drepturi depline, pentru grupuri de lucru, computere mobile și încorporate.

Produse casnice

SGBD relațional, certificat de Comisia Tehnică de Stat sub președintele Federației Ruse pentru conformitatea cu clasa 2 de protecție a informațiilor împotriva accesului neautorizat, este compatibil cu versiunile principale de Unix, Linux, QNX, VAX/VMS, OpenVMS, DOS, Windows, NetWare, OS/2.

SGBD cu deschis cod sursa

SGBD relațional compact și rapid pentru întreprinderile mici și mijlocii, compatibil cu Linux, Mac OS X, Unix și Windows.

Comunitatea PostgreSQL

Un SGBD relațional are multe dintre caracteristicile care sunt implementate în produsele comerciale mari și este compatibil cu Unix, Windows și NetWare.

Cu toate acestea, unele sarcini sunt atât de solicitante din punct de vedere computațional încât chiar și cele mai puternice dintre supercalculatoarele moderne nu pot face față. Un factor important este costul echipamentului (dacă trebuie să creați un nou supersistem) sau costul timpului de calculator (dacă utilizați un supercomputer). În primul caz, costul este de sute, în al doilea – în zeci... milioane de dolari (euro etc.).

Calea de ieșire din această situație este utilizarea bazelor de date distribuite.

Baze de date distribuite(RDB) - un set de baze de date interconectate logic distribuite într-o rețea de calculatoare.

Sistem de management al bazelor de date distribuite - este un sistem software care asigură gestionarea bazelor de date distribuite și transparența distribuției sale către utilizatori.

Un RDB constă dintr-un set de noduri conectate printr-o rețea de comunicații în care: a) fiecare nod este un SGBD cu drepturi depline în sine;

b) nodurile interacționează între ele în așa fel încât un utilizator al oricăruia dintre ele să poată accesa orice date din rețea ca și cum ar fi pe propriul nod.

Principiul fundamental al creării bazelor de date distribuite („Regula 0”): pentru utilizator, un sistem distribuit ar trebui să arate la fel ca un sistem nedistribuit.

Principiul fundamental presupune anumite obiective suplimentare. Există doar douăsprezece astfel de obiective:

1. Autonomia locală. Datele locale trebuie să fie deținute și controlate locale, inclusiv funcțiile de securitate, integritate și reprezentare în memorie.

2. Niciun serviciu specific nu ar trebui să fie atribuit niciunui nod central dedicat. Respectarea acestei reguli, i.e. Principiul descentralizării funcțiilor RDBMS vă permite să evitați blocajele.

3. Continuitatea funcționării. Sistemul nu ar trebui să se oprească dacă este necesară adăugarea unui nou nod sau ștergerea unor date într-un mediu distribuit, modificarea definiției metadatelor sau chiar (ceea ce este destul de dificil) migrarea către o nouă versiune a SGBD pe un nod separat.

4. Locație independentă. Utilizatorilor și aplicațiilor nu li se cere să știe unde sunt localizate fizic datele.

5. Independent de fragmentare. Fragmentele (numite și secțiuni) de date trebuie să fie întreținute și procesate de instrumentele RaDBMS în așa fel încât utilizatorii sau aplicațiile să nu știe absolut nimic despre ele. Mai mult, RaDBMS trebuie să poată ocoli fragmentele care nu sunt legate de ele atunci când procesează interogări (de exemplu, RaDBMS trebuie să fie suficient de inteligent pentru a determina dacă acest sau acel fragment poate fi exclus la procesarea unei interogări datorită faptului că interogarea nu conține link-uri către coloanele stocate în acest fragment).

6. Independență față de replicare. Aceleași principii de independență și transparență se aplică și mecanismului de replicare, care este discutat mai jos.

7. Procesarea cererilor distribuite. Procesarea cererii trebuie să se facă într-o manieră distribuită. În secțiunea următoare ne vom uita la câteva principii arhitecturale pentru implementarea RaDBMS și diverse modele, în cadrul căruia este posibilă procesarea distribuită a cererilor.

8. Gestionarea tranzacțiilor distribuite. Managementul tranzacțiilor și mecanismele de control al concurenței trebuie extinse la bazele de date distribuite. Această problemă include identificarea și rezolvarea blocajelor, întreruperile de time-out, comiterea și anularea tranzacțiilor distribuite și o serie de alte probleme.

9. Independenta echipamentelor. Același software RaDBMS trebuie să ruleze pe platforme hardware diferite și să funcționeze în sistem ca un partener egal. După cum sa discutat mai sus, acest lucru este extrem de dificil de realizat în practică, deoarece mulți furnizori acceptă mai multe platforme. Această limitare este depășită prin utilizarea modelului de mediu cu mai multe produse.

10. Independență față de sistemele de operare. Această problemă este strâns legată de cea anterioară și, de asemenea, este rezolvată într-un mod similar.

11. Independența rețelei. Nodurile pot fi conectate între ele folosind o mare varietate de mijloace de comunicare și de rețea. Modelul pe mai multe niveluri inerent multor sisteme informatice moderne (de exemplu, modelul OSI cu șapte straturi, modelul TCP/IP, nivelurile SNA și DECnet) oferă o soluție la această problemă nu numai în mediul RDBMS, ci și pentru sistemele informatice în general.

12. Independenta DBMS. SGBD-urile locale trebuie să poată participa la operarea RaDBMS.

Este clar că, deși ar fi foarte de dorit să existe sisteme care să îndeplinească toate cele 12 reguli, este nerealist să ne așteptăm ca aceste cerințe să fie implementate chiar și într-un singur produs, chiar și în următorii ani.

Cei patru pași necesari pentru a trece la gestionarea bazelor de date distribuite sunt subliniați mai jos pentru a oferi următoarele capabilități:

1. Cerere de la distanță. Se conectează la o gazdă la distanță și citește sau modifică datele de pe gazda respectivă. Rezultatul este trimis la nodul sursă, după care tranzacția este finalizată. Aproape fiecare DBMS comercial acceptă acum interogări de la distanță și oferă această capacitate de ceva timp.

2. Unitate de lucru la distanță. Aceasta înseamnă că un grup de solicitări poate fi executat ca unitate atomică (tranzacție) pe un nod la distanță. În general, o aplicație poate accesa și modifica datele de la mai multe noduri, dar fiecare tranzacție afectează datele unui singur nod.

3. Unitate de lucru distribuităîn acest caz, fiecare cerere se referă la un singur nod, dar cererile care alcătuiesc o unitate de lucru (tranzacție) distribuită pot fi executate în comun pe mai multe noduri. Întregul grup de solicitări este remediat sau anulat ca unul singur.

4. Cerere distribuită. Acest pas vă permite să rulați interogări care acoperă mai multe baze de date pe diferite noduri. Mai multe astfel de interogări distribuite pot fi grupate în continuare ca tranzacție.

Bazele de date sunt depozite modelate logic de orice tip de date. Fiecare bază de date care nu este fără schemă urmează un model care definește o structură specifică de procesare a datelor. DBMS sunt aplicații (sau biblioteci) care gestionează baze de date de diferite forme, dimensiuni și tipuri.

Pentru a înțelege mai bine DBMS, verificați.

Sisteme de management al bazelor de date relaționale

Sistemele relaționale implementează un model de date relaționale, care definește toate informațiile stocate ca un set de înregistrări și atribute asociate într-un tabel.

SGBD de acest tip utilizează structuri (tabele) pentru a stoca și a lucra cu date. Fiecare coloană (atribut) conține propriul tip de informații. Fiecare înregistrare din baza de date care are o cheie unică este trecută într-un rând de tabel, iar atributele sale sunt afișate în coloanele tabelului.

Relații și tipuri de date

Relațiile pot fi definite ca mulțimi matematice care conțin seturi de atribute care reprezintă informații stocate.

Fiecare element care formează o înregistrare trebuie să satisfacă un anumit tip date (întreg, dată etc.). Diferite RDBMS-uri utilizează diferite tipuri de date, care nu sunt întotdeauna interschimbabile.

Aceste tipuri de restricții sunt comune în bazele de date relaționale. De fapt, ele formează esența relației.

RDBMS populare

În acest articol vom vorbi despre cele mai populare 3 RDBMS-uri:

  • SQLite: RDBMS încorporat foarte puternic.
  • MySQL: cel mai popular și mai frecvent utilizat RDBMS.
  • PostgreSQL: cel mai avansat și mai flexibil RDBMS.

SQLite

SQLite este o bibliotecă uimitoare care este încorporată în aplicația care o folosește. Fiind o bază de date de fișiere, oferă un set excelent de instrumente pentru o prelucrare mai ușoară (comparativ cu bazele de date server) a oricărui tip de date.

Când o aplicație folosește SQLite, comunicarea lor se face prin apeluri de funcție și apeluri directe către fișiere care conțin date (de exemplu, baze de date). date SQL ite), mai degrabă decât un fel de interfață, care crește viteza și performanța operațiunilor.

Tipuri de date acceptate

  • NUL: Valoare NULL.
  • ÎNTREG: un număr întreg cu semn stocat pe 1, 2, 3, 4, 6 sau 8 octeți.
  • REAL: Un număr în virgulă mobilă stocat în format IEEE de 8 octeți.
  • TEXT:șir de text cu codificare UTF-8, UTF-16BE sau UTF-16LE.
  • BLOB: un tip de date stocate exact în aceeași formă în care au fost primite.

Notă: pentru a obține mai mult informatii detaliate verificati documentatia.

Avantaje

  • Fişier:întreaga bază de date este stocată într-un singur fișier, ceea ce face ușor de mutat.
  • Standardizat: SQLite folosește SQL; Unele funcții sunt omise (RIGHT OUTER JOIN sau FOR EACH STATEMENT), cu toate acestea, există unele noi.
  • Excelent pentru dezvoltare și chiar testare:În faza de dezvoltare, majoritatea necesită o soluție scalabilă. SQLite, cu setul său bogat de caracteristici, poate oferi mai mult decât suficientă funcționalitate, fiind în același timp suficient de simplu pentru a lucra cu un singur fișier și biblioteca C asociată.

Defecte

  • Lipsa controlului utilizatorului: bazele de date avansate oferă utilizatorilor posibilitatea de a gestiona relațiile în tabele în funcție de privilegii, dar SQLite nu are o astfel de caracteristică.
  • Imposibilitatea de a configura în continuare: din nou, SQLite nu poate fi făcut mai productiv prin jocul cu setările - tocmai așa este proiectat.

Când să utilizați SQLite

  • Aplicații încorporate: Toate aplicațiile portate care nu sunt proiectate pentru scalare - de exemplu, aplicații locale pentru un singur utilizator, aplicații mobile sau jocuri.
  • Sistem de acces la disc:În cele mai multe cazuri, aplicațiile care efectuează frecvent operațiuni directe de citire/scriere pe disc pot fi migrate pe SQLite pentru a îmbunătăți performanța.
  • Testare: Perfect pentru majoritatea aplicațiilor, a căror funcționalitate este testarea logicii de afaceri.

Când să nu folosiți SQLite

  • Aplicații multi-utilizator: Dacă lucrați la o aplicație în care mai multe persoane vor accesa simultan baza de date, este mai bine să alegeți un RDBMS complet - de exemplu, MySQL.
  • Aplicații care înregistrează cantități mari de date: Una dintre limitările SQLite este operațiile de scriere. Acest RDBMS permite executarea unei singure operații de scriere la un moment dat.

MySQL

MySQL este cea mai populară dintre toate bazele de date de server majore. Este foarte ușor de înțeles și puteți găsi o mulțime de informații despre el online. Deși MySQL nu încearcă să implementeze pe deplin standardele SQL, oferă o mulțime de funcționalități. Aplicațiile comunică cu baza de date printr-un proces demon.

Tipuri de date acceptate

  • TINYINT:întreg foarte mic.
  • SMALLINT:întreg mic.
  • MEDIUM:întreg de mărime medie.
  • INT sau INTEGER:întregul este de dimensiune normală.
  • BIGINT:întreg mare.
  • PLUTI: număr cu virgulă mobilă cu precizie unică semnat.
  • DUBLĂ, DUBĂ PRECIZIE, REAL: număr semnat în virgulă mobilă dublă precizie.
  • DECIMAL, NUMERIC: număr semnat în virgulă mobilă.
  • DATA: data de.
  • DATETIME: combinație de dată și oră.
  • TIMESTAMP-UL: timestamp-ul.
  • TIMP: timp.
  • AN: an în format YY sau YYYY.
  • CHAR: linia marime fixa, captusita in dreapta cu spatii la lungimea maxima.
  • VARCHAR:șir de lungime variabilă.
  • TINYBLOB, TINYTEXT: O coloană BLOB sau TEXT cu o lungime maximă de 255 (2^8 - 1) caractere.
  • BLOB, TEXT: O coloană BLOB sau TEXT cu o lungime maximă de 65535 (2^16 - 1) caractere.
  • MEDIUMBLOB, MEDIUMTEXT: O coloană BLOB sau TEXT cu o lungime maximă de 16777215 (2^24 - 1) caractere.
  • LONGBLOB, LONGTEXT: O coloană BLOB sau TEXT cu o lungime maximă de 4294967295 (2^32 - 1) caractere.
  • ENUM: transfer.
  • A STABILIT: mulţimi.

Avantaje

  • Simplitate: MySQL este ușor de instalat. Există multe instrumente de la terți, inclusiv cele vizuale, facilitând începerea cu baza de date.
  • Multe functii: MySQL acceptă majoritatea funcționalității SQL.
  • Siguranță: MySQL are multe caracteristici de securitate încorporate în el.
  • Putere și scalabilitate: MySQL poate gestiona cantități foarte mari de date și este foarte potrivit pentru aplicații scalabile.
  • Viteză: Neglijarea unor standarde permite MySQL să funcționeze mai eficient, uneori tăind colțuri.

Defecte

  • Limitări cunoscute: Prin definiție, MySQL nu poate face totul și are anumite limitări de funcționalitate.
  • Probleme de fiabilitate: unele operațiuni sunt implementate mai puțin fiabil decât în ​​alte RDBMS.
  • Stagnare în dezvoltare: Deși MySQL este un produs open-source, lucrul la el este foarte lent. Cu toate acestea, există mai multe baze de date care se bazează în întregime pe MySQL (de exemplu, MariaDB). Apropo, puteți afla mai multe despre relația dintre MariaDB și MySQL din conversația noastră cu creatorul ambelor RDBMS, James Bottomley.

Când să utilizați MySQL

  • Operațiuni distribuite: Când aveți nevoie de mai multe funcționalități decât vă poate oferi SQLite, ar trebui să utilizați MySQL.
  • Securitate inalta: Caracteristicile de securitate MySQL oferă protecţie fiabilă accesul și utilizarea datelor.
  • Site-uri web și aplicații: Majoritatea resurselor web pot funcționa bine cu MySQL, în ciuda limitărilor. Acest instrument este foarte flexibil și ușor de utilizat, ceea ce este benefic pe termen lung.
  • Soluții personalizate: dacă lucrați la un produs foarte specific, MySQL se va adapta nevoilor dumneavoastră datorită gamă largă setări și moduri de operare.

Când să nu utilizați MySQL

  • Compatibilitate SQL: deoarece MySQL nu încearcă să se implementeze complet Standardele SQL, nu este complet compatibil cu SQL. Din acest motiv, pot apărea probleme la integrarea cu alte RDBMS-uri.
  • Competitivitate: Deși MySQL gestionează bine operațiunile de citire, operațiunile simultane de citire-scriere pot cauza probleme.
  • Lipsa caracteristicilor:În funcție de alegerea motorului MySQL, unele funcții pot lipsi.

PostgreSQL

PostgreSQL este cel mai avansat RDBMS, concentrându-se în primul rând pe conformitatea și extensibilitatea completă a standardelor. PostgreSQL, sau Postgres, încearcă să respecte pe deplin standardele SQL ANSI/ISO.

PostgreSQL diferă de alte RDBMS-uri prin faptul că are funcționalitate orientată pe obiecte, inclusiv sprijin deplin Conceptul ACID (atomicitate, consistență, izolare, durabilitate).

Bazat pe o tehnologie puternică, Postgres excelează la procesarea mai multor lucrări simultan. Suportul de concurență este implementat folosind MVCC (Multiversion Concurrency Control), care asigură și compatibilitatea ACID.

Deși acest RDBMS nu este la fel de popular ca MySQL, există multe instrumente și biblioteci terțe pentru a face lucrul cu PostgreSQL mai ușor.

Tipuri de date acceptate

  • bigint:întreg semnat de 8 octeți.
  • seria mare: un număr întreg de 8 biți incrementat automat.
  • bit [(n)]:șir de biți cu lungime fixă.
  • biți care variază [(n)]:șir de biți de lungime variabilă.
  • boolean: Valoare booleană.
  • cutie: dreptunghi pe un plan.
  • bytea: date binare.
  • caracter care variază [(n)]: un șir de caractere cu lungime fixă.
  • caracterul [(n)]:
  • cidr: Adresă de rețea IPv4 sau IPv6.
  • cerc: cerc pe un plan.
  • Data: data calendaristică.
  • precizie dubla: număr în virgulă mobilă cu precizie dublă.
  • inet: Adresă gazdă IPv4 sau IPv6.
  • întreg:întreg semnat de 4 octeți.
  • interval [(p)]: perioadă.
  • linia: o linie dreaptă infinită pe un plan.
  • lseg: un segment pe un plan.
  • macaddr: Adresa mac.
  • bani: valoare monetară.
  • cale: traseu geometric pe un plan.
  • punct: punct geometric pe un plan.
  • poligon: poligon pe un plan.
  • real: număr unic cu virgulă mobilă de precizie.
  • smallint:întreg semnat de 2 octeți.
  • serial: un număr întreg de 4 biți incrementat automat.
  • text:șir de caractere cu lungime variabilă.
  • timp [(p)]: ora din zi (fără fus orar).
  • ora [(p)] cu fusul orar: ora din zi (cu fusul orar).
  • marca temporală [(p)] : data și ora (fără fus orar).
  • marca temporală [(p)] cu fusul orar: data și ora (cu fusul orar).
  • întrebări: interogare de căutare text.
  • tsvector: document de căutare text.
  • txid_snapshot: ID tranzacție utilizator instantaneu.
  • uuid: identificator unic.
  • xml: date XML.

Avantaje

  • Compatibilitate completă cu SQL.
  • Comunitate: PostgreSQL este suportat 24/7 de către o comunitate experimentată.
  • Asistență terță parte:În ciuda caracteristicilor sale foarte avansate, PostgreSQL este folosit în multe instrumente legate de RDBMS.
  • Extensibilitate: PostgreSQL poate fi extins programatic cu proceduri stocate.
  • Orientare obiect: PostgreSQL nu este doar un SGBD relațional, ci și orientat pe obiecte.

Defecte

  • Performanţă:În operațiunile simple de citire, PostgreSQL poate fi inferior concurenților săi.
  • Popularitate: Datorită complexității sale, instrumentul nu este foarte popular.
  • Gazduire: Din cauza factorilor de mai sus, este dificil să găsești un furnizor potrivit.

Când să utilizați PostgreSQL

  • Integritatea datelor: Dacă fiabilitatea și integritatea datelor sunt o prioritate, PostgreSQL este cea mai bună alegere.
  • Proceduri complexe: dacă baza de date trebuie să efectueze proceduri complexe, ar trebui să alegeți PostgreSQL datorită extensibilității sale.
  • Integrare: Dacă în viitor trebuie să mutați întreaga bază de date într-o altă soluție, PostgreSQL va avea cele mai puține probleme.

Când să nu utilizați PostgreSQL

  • Viteză: Dacă tot ce aveți nevoie sunt operații de citire rapidă, nu ar trebui să utilizați PostgreSQL.
  • Situații simple: cu excepția cazului în care aveți nevoie de fiabilitate sporită, suport ACID și toate acestea, utilizarea PostgreSQL înseamnă să împușcăm muște cu un tun.

Revizuirea DBMS-ului modern

Nevoia larg răspândită de prelucrare automată date mass media a adus în evidență necesitatea unor limbaje specializate de prelucrare a datelor. Astfel de facilități sunt de obicei incluse în sistemele de gestionare a bazelor de date. Pachetele DBMS fac posibilă gestionarea datelor direct în modul interactivși, de asemenea, permit programatorilor să dezvolte mai avansate software prelucrarea lor se face prin aplicaţii software.

În cele mai multe versiunea completa Pachetele DBMS trebuie să aibă următoarele componente:

1. Mediul utilizator, care face posibilă gestionarea directă a bazei de date.

2. Limbajul algoritmic pentru programarea sistemelor aplicate de prelucrare a datelor.

3. Un compilator pentru a da programului completat o formă comercială gata făcută, sub forma unui fișier exe.

4. Programe - utilitare de programare rapidă operațiuni de rutină, cum ar fi FORM, MENU.

DBMS este un shell de utilizator axat pe gestionarea imediată a solicitărilor utilizatorilor. Cu toate acestea, pentru utilizatorul casnic, acest lucru este de mai puțină importanță din cauza dificultății de a stăpâni interfața în limba engleză. Prezența unui limbaj de programare în SGBD vă permite să creați sisteme complexe de procesare a datelor pentru sarcini specifice. Un grup de SGBD-uri relaționale este reprezentat pe piață produse software destul de lat. Acestea sunt, de exemplu, sisteme precum Paradox, Clipper.

Caracteristica principală a unui SGBD este prezența procedurilor de introducere și stocare nu numai a datelor în sine, ci și a descrierilor structurii sale. Fișierele furnizate cu o descriere a datelor stocate în ele și controlate de un SGBD au început să fie numite bănci de date, iar apoi „Băzuri de date” (DB-uri).

Bazele de date (DB) sunt o colecție de date, structurate într-un anumit mod pe o anumită temă, utilizate în diverse sectoare ale economiei, industriei, afacerilor și științei. Viteza de acces informatie necesara, eficiența primirii sale determină în cele din urmă desfășurarea cu succes a afacerii și reduce costurile elementelor de venit relevante. Au fost dezvoltate metode care facilitează lucrul cu cantități mari de date: crearea de baze de date, căutarea, editarea, extragerea diverselor mostre, precum și efectuarea analizei datelor și întocmirea calculelor care conțin documente și date finale sub formă de tabele, diagrame și grafice.

Aceste metode sunt implementate folosind un set de instrumente software care asigură lucrul cu baza de date - un sistem de management al bazei de date (DBMS).

Există multe produse software care vă permit să creați și să lucrați cu baze de date, de exemplu, Access, Clipper, Excel și altele. Dintre varietatea mare de programe, cel mai popular este DBMS FoxPro, care în caracteristicile sale îndeplinește cele mai înalte cerințe impuse acestui tip de sistem atât în ​​ceea ce privește nivelul și volumul, cât și în ceea ce privește viteza de procesare a informațiilor.

Pe acest moment dezvoltat și utilizat pe scară largă de Visual FoxPro pentru versiuni Windows 3.0 și 5.0. Cu toate acestea, lucrul cu aceste pachete pentru non-programatori este destul de dificil. sarcină dificilă. Prin urmare, pentru crearea unei baze de date pentru utilizatorii cu puțină experiență de programare, versiunile 2.5 și 2.6 pentru Windows și 2.0 pentru DOS au mare succes.

Structura bazei de date:

O bază de date este un set de informații omogene și, de regulă, ordonate după un anumit criteriu. Baza de date poate fi prezentată atât pe hârtie, cât și pe computer.

Un exemplu tipic de bază de date „de hârtie” este un director set de bibliotecă carduri de hârtie care conțin informații despre cărți. Informațiile din această bază de date sunt omogene (conțin informații doar despre cărți) și ordonate (cartele sunt aranjate în ordine alfabetică numele autorilor). Alte exemple de bază de date pe hârtie sunt agendele telefonice și orarele trenurilor.

O bază de date computerizată este un fișier (sau o colecție de fișiere aferente) care conține informații, adesea numite fișier de date. Un fișier de date este format din înregistrări, fiecare conținând informații despre o instanță. Înregistrările sunt alcătuite din câmpuri. Fiecare câmp conține informații despre o caracteristică a instanței. Vă rugăm să rețineți că fiecare înregistrare constă din aceleași câmpuri. Este posibil ca unele câmpuri să nu fie completate, dar sunt încă prezente în înregistrare. Pe hârtie, este convenabil să reprezentați o bază de date sub forma unui tabel. informație baze de date computerizate datele sunt de obicei afișate sub formă de tabele. Prin urmare, în locul expresiei „fișier de date”, este adesea folosită expresia „tabel de date” sau pur și simplu „tabel”.

Mediul de dezvoltare Borland C++ Builder.

Pentru a crea o stație de lucru autonomă, puteți alege software-ul în limbajul C++ Builder, care este unul dintre cele mai cunoscute SGBD. Există multe instrumente pentru programarea automatizării pe piața de software. Dar în ceea ce privește puterea și ușurința de utilizare, doar Borland Delphi și Microsoft Visual De bază.

„C++ Builder” este un sistem de programare vizual puternic orientat pe obiecte care vă permite să lucrați atât cu baze de date locale simple la distanță, cât și cu baze de date distribuite pe mai multe niveluri. El însuși și produsele software furnizate cu acesta vă permit să rezolvați următoarea gamă de probleme:

1. Creați rapid interfețe de fereastră cu aspect profesional pentru aplicații, chiar și pentru programatorii începători.

2. Creați aplicații de orice complexitate și orice scop, fie că este vorba de aplicații de birou, de contabilitate, de inginerie sau de regăsire a informațiilor.

3. Creați o interfață convenabilă pentru orice program creat anterior.

4. Creați-vă propriile componente DLL, care pot fi apoi utilizate în alte limbaje de programare.

5. Creați sisteme pentru lucrul cu baze de date locale și la distanță de orice tip.

6. Creați baze de date de diferite tipuri utilizând setul de instrumente C++ Builder (DataBaseDesktop).

7. Formatați și imprimați rapoarte complexe din aplicație, inclusiv tabele, grafice și o varietate de simboluri.

8. Contactați astfel de persoane din aplicația dvs produse Microsoft cum ar fi Word, Excel etc.

9. Creați un sistem de ajutor, atât pentru aplicațiile dvs., cât și pentru alții.

Borland C++Builder 6 este un program conceput pentru gestionarea datelor - catalogare, întreținere, procesare a informațiilor și multe altele. Deși puteți efectua multe operațiuni de bază de date prin sistemul de meniuri și interfața, stăpânirea capabilităților extinse ale Borland C++Builder 6 necesită anumite cunoștințe ale limbajului de programare de bază.

Aplicațiile din mediul Borland C++ Builder 6 sunt construite sub formă de structuri speciale - proiecte care privesc utilizatorului ca o colecție de mai multe fișiere. Niciun program nu poate exista în afara structurii proiectului. Activitățile de management de proiect sunt realizate de un pachet software special - Project Manager.

Justificarea alegerii mijloacelor tehnice

Cerinte Minime de Sistem:

2. Sistem de operare Microsoft Windows 98, Windows Millennium (Me), Windows 2000 și versiuni ulterioare săli de operație sisteme Microsoft Windows.

3. volum memorie cu acces aleator trebuie să fie de cel puțin 128 Mb (se recomandă 256 Mb).

4. 115 Mb spatiu liber pe hard disk.

5. VGA sau mai mult o rezoluție înaltă monitor.

6. Mouse, tastatură.

7. Spațiu necesar pe hard disk pentru instalarea completă: 675 Mb (ediția Enterprise); 580 Mb (Profesional); 480 Mb (personal)

Institutul Energetic din Moscova, Universitatea Tehnică

Prezentare generală a sistemelor moderne de gestionare a bazelor de date

Student: Dudkina A.

Grup: A-13-07

Articol: baze de date și sisteme expert

Profesor: Sidorova N.P.

    Introducere.

    Prezentare generală a principalului SGBD:

    1. Microsoft SQL Server

    2. PostgreSQL

      Alte SGBD

    Concluzie: tendințe de dezvoltare DBMS.

    Aplicație.

Introducere

În prezent, un număr destul de mare de SGBD-uri industriale universale sunt utilizate în lume. Printre aceștia, pot fi identificați trei lideri neîndoielnici (atât în ​​ceea ce privește dezvoltarea tehnologiei, cât și dimensiunea pieței - ei ocupă împreună peste 90% din piața mondială DBMS). Acestea sunt DBMS de prim nivel - Oracle, Microsoft SQL Server, MySQL și IBM DB2, în În ultima vreme Sistemul open source PostgreSQL devine rapid popular. Lista SGBD-urilor de nivelul doi este destul de mare, aceasta include SGBD-uri precum Sybase, Informix, Ingress, Adabas, Interbase, Progress, Cache, Linter, Firebird, Teradata etc.

Există și mici SGBD-uri pentru soluții de nișă (specializate), iar prototipurile de noi SGBD specializate apar în mod constant (SGBD-uri orientate pe obiecte, SGBD-uri XML, SGBD-uri pentru procesarea datelor în flux, SGBD-uri pentru lucrul cu texte etc.).

SGBD desktop utilizat pentru sarcini relativ mici (volum mic de date prelucrate, număr mic de utilizatori). Ținând cont de acest lucru, aceste SGBD-uri au în special o arhitectură relativ simplificată, funcționează în modul server de fișiere și nu acceptă toate funcțiile SGBD posibile (de exemplu, nu păstrează un jurnal de tranzacții, nu există posibilitatea de a restaura automat; baza de date după erori etc.). Cu toate acestea, astfel de sisteme au o gamă destul de largă de aplicații. În primul rând, acestea sunt instituțiile de stat (municipale), sectorul educațional, sectorul serviciilor și întreprinderile mici și mijlocii. Specificul problemelor care apar acolo este că volumele de date nu sunt catastrofal de mari, frecvența actualizărilor nu este prea mare, organizația este de obicei situată geografic într-o clădire mică, numărul de utilizatori variază de la unu la 10-15 persoane. . În astfel de condiții, utilizarea SGBD-urilor desktop pentru gestionarea sistemelor informaționale este complet justificată și sunt utilizate cu succes.

Unul dintre primele SGBD-uri au fost așa-numitele sisteme software compatibile cu dBase dezvoltate de diferite companii. Primul sistem de acest fel răspândit a fost sistemul dBase III - PLUS (Achton-Tate). Un limbaj de programare dezvoltat și o interfață convenabilă accesibilă utilizatorilor de masă au contribuit la utilizarea pe scară largă a sistemului. În același timp, operarea sistemului în modul de interpretare a dus la performanțe scăzute la etapa de execuție. Acest lucru a condus la apariția unor noi sisteme de compilare apropiate sistemului dBase III - PLUS: Clipper (Nantucket Inc.), FoxPro (Fox Software), FoxBase+ (Fox Software), Visual FoxPro (Microsoft). La un moment dat, PARADOX DBMS (Borland International) a fost utilizat pe scară largă.

ÎN anul trecut Sistemul de gestionare a bazelor de date Microsoft Access, care este inclus într-o serie de versiuni ale pachetului Microsoft Office (Microsoft), a devenit foarte răspândit.

Pentru organizațiile mari situația se schimbă fundamental. Acolo, utilizarea tehnologiilor server de fișiere este nesatisfăcătoare din motivele descrise mai sus. Prin urmare, așa-numitul server DBMS.

Principalii producători de astfel de sisteme de procesare și stocare a datelor sunt 3 corporații: Oracle, Microsoft și IBM. În figură este prezentată o diagramă a raportului dintre volumele de vânzări ale sistemelor corespunzătoare (sursa: Raport IDC, mai 2006).

Vânzări de software pentru sisteme de stocare în lume

Cel mai comun client server Sistemele de aici sunt respectiv sisteme Oracle (dezvoltate de Oracle), MS SQL Server (dezvoltate de Microsoft), DB2, Informix Dynamic Server (IBM).

Să facem o scurtă descriere a principalelor sisteme.

Oracol

Oracle DBMS– veteran al pieței DBMS relaționale. Dezvoltarea acestui sistem a început aproape în același timp cu IBM DB2, iar până în prezent aceste sisteme rămân principalii concurenți (după cum se poate observa din figură).

Oracle ocupă o poziție de lider pe piața DBMS și, cel mai important, este lider pe platformele Unix și Windows. În Rusia, a apărut și conducerea Oracle, în special în domeniul sistemelor informaționale la scară largă. De fapt, în țara noastră, Oracle DBMS a devenit standardul pentru sistemele informaționale guvernamentale.

Motivul pentru utilizarea pe scară largă a Oracle constă în primul rând în caracteristicile de înaltă performanță ale DBMS, un număr mare de specialiști Oracle autohtoni instruiți, prezența infrastructurii de sprijin - centre de formare, o rețea largă de parteneri Oracle, un număr mare cursuri tehnice de Oracle în cel mai înalt institutii de invatamant etc. Astfel, numai în Moscova există mai mult de o duzină de centre de formare care oferă o gamă largă de cursuri tehnice pe aproape toate liniile de produse software Oracle. Rețeaua de parteneri din toată țara include peste 160 de organizații, ceea ce garantează suport pentru software-ul Oracle aproape oriunde în țară. O mulțime de cărți de înaltă calitate despre Oracle DBMS au fost deja publicate în rusă.

Serviciul de suport tehnic Oracle este construit pe o bază profesională. Serviciul de suport tehnic din Rusia este certificat ISO 9000.

În plus, companiile partenere Oracle de top, cum ar fi FORS, RDTex, au propriile lor centre de asistență tehnică.

De asemenea, este important ca, alături de SGBD, Oracle să furnizeze un produs de infrastructură centrală - Internet Application Server, un server de aplicații care funcționează în mediul Internet/Intranet, precum și instrumente CASE, instrumente pentru dezvoltarea rapidă a aplicațiilor, instrumente pentru construirea de depozite de date. , și analiza datelor operaționale , identificând dependențe complexe în date (Data Mining), care ne permite să livrăm nu produse individuale, ci soluții tehnologice complexe pentru clienți.

Din punct de vedere tehnic, este important ca Oracle să opereze pe aproape toate platformele de computer existente, inclusiv pe computerele mainframe (OS/390) și pe sistemele încă populare Vax VMS, ca să nu mai vorbim de Windows NT și diverse varietăți de Unix, inclusiv Solaris. , HP-UX, AIX, Linux, SCO Unix etc.

O altă caracteristică importantă este suportul Oracle pentru toate arhitecturile posibile, inclusiv sisteme multiprocesoare simetrice, clustere, sisteme masiv paralele etc. Importanța acestor caracteristici pentru organizațiile moderne la scară largă care operează multe computere de diferite modele și producători este evidentă. În astfel de condiții, factorul de succes este tipificarea maximă posibilă a soluțiilor propuse, cu scopul de a reduce semnificativ costul de deținere a software-ului. Unificarea sistemelor de management al bazelor de date este unul dintre cei mai importanți pași către atingerea acestui obiectiv.

Miezul SGBD-ului Oracle este serverul de baze de date, care vine în una dintre cele patru opțiuni, în funcție de scară Sistem informatic, în cadrul căruia se dorește a fi utilizat. Pentru sistemele de mare scară organizațională este oferit produsul OracleDatabase Enterprise Edition (ediție corporativă), pentru care există un întreg set de opțiuni care extind arhitectural și funcțional capacitățile serverului. Exact Baza de date Oracle Enterprise Edition este instalată pe clustere (cu opțiunea Parallel Server, versiunea 8i inclusiv, sau RAC–Real Application Cluster, începând cu versiunea 9i și mai veche), permițându-vă să creați sisteme cu o disponibilitate ridicată. Oracle Database Standard Edition se adresează organizațiilor de dimensiuni medii sau diviziilor dintr-o organizație mare. Produsul Oracle Database Personal Edition este destinat uzului personal.

Cel mai important avantaj al Oracle față de concurenții săi (și, mai ales, față de DB2) este identitatea codului diferitelor versiuni ale serverului de baze de date. Date Oracle pentru toate platformele, garantând identitatea și predictibilitatea Oracle funcționează pe toate tipurile de computere, indiferent de ceea ce este inclus în el. Toate versiunile serverului Oracle se bazează pe același cod sursă și sunt identice din punct de vedere funcțional, cu excepția unor opțiuni care, de exemplu, pot fi adăugate la Oracle Database Enterprise Edition și nu pot fi adăugate la Oracle Database Standard Edition.

Astfel, pentru toate platformele există un singur SGBD în versiuni diferite care se comportă la fel și oferă aceeași funcționalitate indiferent de platforma pe care este instalat. Dezvoltarea produselor server ca parte a DBMS este realizată de o singură divizie a Oracle Corporation versiunea de bază, iar apoi transferate pe toate platformele, unde sunt, de asemenea, verificate în detaliu. Capacitatea de a transfera Oracle este oferită de structura specifică a sursei codul programului Server. Aproximativ 80% din codul Oracle este scris în limbajul de programare C, care (cu anumite limitări) este independent de platformă. Aproximativ 20% din cod, care reprezintă nucleul serverului, este implementat în limbaje dependente de mașină și această parte a codului, desigur, este rescrisă pentru diferite platforme.

Schema rigidă de dezvoltare tehnologică a Oracle, bazată pe principiile codului sursă identic pentru diferite versiuni și platforme, contrastează cu schemele altor companii. Astfel, DB/2 DBMS este o familie de produse, dar nu un singur produs. Din punct de vedere funcțional, versiunea DB2 pentru IBM S/390 diferă atât de semnificativ de DB2 pentru platformele UNIX și NT, încât ne permite să vorbim despre produse complet diferite.

Deci, Oracle DBMS ascunde detaliile implementării mecanismelor de gestionare a datelor pe fiecare dintre platforme, ceea ce dă motive să vorbim despre unificarea aproape completă a software-ului de bază. În plus, arhitectura Oracle permite ca sistemele de aplicații implementate pe o platformă să fie transferate pe alte platforme fără modificări atât în ​​structurile bazei de date, cât și în codurile aplicației. Totodată, principalul criteriu care determină posibilitatea transferului anumitor componente softwareîntre platforme este excluderea completă a codului dependent de mașină.

Microsoft SQL Server

Inceputul Istoricul Microsoft SQL Server poate fi considerat 1986, când Microsoft și Sybase au lansat o versiune comună a produsului - SQL Server 1.0 și l-au adaptat pentru sistem de operare OS/2 cu sprijinul lui Ashton Tate, care la acea vreme era lider pe piața DBMS pentru calculatoare personale. Lansat în 1989, produsul nu a primit recunoașterea cuvenită din cauza problemelor asociate cu promovarea OS/2. În 1990, Sybase și Microsoft și-au încheiat acordul cu Ashton Tate și au lansat SQL Server 1.1 pentru noul sistem de operare. sisteme Windows 3.0. Microsoft era responsabil pentru utilitățile clientului, interfețe softwareși instrumente de management și Sybase pentru dezvoltarea motorului de baze de date.

În 1992, a început dezvoltarea unei noi versiuni a produsului - SQL Server pe Windows NT, care a fost lansată în 1993 simultan cu sistemul de operare pentru server - Microsoft Windows NT. Integrarea strânsă cu Windows NT a oferit produsului performanțe ridicate, manevrabilitate și, pentru prima dată, Microsoft a avut un sistem de gestionare a bazelor de date care ar putea concura cu produse similare pe platforma UNIX. În 1994, Microsoft și Sybase și-au reziliat acordul comun de cinci ani, iar foștii parteneri au început să-și dezvolte în mod independent produsele concurente.

În 1995 și 1996, au fost lansate versiunile SQL Server 6.0 și 6.5, dar mai multe probleme de performanță și de gestionare au împiedicat aceste produse să câștige o cotă semnificativă pe piața bazelor de date pentru întreprinderi. S-a luat decizia de suspendare a dezvoltării Versiune curentă platformă și începeți să creați un produs de la zero. Cam în aceeași perioadă, DEC

și-a vândut sistemul de gestionare a bazelor de date către Oracle, iar Microsoft a reușit să obțină specialiști de top de la DEC - Jim Gray, Dave Lomet și Phil Bernstein. Echipa de dezvoltare a fost însărcinată cu crearea unui nou motor de baze de date cu suport de scalabilitate, un nou procesor de interogări, un sistem de auto-tuning și auto-management, precum și implementarea suportului pentru OLAP și ETL cu implicarea specialiștilor de la Panorama. Dezvoltarea noului DBMS a durat aproximativ trei ani și în 1998 a fost lansat un produs numit SQL Server 7.0 - Microsoft a început să cucerească nu numai piața DBMS relațională, ci și piețe noi precum business intelligence și depozitarea de date. În același timp, se lucra la SQL Server 2000, care includea suport XML, vizualizări indexate, partiții distribuite bazate pe vizualizare și îmbunătățiri de performanță cu peste 20% pentru aproape fiecare componentă cheie a produsului. În 2000, Microsoft a devenit liderul de drept pe piața DBMS pentru platforma Windows.

Dezvoltarea ulterioară a produsului - în versiuni SQL Server 2005 și SQL Server 2008 - a adăugat performanță crescută, manevrabilitate, suport extins pentru diferite tipuri de date, sisteme de raportare integrate, transformări de date, funcții avansate de analiză etc.

Microsoft SQL Server 2008 este o bază de date completă și o ofertă de analiză a datelor pentru a construi rapid soluții scalabile de comerț electronic, aplicații de afaceri și depozite de date. Reduce semnificativ timpul de lansare pe piață pentru aceste soluții, oferind în același timp scalabilitate pentru a satisface cele mai exigente cerințe. SQL Server include suport pentru XML și HTTP, caracteristici de performanță și disponibilitate pentru a ajuta la echilibrarea încărcăturilor de lucru și a asigura timpul de funcționare, precum și caracteristici pentru a îmbunătăți gestionarea și configurarea pentru a reduce costul total de proprietate.

Strâns integrată cu Microsoft Office, SQL Server 2008 Business Intelligence Platform oferă o infrastructură bogată și scalabilă pentru a aduce capabilități puternice de business intelligence fluxului de lucru al fiecărei unități de afaceri din compania dvs., oferindu-vă acces la informațiile de afaceri de care aveți nevoie printr-un MS Excel familiar. și interfața MS Word.

MS SQL Server 2008 acceptă crearea și lucrul cu un depozit de date corporative care combină informațiile din toate sistemele și aplicațiile, permițându-vă să obțineți o imagine cuprinzătoare unică a afacerii companiei dumneavoastră.

MS SQL Server 2008 oferă un „procesor de date” scalabil și de înaltă performanță - pentru cele mai critice și solicitante aplicații de afaceri, pentru cei care necesită cel mai înalt nivel de fiabilitate și securitate, reducând în același timp costul total de proprietate datorită capabilităților avansate de gestionare. infrastructura serverului.

MS SQL Server 2008 oferă dezvoltatorilor un mediu de programare dezvoltat, convenabil și funcțional, inclusiv instrumente pentru lucrul cu servicii web, tehnologii inovatoare de acces la date - tot ceea ce este necesar pentru a lucra eficient cu date de orice tip și format

D.B. 2 universal Bază de date

În primul rând, câteva informații de la server ( http:// www-01. ibm. com/ software/ ru/ date/? pgel= ibmhzn):

Server de baze de date universalD.B.2 universal Bază de dateeste un sistem de management al bazelor de date scalabil, relațional cu obiecte, cu suport multimedia integrat șiWeb, rulând pe sisteme de pe computere personale și servere pe procesoareIntelinainte deUnix, de la sisteme cu un singur procesor la sisteme multiprocesor simetrice (SMP) și sisteme masiv paralele (MPP), pe gazdeLA FEL DE/400 și mainframe.D.B.2 universal Bază de datecombină performanța ridicată a sistemelor de procesare a tranzacțiilor în modulpe- linia, extensii obiect-relaționale, optimizări avansate cu capabilități de procesare paralelă și suport pentru baze de date foarte mari.D.B.2 universal Bază de dateare, de asemenea, noi instrumente încorporate pentru a facilita portarea aplicațiilor dezvoltate pe alte sisteme de gestionare a bazelor de date, cum ar fiOracol, Microsoft, SybaseȘiInformix. In afara de asta,D.B.2 universal Bază de dateinclude suport suplimentar pentru sistemele de procesare analitică în timp real (OLAP) și sisteme de asistență pentru decizii, multe extensii ușor de utilizat (D.B.2 prelungitoare). D.B.2 universal Bază de dateDisponibil pe marea majoritate a platformelor cheie, oferind clienților flexibilitatea de care au nevoie.

Sistemul DB2 DBMS este unul dintre cei „de lungă durată” din lumea sistemelor de gestionare a bazelor de date. Bazat pe modelul clasic de date relaționale, sistemul a fost dezvoltat inițial pentru calculatoare mainframe. Abia mai târziu IBM a implementat DB2 pentru platforma AS/400 (DBMS se numea DB2/400), iar puțin mai târziu a început să lanseze un produs aproape nou numit Universal Data Base (UDB), care trebuia să respecte standardele sistemelor deschise și funcţionează pe o gamă largă de platforme, inclusiv Unix şi Windows.

În prezent, poziția SGBD-ului DB2 este excepțional de puternică, în primul rând pe computerele mainframe. Dacă comparăm evaluările experților pentru caracteristicile operaționale prezentate în Tabelul 1, putem vedea că DB2 DBMS are aproape cele mai înalte evaluări pe platforma computerului mainframe. De asemenea, este semnificativ faptul că SGBD-ul UDB este luat în considerare separat în tabel. Acesta este tocmai un indicator că sub marca comună DB2 există trei produse practic diferite - DB2 pentru computere mainframe, DB2/400 și DB2 universal pentru alte platforme. În contextul politicii tehnice moderne, care necesită unificare necondiționată și maximă posibilă a software-ului de bază, prezența a trei produse software diferite este un factor negativ.

Fiind principalul concurent al SGBD-ului Oracle în America de Nord, SGBD-ul DB2 este foarte slab reprezentat pe piața rusă, în ciuda calității tehnice ridicate a produsului. Poate că acest lucru se datorează strategiei generale a IBM pe piața rusă, când accentul principal este pus pe furnizarea de platforme informatice. Cert este că în Rusia numai grupuri de entuziaști lucrează cu DB2. Nu există practic nicio infrastructură necesară pentru distribuția pe scară largă a produsului, nu există un număr suficient de specialiști pregătiți, nu există o rețea largă de centre de formare și nu există literatură în limba rusă. Reprezentanța IBM din Rusia nu are practic nicio sucursală pentru suport tehnic DB2, ceea ce complică semnificativ funcționarea DBMS. Baza de instalare DB2 din Rusia este foarte limitată și afectează în principal computerele mainframe și AS/400-urile. Rețeaua de parteneri DB2 a IBM este mică în comparație cu, de exemplu, Microsoft sau Oracle. DB2 nu a reușit încă să devină standardul bazei de date pentru platformele UNIX (această nișă este ocupată de Oracle) și Windows NT (nișa este ocupată de Microsoft SQL Server și Oracle).

PostgreSQL

PostgreSQL- sistem de gestionare a bazelor de date obiect-relaționale (ORDBMS), A cărui dezvoltare, sub diferite forme, este în curs din 1977. Lucrarea a început cu proiectul Ingres de la Universitatea din California (Berkeley). Proiectul Ingres a fost apoi transferat în dezvoltare comercială la Relational Technologies/Ingres Corporation.

În 1986 un alt grup, condus de Michael Stonebraker din Berkeley, a continuat lucrul la Ingres și a creat sistemul de baze de date obiect-relaționale Postgres. În 1996, datorită îmbunătățirilor aduse pachetului și trecerii la distribuția open source, a fost adoptat un nou nume - PostgreSQL (pentru scurt timp a fost folosit numele Postgres95). În prezent, un grup de dezvoltatori din întreaga lume lucrează activ la proiectul PostgreSQL.

PostgreSQLEste considerat cel mai avansat SGBD distribuit în condiții open source. PostgreSQL oferă multe caracteristici care se găsesc în mod tradițional doar în produsele comerciale la scară largă (consultați secțiunea Caracteristici PostgreSQL pentru mai multe informații).

ÎNPostgreSQLsunt implementate multe caracteristici care sunt de obicei prezente numai în SGBD-urile comerciale, cum ar fiD.B.2 șiOracol. Principalele caracteristici ale PostgreSQL versiunea 7.1.x sunt enumerate mai jos.

    Modelul obiect-relațional. Lucrul cu date în PostgreSQL se bazează pe obiecte model relațional, care permite utilizarea unor proceduri complexe și sisteme de reguli. Exemplele de capabilități non-triviale din această categorie sunt declarative interogări SQL, control concurență, suport pentru acces multi-utilizator, tranzacții, optimizare a interogărilor, moștenire și suport pentru matrice.

    Usor de extins. PostgreSQL acceptă operatori, funcții, accesorii și tipuri de date personalizate.

    Sprijin deplinSQL. PostgreSQL respectă specificația de bază SQL99 și acceptă astfel de caracteristici non-triviale, cum ar fi îmbinările standard SQL92.

    Verificarea integrității legăturilor. PostgreSQL acceptă verificarea integrității referențiale pentru a se asigura că datele din baza de date sunt corecte.

    FlexibilitateAPI. Flexibilitatea API-ului PostgreSQL facilitează crearea de interfețe pentru RDBMS PostgreSQL. În prezent există interfețe de programare pentru Object Pascal, Python, Perl, PHP, ODBC, Java/JDBC, Ruby, TCL, C/C+ și Pike.

    Limbi procedurale. PostgreSQL oferă suport pentru limbaje procedurale interne, inclusiv limbajul specializat PL/pgSQL, care este un analog al PL/SQL, limbaj procedural Oracol.

    Client server.

Alte SGBD

PostgreSQL folosește o arhitectură client-server cu procese distribuite între utilizatori. În general, seamănă cu metoda de lucru cu procesele din Apache 1.3.x. Procesul principal creează conexiuni suplimentare pentru fiecare client care încearcă să se conecteze la PostgreSQL.Înregistrarea avansată a modificărilor. Write Ahead Logging (WAL) îmbunătățește fiabilitatea datelor. Toate modificările datelor sunt înregistrate înainte de a fi actualizate direct în baza de date. Având un jurnal de modificări se asigură că, în cazul improbabil al unei eșecuri a bazei de date, datele pot fi restaurate din tranzacțiile înregistrate. După ce sistemul este restaurat, utilizatorul continuă să lucreze din starea imediat anterioară eșecului.

MySQL -unul dintre cele mai faimoase DBMS gratuite. MySQL este proprietatea Oracle Corporation, care l-a achiziționat împreună cu Sun Microsystems achiziționat, care dezvoltă și susține aplicația. Distribuit sub licența publică generală GNU și propria licență comercială, dacă doriți. În plus, dezvoltatorii creează funcționalități la cererea utilizatorilor licențiați, datorită acestei comenzi, mecanismul de replicare a apărut în aproape cele mai vechi versiuni., cu toate acestea, distribuția include o bibliotecă de backend care permite ca MySQL să fie inclus în programele independente.

Flexibilitatea SGBD-ului MySQL este asigurată de suportul pentru un număr mare de tipuri de tabele: utilizatorii pot alege atât tabele MyISAM care acceptă căutarea full-text, cât și tabele InnoDB care acceptă tranzacții la nivel de înregistrare individuală. Mai mult, SGBD-ul MySQL vine cu un tip special de tabel EXEMPLU care demonstrează principiile creării de noi tipuri de tabele. Datorită arhitecturii deschise și licențelor GPL, noi tipuri de tabele apar în mod constant în SGBD-ul MySQL.

La 27 ianuarie 2010, Oracle Corporation a achiziționat Sun Microsystems și a inclus MySQL în linia sa de sisteme de gestionare a bazelor de date.

Comunitatea de dezvoltatori MySQL a creat diverse fork-uri de cod, cum ar fi Drizzle, OurDelta, Percona Server și MariaDB. Toate aceste ramuri existau deja la momentul absorbției Sun și MySQL AB de către Oracle Corporation.

ApacheDerby-un SGBD relational scris in Java, conceput pentru incorporarea in aplicatii Java sau procesarea tranzactiilor in timp real. Ocupă 2 MB de spațiu pe disc Apache Derby este dezvoltat ca sursă deschisă și distribuit în conformitate cu termenii licenței Apache 2.0. Derby a fost cunoscut anterior ca IBM Cloudscape Sun distribuie la fel fișiere binare sub numele Java DB.

Baza tehnologiei bazei de date Derby este un motor de baze de date relaționale complet funcțional JDBC și SQL sunt API-urile disponibile pentru acesta. Sintaxa SQL similară cu IBM DB2 este suportată.

Serverul de rețea Derby adaugă capabilități client-server la capacitățile nucleului DBMS. Serverul de rețea permite clienților să se conecteze prin TCP/IP utilizând protocolul standard DRDA. Serverul de rețea permite suport de rețea Derby pentru JDBC, ODBC/CLI, Perl și PHP.

Baza de date încorporată poate fi, de asemenea, configurată să funcționeze ca un RDBMS integrat în server hibrid; acceptând conexiuni TCP/IP de la alți clienți în plus față de clienții de pe același JVM.

În ceea ce privește viteza de execuție, Derby nu a apărut rezultate buneîn comparație cu alte baze de date SQL încorporate, cum ar fi cealaltă bază de date deschisă și gratuită H2.

Toată activitatea vieții umane este indisolubil legată de multe cataloage informativeși baze de date. Registrul bibliotecii, Caiet, adrese de pe un telefon mobil sau tabletă - aceasta nu este o listă completă de informații structurate pe care le folosim. Dar computerele iubesc precizia, așa că haideți să dăm o definiție.

Asa de, baza de date (DB)- un set de date interconectate logic care descrie starea informatiei obiecte din diverse domenii și prelucrate prin tehnologia computerizată.

Sistemul de gestionare a bazelor de date este un mediu software și limbaj pentru crearea, gestionarea și procesarea baze de informare. Scopul SGBD:

  • lucrul cu baze de date pe externe (discuri, benzi, etc.) și RAM;
  • partajarea utilizatorilor;
  • controlul modificărilor, arhivarea și restaurarea bazelor de date;
  • furnizarea unui limbaj de acces pentru ;
  • utilitati pentru crearea, modificarea si administrarea bazelor de date.

Pentru a spune simplu, baza de date determină tehnica de stocare a informațiilor, iar SGBD-ul oferă mijloace pentru prelucrarea acestuia. În plus, sistemele de gestionare a bazelor de date sunt împărțite în sisteme uz general, care poate prelucra diverse date și de specialitate, dezvoltat pentru un anumit domeniu sau tip de informații. Exemplu sisteme specializate gestionarea bazelor de date sunt orientate pe obiecte.

Sisteme de management relațional

De la apariția bazelor de date computerizate au fost create multe modele de funcționare a acestora, dar model relațional s-a dovedit a fi cel mai universal. Ea reprezintă set legat tabelele de informații, garantează integritatea și redundanța minimă a informațiilor. Model tabelar s-a dovedit a fi aplicabil majorităţii domeniile subiectului, iar piața sistemelor de gestionare a bazelor de date relaționale a început să se dezvolte rapid. Figura prezintă un exemplu de structură relațională „Bază de date pentru studenți”.

Toate SGBD-urile relaționale acceptă standardul ANSI Limbajul SQLȘi principii de baza model relațional, care asigură funcționarea aplicațiilor pe diferite SGBD. În plus, SGBD-urile mari au propriile extensii SQL. Exemple de sisteme de management pentru proiecte mari includ ORACLE.

Modelul relațional este folosit cu succes și în dezvoltarea proiectelor pe Internet. Exemple sunt MySQL și PostgreSQL DBMS.

Tehnologia NoSQL

Creșterea volumelor de informații și complexitatea relațiilor au dus la apariția unor noi sisteme de gestionare a bazelor de date. Informațiile nu mai sunt independente una de cealaltă și, uneori, este, în general, imposibil de descris strict structura acesteia. Baze de date relaționale nu mai poate face față unor astfel de sarcini. Acest lucru a condus la apariția unui nou tip de baze de date de informații și a sistemelor de management ale acestora, numite colectiv NoSQL („no SQL”).

  1. "Valoare cheie". Cele mai populare DBMS-uri sunt Redis, Voldemort, Tokyo Cabinet și Dynomite.
  2. Clonele DBMS BigTable. Proiectat de Google pentru uz intern V motor de căutare. BigTable nu este oferit oficial, dar există un DBMS bazat pe acesta. Acestea sunt Hadoop, Hypertable și Cassandra.
  3. Orientat pe documente. Cele mai populare sunt Berkeley DB XML, MongoD, eXist și CouchDB.
  4. Bazate pe baze Folosit în Neo4j, Sones graphDB și AllegroGraph.

Viitorul DBMS

Piața continuă să se dezvolte și este din ce în ce mai înclinată spre utilizarea soluțiilor NoSQL. Desigur, este implementat în SQL „clasic”. o cantitate mare sisteme software de complexitate diferită și este susținută de giganți ai pieței precum Microsoft și ORACLE. Dar cu un grad ridicat de încredere putem presupune că NoSQL în următorii ani va fi capabil să înlocuiască semnificativ liderii în dezvoltarea sistemelor informatice complexe.

Cele mai bune articole pe această temă