DB2 | |
---|---|
Typ | Systém pro správu databází |
Vývojář | IBM |
Zapsáno v | C , C++ |
Operační systém | Multiplatformní software |
První vydání | 23. května 1995 |
Nejnovější verze | 11.5 |
Licence | Proprietární EULA |
webová stránka | ibm.com/analytics… ( angličtina) |
Mediální soubory na Wikimedia Commons |
DB2 je rodina systémů pro správu relačních databází vyráběná společností IBM . Nejčastěji, když se mluví o DB2, mají na mysli systém správy relačních databází DB2 Universal Database (DB2 UDB) [1] .
V roce 2000 je DB2 DBMS reprezentován verzemi na následujících platformách:
Devadesátá léta také viděla OS/2 , UnixWare , PTX verze serveru DB2 .
Klienti DB2 DBMS kromě uvedených platforem jsou nebo byli vydáni v různých verzích také pro SINIX , IRIX , klasický Mac OS a MS-DOS , dále mobilní verze DB2 Everyplace pro Windows CE , Palm OS , Symbian OS , Neutrino a virtuální stroj java .
Počínaje rokem 2000 distribuuje IBM kromě komerčních produktů této rodiny také bezplatnou distribuční sadu Db2 Community Edition , do poloviny roku 2019 s názvem DB2 Express-C [2] :
Omezení DB2 Express-CCelkový počet procesorů a paměti v operačním systému může být jakýkoliv, ale zdroje nad zadané limity nebudou DBMS využívány. To se děje automaticky, což znamená, že uživatel není povinen zajistit shodu s těmito požadavky.
Na počátku 70. let Edgar Codd , který pracoval pro IBM, vyvinul teorii relačních databází a v červnu 1970 publikoval model manipulace s daty . Pro implementaci tohoto modelu vyvinul jazyk relační databáze a pojmenoval jej Alpha . IBM se rozhodla zadávat další vývoj skupině programátorů mimo Coddův vliv. Porušili některé principy relačního modelu a implementovali jej jako „Structured English Query Language“, zkráceně SEQUEL . Vzhledem k tomu, že zkratka SEQUEL byla v té době registrovanou ochrannou známkou třetí strany , byl název zkrácen na SQL - "Structured Query Language".
Od roku 1975 do roku 1982 byl prototyp DB2 vyvíjen v IBM pod názvem System Relational nebo System R. Jazyk SQL byl poprvé implementován v IBM System R, ale tento systém byl výzkumné povahy a komerční produkt, včetně SQL, byl poprvé uveden na trh společností Oracle v roce 1979 .
DB2 získalo své jméno v roce 1982 s prvním komerčním vydáním pro VM nazvaným SQL/DS, po kterém následovalo vydání pro MVS s názvem DB2. Dlouhou dobu se spolu s "DB2" používala varianta "Database 2", také ochranná známka IBM.
Historicky se tedy DB2 vyvinul z DB2 pro MVS (jehož je potomkem DB2 for z/OS) a jeho sesterského SQL/DS pro VM (jehož potomkem je DB2 Server pro VSE & VM). Později další vývojový tým v IBM implementoval server OS/2 EE Database Manager, který se později vyvinul v DB2 v2 pro OS/2, AIX a poté Windows a poté v DB2 UDB (jeho potomek je DB2 pro Linux, UNIX a Windows) . Další tým dokončil integraci architektury DB2 s vestavěnou databází AS/400 (potomek DB2 for i). IBM postupně směřuje k integraci všech těchto větví.
Dialekt jazyka SQL používaný v DB2 je až na vzácné výjimky striktně deklarativní, systém je vybaven vícefázovým optimalizátorem, který na základě těchto deklarativních konstrukcí staví plán provádění dotazů. Není k dispozici v dialektu DB2 SQL[ float ] napovídá optimalizátoru, jazyka uložených procedur je málo (a dlouho žádný) a tak vše směřuje k zachování deklarativního stylu psaní dotazů. Jazyk DB2 SQL je výpočetně kompletní , to znamená, že potenciálně umožňuje definovat jakékoli vyčíslitelné korespondence mezi vstupními daty a výsledkem v deklarativní formě. Toho je dosaženo mimo jiné použitím tabulkových výrazů, rekurze a dalších pokročilých mechanismů manipulace s daty.
K zápisu uložených procedur se tradičně používají běžné programovací jazyky na vysoké úrovni ( C , Java , PL/I , Cobol atd.), což umožňuje programátorovi snadno zabalit stejný kód buď jako součást aplikace, nebo jako uloženou proceduru v závislosti na tom, zda je vhodnější provést ji na klientovi nebo na serveru. DB2 také v současné době implementuje procedurální rozšíření SQL pro uložené procedury v souladu se standardem ANSI SQL/PSM.
Optimalizátor DB2 široce využívá statistiky o rozložení dat v tabulkách (pokud proces sběru dat prováděl správce databáze), takže stejný SQL dotaz lze přeložit do zcela odlišných prováděcích plánů v závislosti na statistických charakteristikách údaje, které zpracovává.
V rámci koncepce zvýšení úrovně integrace bezpečnostních nástrojů v počítačovém systému nemá DB2 vlastní prostředky pro ověřování uživatelů, integraci s nástroji operačního systému nebo specializovanými bezpečnostními servery. V rámci DB2 jsou autorizováni pouze uživatelé ověření systémem .
DB2 je jediným univerzálním relačním DBMS, který má implementace na hardwarové/softwarové úrovni ( systém IBM i ; podpora DB2 je implementována také na hardwaru sálových počítačů IBM System z ).
Moderní verze DB2 poskytují rozšířenou podporu pro používání XML dat , včetně operací s jednotlivými prvky XML dokumentů.
Užitečnou funkcí DB2 SQL Server je jeho schopnost zpracovávat chyby. K tomuto účelu se používá struktura SQLCA ( SQL Communications Area ) , která po každém provedení SQL příkazu vrací aplikačnímu programu informaci o chybě .
Hlavní, ale ne vždy užitečná diagnostika chyb je obsažena v poli SQLCODE (datový typ - celé číslo) uvnitř bloku SQLCA. Může nabývat následujících hodnot:
SQLERRM (datový typ je řetězec 71 znaků). Pokud je pole SQLCODE menší než nula, obsahuje textový řetězec popisující chybu.
SQLERRD (datový typ - pole , 6 celých čísel). Popisuje výsledek provedení posledního příkazu SQL:
Systémy pro správu databází (DBMS) | |
---|---|
Klient-server | |
Motory | |
Souborový server |
Databáze | |
---|---|
Koncepty |
|
Objekty |
|
Klíče | |
SQL | |
Komponenty |
International Business Machine Corporation | |||||
---|---|---|---|---|---|
Zařízení |
| ||||
Software | |||||
Poradenství a IT služby |
| ||||
představenstvo | |||||
viz také |
|