1 čo je subd. Databázy a subdatabázy

Každý majiteľ webu vie, že na správne fungovanie webu potrebujete nielen súbory s kódom stránky, ale aj databázy. Na interakciu s databázami sa používajú systémy správy databáz (DBMS). V tomto článku chcem hovoriť o databázach a DBMS, aké typy existujú a ako sa navzájom líšia.

Databáza

Databáza je špecifický súbor údajov, ktoré sú spravidla spojené jednotiacim znakom alebo vlastnosťou (alebo viacerými). Tieto údaje sú usporiadané napríklad abecedne. Množstvo rôznych údajov, ktoré možno umiestniť do jednej databázy, vedie k mnohým variáciám v tom, čo je možné zaznamenať: osobné údaje používateľa, záznamy, dátumy, objednávky atď. Napríklad, ak máte internetový obchod, potom vaša databáza webových stránok môže obsahovať cenníky, katalóg tovarov alebo služieb, prehľady, štatistiky a informácie o zákazníkoch.

V prvom rade je to výhodné, pretože informácie je možné rýchlo vložiť do databázy a rovnako rýchlo ich v prípade potreby získať. Ak na úsvite vývoja vývoja webu museli byť všetky potrebné údaje napísané v kóde stránky, teraz to nie je potrebné - potrebné informácie možno dopytovať z databázy pomocou skriptov. Špeciálne algoritmy na ukladanie a získavanie informácií, ktoré sa používajú v databázach, umožňujú nájsť potrebné informácie doslova za zlomok sekúnd – a pri práci vo virtuálnom priestore je rýchlosť zdroja dôležitejšia ako čokoľvek iné.

Vzťah informácií v databáze je tiež dôležitý: zmena jedného riadku môže viesť k významným zmenám v iných riadkoch. Práca s dátami je týmto spôsobom oveľa jednoduchšia a rýchlejšia, ako keby sa zmeny týkali len jedného miesta v databáze.

To však neznamená, že každá stránka musí mať databázu – ak máte napríklad stránku s vizitkami, tak nie nové informácie Ak to nezverejníte na webe, potom databázu jednoducho nebudete potrebovať. Najjednoduchší spôsob, ako vytvoriť jednoduchú webovú stránku, je vytvoriť .

Systém správy databáz

Ako už z názvu môžete uhádnuť, systém správy databáz (alebo skrátene DBMS) je softvér, ktorý sa používa na vytváranie a prácu s databázami. Hlavná funkcia DBMS je správa údajov (ktorá môže byť externá aj interná Náhodný vstup do pamäťe). DBMS nevyhnutne podporuje databázové jazyky a je tiež zodpovedný za kopírovanie a obnovu údajov po akýchkoľvek zlyhaniach.

Pokiaľ ide o klasifikáciu databáz, sú možné rôzne možnosti.
Napríklad môžete rozdeliť databázy podľa dátové modely: hierarchické (majú stromovú štruktúru), sieťové (podobné štruktúre ako hierarchické), relačné (používajú sa na správu relačných databáz), objektovo orientované (používajú sa na objektový model dáta) a objektovo-relačné (nejaké spájanie relačných a objektovo orientovaných typov databáz).

Alebo, ak je rozdelenie založené na kde sa nachádza DBMS?, možno ich rozdeliť na lokálne - celý DBMS je umiestnený na jednom počítači a distribuované - časti systému správy databáz sú umiestnené na viacerých počítačoch.

Súborový server, klient-server a embedded – to sú názvy, ktoré nesú DBMS, ak ich delíme spôsob prístupu k databázam. Súborový server DBMS je zapnutý tento moment sú už považované za zastarané; V zásade sa používajú systémy klient-server (DBMS, ktoré sú umiestnené na serveri spolu so samotnou databázou) a vstavané systémy (ktoré nevyžadujú samostatná inštalácia) systémy.

Informácie, ktoré sú uložené v databázach sa neobmedzujú len na text resp grafické súbory- moderné verzie DBMS podporujú aj formáty audio a video súborov.

V tomto článku sa zameriam na DBMS, ktoré sa používajú na ukladanie informácií z rôznych webových zdrojov.

Prečo sú tieto DBMS potrebné? Okrem svojej hlavnej funkcie – ukladanie a systematizácia obrovského množstva informácií – vám umožňujú rýchlo spracovávať požiadavky klientov a poskytovať čerstvé a relevantné informácie.

Platí to aj pre zmeny, ktoré vykonáte – namiesto zmeny informácií v každom súbore na stránke ich môžete zmeniť v databáze a potom sa na každej stránke okamžite zobrazia správne informácie.

Relačný DBMS a jazyk SQL

Relačné a objektovo-relačné DBMS patria medzi najbežnejšie systémy. Sú to tabuľky, v ktorých je každý stĺpec (nazývaný „pole“) usporiadaný a má špecifický jedinečný názov. Poradie riadkov (nazývajú sa „záznamy“ alebo „záznamy“) je určené poradím, v ktorom sa informácie zadávajú do tabuľky. V tomto prípade môže nastať spracovanie stĺpcov a riadkov v akomkoľvek poradí. Tabuľky s údajmi sú vzájomne prepojené zvláštny vzťah, vďaka čomu môžete pracovať s dátami z rôznych tabuliek – napríklad ich kombinovať – pomocou jedného dotazu.

