DB2

Vakaa versio kirjattiin ulos 6.5.2022 . Malleissa tai malleissa on vahvistamattomia muutoksia .
DB2
Tyyppi Tietokannan ohjausjärjestelmä
Kehittäjä IBM
Sisään kirjoitettu C , C++
Käyttöjärjestelmä Monialustainen ohjelmisto
Ensimmäinen painos 23. toukokuuta 1995
uusin versio 11.5
Lisenssi Oma EULA
Verkkosivusto ibm.com/analytics… ​(  englanti)
 Mediatiedostot Wikimedia Commonsissa

DB2  on IBM :n tuottama relaatiotietokannan hallintajärjestelmien perhe . Useimmiten DB2:een viitattaessa ne tarkoittavat relaatiotietokannan hallintajärjestelmää DB2 Universal Database (DB2 UDB) [1] .

Toteutukset

2000 -luvulla DB2 DBMS:ää edustavat versiot seuraavilla alustoilla:

1990 - luvulla nähtiin myös DB2-palvelimen OS/2- , UnixWare- ja PTX -versiot .

DB2 DBMS -asiakkaita, lueteltujen alustojen lisäksi, on tai on julkaistu eri versioina myös SINIX- , IRIX- , klassiselle Mac OS :lle ja MS-DOS :lle sekä DB2 Everyplace -mobiiliversiolle Windows CE :lle , Palm OS :lle , Symbian OS :lle , Neutrino ja virtuaalikoneen java .

2000-luvulta alkaen IBM jakelee perheen kaupallisten tuotteiden lisäksi myös ilmaista jakelupakettia Db2 Community Edition , vuoden 2019 puoliväliin asti nimeltä DB2 Express-C [2] :

DB2 Express-C:n rajoitukset

Käyttöjärjestelmän prosessorien ja muistin kokonaismäärä voi olla mikä tahansa, mutta DBMS ei käytä määritettyjen rajojen ylittäviä resursseja. Tämä tapahtuu automaattisesti, mikä tarkoittaa, että käyttäjällä ei ole velvollisuutta varmistaa näiden vaatimusten noudattaminen.

Historia

1970-luvun alussa Edgar Codd , joka työskenteli IBM:llä, kehitti relaatiotietokantateorian ja julkaisi tiedonkäsittelymallin kesäkuussa 1970 . Tämän mallin toteuttamiseksi hän kehitti relaatiotietokantakielen ja antoi sille nimen Alpha . IBM päätti ulkoistaa jatkokehityksen Coddin hallinnan ulkopuolella olevalle ohjelmoijaryhmälle. Joitakin relaatiomallin periaatteita rikkoen he ottivat sen käyttöön "strukturoiduna englanninkielisenä kyselykielenä", lyhennettynä SEQUEL . Koska SEQUEL - lyhenne oli tuolloin kolmannen osapuolen rekisteröity tavaramerkki , nimi lyhennettiin muotoon SQL - "Structured Query Language".

Vuosina 1975–1982 DB2 - prototyyppiä kehitettiin IBM: ssä nimellä System Relational tai System R. SQL - kieli otettiin ensimmäisen kerran käyttöön IBM System R:ssä, mutta tämä järjestelmä oli luonteeltaan tutkimusta, ja kaupallinen tuote, mukaan lukien SQL, julkaisi ensimmäisen kerran Oraclessa vuonna 1979 .

DB2 sai nimensä vuonna 1982 ensimmäisestä kaupallisesta VM -julkaisusta nimeltä SQL/DS, jota seurasi MVS :n julkaisu nimeltä DB2. Pitkään "DB2":n ohella käytettiin "Database 2" -varianttia, joka on myös IBM:n tavaramerkki.

Näin ollen DB2 on historiallisesti kehittynyt DB2 for MVS:stä (jonka DB2 for z/OS on jälkeläinen) ja sen sisaruksesta SQL/DS for VM (josta DB2 Server for VSE & VM on jälkeläinen). Myöhemmin toinen IBM:n kehitystiimi otti käyttöön OS/2 EE Database Manager -palvelimen, josta myöhemmin kehittyi DB2 v2 for OS/2, AIX ja sitten Windows ja sitten DB2 UDB (sen jälkeläinen on DB2 for Linux, UNIX ja Windows). . Toinen ryhmä sai päätökseen DB2-arkkitehtuurin integroinnin sulautettuun AS/400 -tietokantaan (DB2 for i:n jälkeläinen). IBM etenee vähitellen kohti kaikkien näiden alojen integrointia.

Ominaisuudet