Na správu relačných databáz sa používa špeciálny programovací jazyk – SQL. Skratka znamená „Structured query language“, preložená do ruštiny ako „štruktúrovaný dopytovací jazyk“.

Príkazy, ktoré sa používajú v SQL, sú rozdelené na tie, ktoré manipulujú s údajmi, tie, ktoré definujú údaje, a tie, ktoré manipulujú s údajmi.

Schéma práce s databázou vyzerá takto:


MySQL

MySQL je jedným z najpopulárnejších a najrozšírenejších DBMS, ktorý sa používa v mnohých spoločnostiach (napríklad Facebook, Wikipedia, Twitter, LinkedIn, Alibaba a iné). MySQL je relačný DBMS, ktorý je slobodným softvérom: je distribuovaný za podmienok verejnej licencie GNU. Typicky je tento databázový systém definovaný ako dobrý, rýchly a flexibilný systém odporúčaný na použitie v malých alebo stredne veľkých projektoch. MySQL má mnoho rôznych výhod. Napríklad podporuje Rôzne druhy tabuľky: ako známe MyISAM a InnoDB, tak exotickejšie HEAP a MERGE; navyše počet podporovaných typov neustále rastie. MySQL vykonáva všetky príkazy rýchlo – možno je to teraz najrýchlejší existujúci DBMS. S týmto systémom správy databáz môže súčasne pracovať neobmedzený počet používateľov a počet riadkov v tabuľkách sa môže rovnať 50 miliónom.

Keďže v porovnaní s niektorými inými DBMS MySQL podporuje menej funkcií, je s ním oveľa jednoduchšie pracovať ako napríklad s PostgreSQL, o ktorom bude reč nižšie.

Prvá verzia MySQL bola vydaná už v roku 1995 a odvtedy došlo k niekoľkým následným vydaniam, z ktorých každá priniesla významné zmeny.

Na prácu s MySQL sa používa nielen textový, ale aj grafický režim. Je to možné vďaka aplikácii phpMyAdmin: na prácu v aplikácii nepotrebujete ani poznať SQL príkazy a svoju databázu môžete spravovať priamo cez prehliadač.

Vo všeobecnosti možno poznamenať, že MySQL je voľbou pre tých, ktorí potrebujú DBMS pre malý alebo stredne veľký projekt, rýchly a jednoduchý na používanie a bez problémov s administráciou.


PostgreSQL

Tento voľne distribuovaný systém správy databáz patrí k objektovo-relačnému typu DBMS. Rovnako ako v prípade MySQL, aj PostgreSQL je založený na jazyku SQL, avšak na rozdiel od MySQL podporuje PostgreSQL štandard SQL-2011. Tento DBMS nemá žiadne obmedzenia na maximálnu veľkosť databázy, ani na maximálny počet záznamov alebo indexov v tabuľke.

Ak hovoríme o výhodách PostgreSQL, tak sú to samozrejme spoľahlivosť transakcií a replikácií, možnosť dedenia a ľahká rozšíriteľnosť. PostgreSQL podporuje rôzne rozšírenia a varianty programovacích jazykov ako PL/Perl, PL/Python a PL/Java. Je tiež možné načítať moduly kompatibilné s C.

Mnohí poznamenávajú, že na rozdiel MySQL dané DBMS má dobrú a podrobnú dokumentáciu, ktorá poskytuje odpovede na takmer všetky otázky.

O tom, že ide o väčší DBMS ako MySQL, nasvedčuje aj fakt, že PostgreSQL je periodicky porovnávaný s tak výkonným systémom správy dát, akým je Oracle.

To všetko nám umožňuje hovoriť o PostgreSQL ako o jednom z najpokročilejších DBMS v súčasnosti.


SQLite

V súčasnosti je to jeden z najkompaktnejších DBMS; je tiež vložený a vzťahový. SQLite umožňuje ukladať všetky dáta do jedného súboru a vďaka svojej malej veľkosti sa vyznačuje závideniahodným výkonom. SQLite sa výrazne líši od MySQL a PostgreSQL vo svojej štruktúre: engine a rozhranie tohto DBMS sú v rovnakej knižnici - a to vám umožňuje vykonávať všetky dotazy veľmi rýchlo. Iné DBMS (MySQL, PostgreSQL, Oracle atď.) používajú paradigmu klient-server, keď k interakcii dochádza prostredníctvom sieťového protokolu.

Medzi nevýhody patrí chýbajúci používateľský systém a možnosť zvýšenia produktivity.

SQLite možno odporučiť na použitie v projektoch, kde potrebujete vedieť rýchlo migrovať aplikáciu a nie je potrebná škálovateľnosť.


Oracle

Tento DBMS je objektovo-relačného typu. Názov pochádza z názvu spoločnosti, ktorá vyvinula tento systém, Oracle. Spolu s SQL používa DBMS procedurálne rozšírenie s názvom PL/SQL, ako aj jazyk Java.

Oracle je systém, ktorý je stabilný už desaťročia, preto si ho vyberajú veľké korporácie, pre ktoré je dôležitá spoľahlivosť obnovy po zlyhaniach, zjednodušený postup zálohovania, možnosť škálovania a ďalšie cenné funkcie. Okrem toho tento DBMS poskytuje vynikajúce zabezpečenie a efektívnu ochranu údajov.

Na rozdiel od iných DBMS sú náklady na nákup a používanie Oracle pomerne vysoké, čo je často značnou prekážkou jeho použitia v malých spoločnostiach. To je zrejme aj dôvod, prečo je Oracle v rebríčku DBMS za rok 2016 v Rusku až na 6. mieste.



MongoDB

Tento DBMS je odlišný v tom, že je určený na ukladanie hierarchických dátových štruktúr, a preto sa nazýva dokumentovo orientovaný (ide o ukladanie dokumentov bez použitia tabuliek alebo schém). MongoDB je open source.

Pomocou identifikátora môžete vykonávať rýchle operácie s objektom; Tento DBMS tiež funguje dobre v zložitých interakciách. Po prvé hovoríme o o výkone – v niektorých prípadoch aplikácia napísaná v MongoDB pobeží rýchlejšie ako tá istá aplikácia využívajúca SQL, pretože MongoDB patrí do triedy NoSQL DBMS a namiesto SQL používa objektový dotazovací jazyk, ktorý je oveľa ľahší ako SQL.

Aj tento jazyk má však svoje obmedzenia, a preto by sa MongoDB malo používať v prípadoch, keď nie sú potrebné zložité a netriviálne výbery.

Namiesto záveru

Výber DBMS je dôležitý bod pri vytváraní vášho zdroja. Začnite od svojich úloh a schopností, skúšajte a experimentujte, aby ste našli presne tú možnosť, ktorá bude najvhodnejšia.

Databáza definícií (DB) je pomenovaná zbierka údajov, ktorá odráža stav objektov a ich vzťahy v predmetnej oblasti. Systém správy databáz (DBMS) je súbor jazykových a softvér, určený na vytváranie, údržbu a zdieľanie databáz medzi mnohými používateľmi. Použitie DBMS vám umožňuje vytvárať programy nezávislé od metód implementácie ukladania údajov na externé médiá. Na prácu s databázou musí DBMS poskytovať: možnosť používať prostriedky na prístup a manipuláciu s údajmi databázy; práca s veľkým množstvom údajov; rýchlosť získavania údajov; logická integrita údajov (ich konzistencia); spoľahlivosť ukladania údajov (možnosť obnovy v dôsledku rôznych porúch); možnosť autorizácie a diferenciácie užívateľských právomocí (ochrana pred neoprávneným prístupom). 2


Hlavné funkcie DBMS 1. Priama správa dát v externá pamäť Táto funkcia zahŕňa poskytovanie potrebných externých pamäťových štruktúr na ukladanie údajov priamo zahrnutých v databáze, ako aj na servisné účely, napríklad na zrýchlenie prístupu k údajom v niektorých prípadoch (zvyčajne sa na to používajú indexy). že vo vyvinutých DBMS sa od používateľov v žiadnom prípade nevyžaduje, aby vedeli, či DBMS používa systém súborov a ak sa používa, ako sú súbory usporiadané. 2. Správa vyrovnávacej pamäte RAM Pokročilé systémy DBMS podporujú vlastnú sadu vyrovnávacích pamätí RAM s vlastnou disciplínou nahrádzania vyrovnávacej pamäte. 3. Riadenie transakcií Transakcia je postupnosť operácií v databáze, ktorú DBMS považuje za jeden celok. Buď sa transakcia úspešne dokončí a DBMS potvrdí (COMMIT) zmeny databázy vykonané touto transakciou do externej pamäte, alebo žiadna z týchto zmien nemá žiadny vplyv na stav databázy. Koncept transakcie je nevyhnutný na zachovanie logickej integrity databázy. Udržiavanie transakčného mechanizmu je predpokladom aj jednoužívateľské DBMS (ak si, samozrejme, takýto systém zaslúži názov DBMS). Koncept transakcie je však oveľa dôležitejší vo viacužívateľských DBMS. 3