DB2:ssa käytetyn SQL-kielen murre, harvoja poikkeuksia lukuun ottamatta, on tiukasti deklaratiivinen, järjestelmä on varustettu monivaiheisella optimoijalla, joka rakentaa kyselyn suoritussuunnitelman näiden deklaratiivisten konstruktien perusteella. Ei saatavilla DB2 SQL -murteella[ float ] vihjaa optimoijaan, tallennettujen proseduurien kieltä on vähän (ja pitkään aikaan ei ollenkaan), joten kaiken tavoitteena on ylläpitää deklaratiivista kirjoitustyyliä kyselyjen kirjoittamisessa. DB2:n SQL-kieli on laskennallisesti valmis , eli se mahdollistaa laskennallisten vastaavuuksien määrittämisen syöttötietojen ja tuloksen välillä deklaratiivisessa muodossa. Tämä saavutetaan muun muassa käyttämällä taulukkolausekkeita, rekursiota ja muita edistyneitä tiedonkäsittelymekanismeja.

Perinteisesti tavanomaisia ​​korkean tason ohjelmointikieliä ( C , Java , PL/I , Cobol jne.) on käytetty tallennettujen proseduurien kirjoittamiseen, jolloin ohjelmoija voi helposti pakata saman koodin joko osaksi sovellusta tai tallennettu toimintosarja riippuen siitä, onko se tarkoituksenmukaisempaa suorittaa asiakkaalla vai palvelimella. DB2 toteuttaa tällä hetkellä myös SQL-proseduurilaajennusta tallennettuja toimintosarjoja varten ANSI SQL/PSM -standardin mukaisesti.

DB2-optimoija hyödyntää laajasti tilastotietoja tietojen jakautumisesta taulukoissa (jos tiedonkeruuprosessin suoritti tietokannan ylläpitäjä), joten sama SQL-kysely voidaan kääntää täysin erilaisiksi suoritussuunnitelmiksi, riippuen tietokannan tilastollisista ominaisuuksista. käsittelemäänsä dataa.

Osana tietoturvatyökalujen integroinnin tason nostamista tietokonejärjestelmään DB2:lla ei ole omia keinoja käyttäjien todentamiseen , integrointiin käyttöjärjestelmän työkaluihin tai erityisiin suojauspalvelimiin. DB2:ssa vain järjestelmän todentamat käyttäjät ovat valtuutettuja .

DB2 on ainoa yleiskäyttöinen relaatiotietokantajärjestelmä, jossa on toteutuksia laitteisto-/ohjelmistotasolla ( IBM i -järjestelmä; DB2-tuki on toteutettu myös IBM System z :n suurtietokonelaitteistossa ).

Nykyaikaiset DB2-versiot tarjoavat parannetun tuen XML -tietojen käytölle, mukaan lukien toiminnot XML-asiakirjojen yksittäisille elementeille.

Virheiden käsittely

DB2 SQL Serverin hyödyllinen ominaisuus on sen kyky käsitellä virheitä. Tätä tarkoitusta varten käytetään SQLCA ( SQL Communications Area )  -rakennetta  , joka palauttaa tiedon virheestä sovellusohjelmalle jokaisen SQL-käskyn suorittamisen jälkeen.

SQLCODE-rakenteen kentät ja niiden merkitykset

Tärkein, mutta ei aina hyödyllinen virhediagnostiikka on SQLCODE -kentässä (tietotyyppi - kokonaisluku) SQLCA-lohkon sisällä. Se voi ottaa seuraavat arvot:

SQLERRM (tietotyyppi on 71 merkin pituinen merkkijono ). Sisältää tekstimerkkijonon, joka kuvaa virhettä, jos SQLCODE-kenttä on pienempi kuin nolla.

SQLERRD (tietotyyppi - array , 6 kokonaislukua). Kuvaa viimeisen SQL-lauseen suorittamisen tuloksen:

Muistiinpanot

  1. Oikeinkirjoitus "DB/2" näkyy joskus, mutta tämä kirjoitusasu on virheellinen: IBM-merkinnöissä murto-osan nimittäjässä oleva numero tarkoittaa alustaa ja "/2" tarkoittaa tuotetta OS/2 -käyttöjärjestelmälle ( tai PS/2 -sarjan tietokoneet ). Esimerkiksi DB2 for OS/2:n versio nimettiin "DB2/2"
  2. Aloita aloitus IBM Db2 Community Editionilla
  3. IBM DB2 Express-C yleiskatsaus . Haettu 23. toukokuuta 2009. Arkistoitu alkuperäisestä 2. syyskuuta 2010.

Linkit

Kirjallisuus