Hlavné funkcie DBMS 4. Žurnálovanie Protokol je špeciálna časť databázy, neprístupná používateľom DBMS a udržiavaná s osobitnou starostlivosťou (niekedy sú udržiavané dve kópie protokolu umiestnené na rôznych fyzické disky), ktorý prijíma záznamy o všetkých zmenách v hlavnej časti databázy. V rôznych DBMS sa zmeny databázy zaznamenávajú na rôznych úrovniach: niekedy záznam protokolu zodpovedá nejakej logickej operácii zmeny databázy, niekedy minimálnej internej operácii modifikácie stránky externej pamäte; niektoré systémy využívajú oba prístupy súčasne. 5. Podpora databázových jazykov Jazyk definície databázovej schémy (SDL - Schema Definition Language) jazyk pre manipuláciu s údajmi (DML - Data Manipulation Language) Jazyk SQL (Structured Query Language): umožňuje definovať schému relačnej databázy a manipulovať s údajmi (implementuje SDL a DML) obsahuje špeciálne prostriedky na určenie obmedzení integrity databázy, autorizuje prístup k databázovým objektom 4


Komponenty jadra DBMS, ktoré je zodpovedné za správu údajov v externej a RAM pamäti, a protokolovanie, procesor databázového jazyka, ktorý optimalizuje požiadavky na získavanie a zmenu údajov a vytvára spravidla strojovo nezávislý spustiteľný interný kód, runtime podporný subsystém, ktorý interpretuje programy na manipuláciu s údajmi, ktoré vytvárajú používateľské rozhranie s DBMS, ako aj servisné programy (externé nástroje), ktoré poskytujú množstvo pridané vlastnosti na údržbu informačný systém. 5


Architektúra DBMS Trojúrovňový model systému správy databáz navrhnutý ANSI (American National Standards Institute) Táto architektúra umožňuje logickú (medzi úrovňou 1 a 2) a fyzickú (medzi úrovňou 2 a 3) nezávislosť pri práci s údajmi. Identifikácia koncepčnej úrovne umožnila vyvinúť centralizovaný databázový riadiaci aparát. Úroveň externého modelu Fyzická vrstva 6


Úroveň externých modelov je najvyššia špičková úroveň, kde má každý model svoju vlastnú „víziu“ údajov. Táto úroveň definuje uhol pohľadu na databázu jednotlivé aplikácie. Každá aplikácia vidí a spracováva iba údaje, ktoré potrebuje konkrétna aplikácia. Koncepčná úroveň je centrálnym riadiacim článkom, tu je databáza prezentovaná vo svojej najvšeobecnejšej podobe, ktorá združuje údaje používané všetkými aplikáciami, ktoré s touto databázou pracujú. V skutočnosti koncepčná úroveň odráža zovšeobecnený model predmetnej oblasti (objekty reálneho sveta), pre ktorý bola databáza vytvorená. Ako každý model, aj konceptuálny model odráža len podstatné, z hľadiska spracovania, vlastnosti objektov v reálnom svete. Fyzickou vrstvou sú samotné dáta, nachádzajúce sa v súboroch alebo v štruktúrach stránok umiestnených na externých pamäťových médiách. 7




Architektúra súborového servera 9


Súborový server DBMS Dátové súbory sú umiestnené centrálne na súborovom serveri. DBMS sa nachádza na každom klientskom počítači. DBMS pristupuje k dátam cez lokálnu sieť. Synchronizácia čítaní a aktualizácií sa vykonáva pomocou zámkov súborov. Výhodou tejto architektúry je nízke zaťaženie CPU servera. Nevýhody: Potenciálne vysoká pracovná záťaž lokálna sieť; ťažkosti s centralizovaným riadením; ťažkosti pri poskytovaní takých dôležitých charakteristík ako vysoká spoľahlivosť, dostupnosť a bezpečnosť. Najčastejšie sa používajú v lokálnych aplikáciách, ktoré využívajú funkcie správy databáz. Príklady: Microsoft Access, Paradox, dBase, FoxPro, Visual FoxPro Microsoft AccessParadoxdBaseFoxProVisual FoxPro 10


Architektúra klient-server 11


Klient-server DBMS Klient-server DBMS sa nachádza na serveri spolu s databázou a poskytuje prístup k databáze priamo, vo výhradnom režime. Všetky požiadavky klientov na spracovanie údajov spracováva centrálne DBMS klient-server. Nevýhodou klient-server DBMS sú zvýšené nároky na server. Výhody: potenciálne nižšie zaťaženie lokálnej siete; pohodlie centralizovaného riadenia; pohodlie poskytovania takých dôležitých vlastností, ako je vysoká spoľahlivosť, vysoká dostupnosť a vysoká bezpečnosť. Príklady: Oracle, Firebird, Interbase, IBM DB2, MS SQL Server, Sybase Adaptive Server Enterprise, PostgreSQL, MySQL, Caché, LINTER.OracleFirebirdInterbaseIBM DB2MS SQL ServerSybase Adaptive Server EnterprisePostgreSQLMySQLCachéLINTER 12


Vstavaný DBMS Môže byť dodaný ako komponent niektoré softvérový produkt, bez potreby samoinštalačného postupu. Navrhnuté na lokálne ukladanie údajov aplikácie a nie na zdieľanie v sieti. Fyzicky sa najčastejšie realizuje vo forme zásuvnej knižnice. Prístup k údajom zo strany aplikácie môže prebiehať cez SQL alebo cez špeciálne programové rozhrania. Príklady: OpenEdge, SQLite, BerkeleyDB, Firebird Embedded, MySQL, Sav Zigzag, Microsoft SQL Server Compact, LINTER.OpenEdgeSQLiteBerkeleyDBFirebird EmbeddedMySQLSav Zigzag Microsoft SQL Server CompactLINTER 13


Oddelenie funkcií medzi serverom a klientom Funkcie klientskej aplikácie: Odosielanie požiadaviek na server. Interpretácia výsledkov dotazov prijatých zo servera. Prezentácia výsledkov používateľovi v určitej forme (používateľské rozhranie). Funkcie serverovej časti: Prijímanie požiadaviek z klientskych aplikácií. Výklad požiadaviek. Optimalizácia a vykonávanie databázových dotazov. Odosielanie výsledkov do klientskej aplikácie. Zabezpečenie bezpečnostného systému a kontroly vstupu. Riadenie integrity databázy. Implementácia stability prevádzkového režimu pre viacerých používateľov. 14


Moderné lokálne DBMS sa používajú na relatívne malé úlohy (malý objem spracovávaných údajov, malý počet používateľov), majú relatívne zjednodušenú architektúru, najmä pracujú v režime súborového servera, nepodporujú všetky možné funkcie DBMS (napr. protokol transakcií nie je udržiavaný, neexistuje žiadna možnosť automatické obnovenie databázy po poruchách a pod.) dBase III – PLUS, Clipper (Nantucket Inc.), FoxPro (Fox Software), FoxBase+ (Fox Software), Visual FoxPro (Microsoft), PARADOX (Borland International) Microsoft Access (spoločnosť Microsoft). 15




Správa databázy Správa databázy je funkciou správy databázy. Osoba zodpovedná za správu databázy sa nazýva správca databázy (DBA). Správca databázy (DBA) alebo správca databázy (DBA) je osoba zodpovedná za vývoj požiadaviek na databázu, jej návrh, implementáciu, efektívne používanie a údržbu vrátane správy účtov užívateľov databázy a ochranu pred neoprávneným prístupom, ako aj zachovanie integrity databázy. 17


Úlohy správcu databázy 1. Návrh databázy. 2. Optimalizácia výkonu databázy. 3. Poskytovanie a kontrola prístupu do databázy. 4. Zabezpečenie bezpečnosti v databáze. 5. Zálohovanie a obnova databázy. 6. Zabezpečenie integrity databázy. 7. Zabezpečenie prechodu na Nová verzia DBMS. 18


Špecializácie správcu databázy 1. Systémový administrátor. 2. Architekt databázy. 3. Databázový analytik. 4. Vývojár dátového modelu. 5. Správca aplikácie. 6. Problémovo orientovaný správca databázy. 7. Analytik výkonnosti. 8. Správca dátového skladu. 19

Súbor DBMS- jeden zo systémov správy databáz, ktorý platforma podporuje. Súbor DBMS bol vyvinutý spoločnosťou 1C a je súčasťou platformy.

Súborový DBMS ukladá všetky údaje do jedného súboru - databázy súborov. Tento formát ukladania údajov vyvinula spoločnosť 1C špeciálne pre aplikačné riešenia 1C:Enterprise 8.

Pri vytváraní platformy bolo potrebné vytvoriť efektívny formát na jej základe ľahká možnosť 1C: Enterprise 8 pre osobné použitie a malé pracovné skupiny. Formát musel spĺňať určité požiadavky, ako je efektivita, podpora UNICODE, schopnosť vyhovieť všetkým informačnú základňu v jednom súbore. Použitie tejto možnosti by nemalo vyžadovať inštaláciu ďalšieho softvér od používateľa a akékoľvek administratívne úkony.

Malo byť možné napríklad jednoducho preniesť informačnú základňu do notebooku resp rýchle nasadenie vzdialené pracovisko v sklade. V čom aplikačné riešenie mal fungovať bez akýchkoľvek zmien v tejto verzii aj vo verzii využívajúcej databázový server.

Na základe výsledkov výskumu produktov tretích strán a ich analýzy bolo rozhodnuté vytvoriť vlastný databázový stroj, ktorý podporuje vlastný formát úložiska.

Technická implementácia práce so súborovou databázou

Súbor DBMS je súčasťou platformy, preto keď systém pracuje v súborovej verzii, všetku prácu s dátami vykonávajú hrubí a tenký klienti samostatne.

4. SYSTÉMY RIADENIA DATABÁZ 1

4.1.Klasifikácia DBMS 1

4.2.Coddove pravidlá pre relačný DBMS (RSDBMS) 2

4.3.Hlavné funkcie relačnej DBMS 4

4.4.Správa databázy 5

4.5 Slovník údajov 6

Systém správy databáz (DBMS) je kritickým komponentom databázového AIS. DBMS je potrebný na vytváranie a udržiavanie databázy informačného systému v rovnakom rozsahu ako na vývoj programu v algoritmickom jazyku – prekladači. Softvérové ​​komponenty DBMS zahŕňajú jadro a servisné nástroje (utility).

DBMS jadro je súbor softvérových modulov potrebných a postačujúcich na vytvorenie a údržbu databázy, teda univerzálnej časti, ktorá rieši štandardné úlohy pri poskytovaní informačných služieb používateľom. Servisné programy poskytnúť používateľom množstvo ďalších možností a služieb v závislosti od opísanej tematickej oblasti a potrieb konkrétneho používateľa.

Systém správy databázy nazývaný softvérový systém určený na vytvorenie na počítači spoločná základňaúdaje pre viaceré aplikácie, ich udržiavanie v aktuálnom stave a zabezpečenie efektívneho prístupu používateľov k údajom, ktoré obsahuje, v rámci svojich povolení.

Zásadne dôležitou vlastnosťou DBMS je to, že vám umožňuje rozlíšiť a podporovať dva nezávislé pohľady na databázu: používateľský „pohľad“, stelesnený v „logickej“ reprezentácii údajov, a „pohľad“ systému – „fyzický“. ” reprezentácia (organizácia uložených údajov).

Na inicializáciu databázy vývojár využíva prostriedky špecifického DBMS na popis logickej štruktúry databázy, jej organizácie v prostredí úložiska a používateľských pohľadov na dáta (resp. konceptuálnej schémy databázy, schémy úložiska resp. vonkajšie obvody). Spracovaním týchto schém DBMS vytvára prázdnu databázu požadovanej štruktúry a poskytuje nástroje na jej naplnenie doménovými dátami a ďalšiu prevádzku.

    1. Klasifikácia DBMS

Na základe stupňa univerzálnosti sú DBMS rozdelené do dvoch tried: DBMS všeobecný účel(DBMS ON) a špecializovaný DBMS (SpDBMS).

ON DBMS nie sú zamerané na žiadnu tematickú oblasť alebo špecifické informačné potreby používateľov. Každý systém tohto druhu je univerzálny a implementuje funkčne redundantný súbor operácií s dátami. ON DBMS obsahuje nástroje nastavenia pre konkrétnu oblasť, prevádzkové podmienky a požiadavky používateľov. Výroba týchto systémov je na širokej komerčnej báze.

Špecializované DBMS sa vytvárajú v prípadoch, keď žiadny z existujúcich všeobecných DBMS nedokáže uspokojivo vyriešiť problémy, ktorým čelia vývojári. Dôvodov môže byť niekoľko:


  • nedosahuje sa požadovaná rýchlosť spracovania údajov;

  • je potrebné prevádzkovať DBMS v podmienkach závažných hardvérových obmedzení;

  • vyžaduje sa podpora špecifických funkcií spracovania údajov.
SPDBMS sú navrhnuté tak, aby riešili konkrétny problém a prijateľné parametre pre toto riešenie sa dosahujú nasledovne:

  1. v dôsledku znalosti charakteristík konkrétnej oblasti,

  2. znížením funkčnej úplnosti systému.
Vytvorenie SpDBMS je veľmi náročná úloha, takže na to, aby ste si vybrali túto cestu, musíte mať naozaj dobré dôvody. V nasledujúcom texte sa budú brať do úvahy iba DBMS na všeobecné účely.

Na základe metód organizácie ukladania a spracovania údajov sa DBMS delia na centralizované A distribuované. Prvé pracujú s databázou, ktorá je fyzicky uložená na jednom mieste (na jednom počítači). To neznamená, že používateľ môže pracovať s databázou iba na tom istom počítači: prístup môže byť vzdialený (v režime klient-server). Väčšina centralizovaných DBMS deleguje úlohu na organizáciu vzdialený prístup k údajom o sieťovej podpore, pričom vykonáva iba vašu štandardné funkcie, ktoré sa stávajú komplikovanejšími v dôsledku súčasného prístupu mnohých používateľov k údajom.

Podľa dátového modelu existujú hierarchické,siete,vzťahový, objektovo-relačné A objektovo orientovaný DBMS.

Pre relačné DBMS E.F. Codd navrhol a odôvodnil 12 pravidiel, ktoré musí spĺňať DBMS relačných údajov (RDBMS).

    1. Coddove pravidlá pre systém správy relačných databáz (RDBMS)


  1. Explicitná prezentácia údajov (informačné pravidlo). Informácie musia byť prezentované ako údaje, uložené v bunkách. Dáta uložené v bunkách musia byť atómové. Poradie riadkov v relačnej tabuľke by nemalo ovplyvniť význam údajov.

  2. Pravidlo zaručeného prístupu. Každý dátový prvok musí byť zaručený, že bude dostupný pomocou kombinácie názvu tabuľky, primárneho kľúča riadka a názvu stĺpca.

  3. Systematické zaobchádzanie s nulovými hodnotami. Neznáme hodnoty NULL, odlišné od akejkoľvek známej hodnoty, musia byť podporované pre všetky typy údajov vo všetkých operáciách. Napríklad neznáme hodnoty by sa nemali považovať za nuly pre číselné údaje, ale neznáme hodnoty by sa nemali považovať za nuly pre znakové údaje. prázdne riadky.

  4. Dynamický on-line katalóg na základe relačného modelu. Katalóg (resp odkaz na slovník) údaje musia byť uložené vo forme relačných tabuliek a RDBMS musí podporovať prístup k nim pomocou štandardných jazykových nástrojov, rovnakých, aké sa používajú na prácu s relačnými tabuľkami obsahujúcimi používateľské údaje.

  5. Úplnosť jazykovej podmnožiny (Comprehensive Data Sublanguage Rule). RDBMS musí podporovať jeden jazyk, ktorý vám umožní vykonávať všetky operácie s údajmi: definíciu údajov (DDL, Data Definition Language), manipuláciu s údajmi (DML, Data Manipulation Language), riadenie prístupu používateľov k údajom, správu transakcií.

  6. Podpora aktualizovaných zobrazení (pravidlo aktualizácie zobrazenia). Pohľad je uložený dotaz na databázové tabuľky. Aktualizovaný pohľad musí podporuje všetky operácie manipulácie s údajmi, ktoré podporujú relačné tabuľky: operácie vkladania, úpravy a vymazania údajov.

  7. Dostupnosť operácií správy údajov na vysokej úrovni (Vloženie na vysokej úrovni, Aktualizácia a Odstránenie). Operácie vkladania, úpravy a odstraňovania údajov musia byť podporované nielen vo vzťahu k jednému riadku tabuľky, ale aj vo vzťahu k ľubovoľnej množine riadkov ľubovoľnej tabuľky.

  8. Fyzická nezávislosť údajov. Aplikácie by nemali závisieť od metód používaných na ukladanie údajov na médiá hardvér počítač, na ktorom je databáza umiestnená. RDBMS by mal umožňovať určitú voľnosť pri úprave spôsobu, akým je databáza organizovaná v úložnom prostredí bez toho, aby sa vyžadovali zmeny v logickej reprezentácii údajov. To vám umožňuje optimalizovať prostredie ukladania údajov, aby ste zlepšili efektivitu systému bez ovplyvnenia vytvorených aplikačných programov, ktoré pracujú s databázou.

  9. Logická nezávislosť dát. Táto vlastnosť vám umožňuje zostaviť niekoľko rôznych logických pohľadov (reprezentácií) rovnakých údajov pre rôzne skupiny používateľov. V tomto prípade sa môže užívateľská prezentácia dát značne líšiť nielen od fyzickej štruktúry ich úložiska, ale aj od koncepčnej (logickej) dátovej schémy. Môže sa syntetizovať dynamicky na základe uložených databázových objektov počas spracovania dotazu.

  10. Integrita Nezávislosť. Všetky informácie potrebné na zachovanie integrity musia byť obsiahnuté v dátovom slovníku. Dátový jazyk musí overiť vstupné údaje a automaticky udržiavať integritu údajov. Toto je implementované pomocou obmedzení integrity a transakčného mechanizmu.

  11. Nezávislosť distribúcie. Databáza môže byť distribuovaná (môže byť umiestnená na viacerých počítačoch), čo by nemalo mať vplyv na aplikácie. Presun databázy na iný počítač by nemal mať žiadny vplyv na aplikácie.

  12. Koordinácia jazykových úrovní (pravidlo non-subversion). Nemali by existovať žiadne prostriedky na prístup k údajom okrem štandardného jazyka na prácu s údajmi. Ak sa používa nízkoúrovňový jazyk prístupu k údajom, nemalo by to tak byť ignorovať pravidlá bezpečnosti a integrity, ktoré sú podporované jazykom vyššej úrovne.
    1. Hlavné funkcie relačného DBMS

Hlavné funkcie relačného DBMS sú určené Coddovými pravidlami. Potreby používateľov však určujú aj nasledujúce funkcie:

  1. Podpora režimu prístupu pre viacerých používateľov.
Databáza je vytvorená na riešenie mnohých problémov mnohými používateľmi. To znamená, že mnohí používatelia môžu pristupovať k údajom súčasne. Údaje v databáze sú zdieľaným zdrojom a RDBMS k nim musí poskytovať riadenie prístupu.

  1. Zabezpečenie fyzickej integrity údajov.
Problém zabezpečenia fyzickej integrity údajov je spôsobený možnosťou zničenia údajov v dôsledku porúch a porúch v prevádzke počítačového systému alebo v dôsledku chýb používateľa. Pokročilé RDBMS vám vo väčšine prípadov umožňujú obnoviť stratené dáta. Obnova dát je najčastejšie založená na periodickom vytváraní záložné kópie DB a udržiavanie denníka zmien (záznam transakcií).

  1. Riadenie prístupu.
Pre systémy s viacerými používateľmi je dôležitý problém ochrany údajov pred neoprávneným prístupom. Každý používateľ tohto systému má podľa svojej úrovne (priority) prístup buď k celému súboru údajov, alebo len k jeho časti. Kontrola prístupu zahŕňa aj udeľovanie práv na vykonávanie jednotlivých operácií so vzťahmi alebo inými databázovými objektmi.

  1. Nastavenie RDBMS.
Konfiguráciu RDBMS zvyčajne vykonáva správca databázy, ktorý je zodpovedný za fungovanie systému ako celku. Môže zahŕňať najmä tieto operácie:

  • pripojenie externých aplikácií k databáze;

  • úprava parametrov organizácie prostredia na ukladanie dát za účelom zvýšenia efektívnosti systému;

  • zmena štruktúry uložených údajov alebo ich umiestnenie v prostredí úložiska ( reorganizácia databázy) na zlepšenie výkonu systému alebo opätovné použitie voľnej pamäte;

  • úprava koncepčnej dátovej schémy ( reštrukturalizácia databázy), keď sa zmení predmet a/alebo potreby používateľa.
Úlohy databázového administrátora (DBA) sú dosť dôležité, preto by sa mali rozobrať trochu podrobnejšie.
    1. Správa databázy

Hlavnými úlohami správy databázy je zabezpečiť spoľahlivé a efektívne fungovanie databázového systému, primeranosť obsahu databázy informačným potrebám používateľov a zobrazenie v databáze. Aktuálny stav BY.

Za správu databázy je zodpovedný administrátor (alebo administratívny personál, ak je databázový systém veľký). Medzi úlohy správcu patrí vykonávanie niekoľkých skupín funkcií:


  1. Správa predmetu: podpora prezentácie databázy na koncepčnej úrovni architektúry DBMS (spoločná pre všetky aplikácie); adekvátne zobrazenie v databáze zmien vyskytujúcich sa v softvéri. Posledná požiadavka môže zahŕňať reštrukturalizáciu (zmenu schémy) databázy a následné zosúladenie obsahu databázy s novou schémou.

  2. Správa databázy: podpora prezentácie databázy v úložnom prostredí, efektívna a spoľahlivá prevádzka databázového systému. Ak sa reorganizácia databázy vykonáva na tejto úrovni (s cieľom zlepšiť prevádzkovú efektivitu), pozostáva z:

  • rozdelenie tabuľky na časti, aby sa distribuovala na rôzne fyzické médiá, aby sa k nej paralelizoval prístup;

  • budovanie zoskupení;

  • zmena fyzických parametrov úložného prostredia, ako je veľkosť bloku údajov v pamäťovom priestore.

  • zmeny v používaných metódach prístupu k údajom, napríklad vytváranie indexov alebo zavádzanie hashovania.

  1. Administrácia aplikácií: podpora databázových pohľadov pre rôzne skupiny užívateľov pomocou externých mechanizmov na úrovni DBMS. Ak zmeníte koncepčný návrh databázy alebo schémy úložného priestoru, možno budete musieť vykonať zodpovedajúce zmeny vo vašich aplikáciách.

  2. Administrácia bezpečnosti dát: udeľovanie užívateľských práv na prístup k databáze a konfiguráciu systémové nástroje ochrana pred neoprávneným prístupom.
DBMS zvyčajne obsahuje pomocné nástroje (rôzne pomocné programy), ktoré zjednodušujú správu databázy.
    1. Dátový slovník

Dátový slovník(SSD) je softvérový systém, určený na centralizované ukladanie a používanie popisov databázových objektov (metadát). Niekedy sa nazýva SSD katalóg údajov. Tento systém obsahuje informácie:

  • o vlastníkoch dátových objektov, užívateľoch dátových zdrojov a ich prístupových právach;

  • o zložení a štruktúre databázy;

  • o obmedzeniach integrity;

  • o pomocných objektoch a komponentoch informačného systému.
SDS zaisťuje konzistentnosť metadát, jeden uhol pohľadu databázy všetkých vývojových pracovníkov, administrátorov a používateľov systému. Metadáta v referenčnom slovníku relačnej DBMS sú zvyčajne organizované ako množina tabuliek a zobrazení.

DB slovník slúži na podporu fungovania softvérových komponentov - DBMS a aplikačných programov, ktoré pracujú s databázou. Slovník obsahuje informácie o organizácii databázy, jej zložení a štruktúre, popis údajov: prezentačné formáty, štruktúra, metódy prístupu, spôsoby ukladania údajov do pamäte atď. Informácie v slovníku sú prezentované vo forme vhodnej pre softvérové ​​použitie.

Databázový adresár obsahuje informácie o sémantike údajov, spôsoboch ich identifikácie, zdrojoch údajov a pod. Referenčná kniha je určená predovšetkým na dokumentáciu vývoja databázy a poskytovanie referenčných služieb jej používateľom. Informácie v adresári sú prezentované vo forme vhodnej pre ľudské vnímanie.

Súbory slovníkových a referenčných metadát sa do značnej miery prekrývajú. Okrem toho môžu byť implementované spoločne: v mnohých RDBMS sa slovník skladá z tabuliek obsahujúcich popis databázových objektov a referenčná kniha je implementovaná pomocou pohľadov na tabuľky slovníka.