Objektum-orientált lekérdező nyelv oql

Az objektumorientált lekérdezési nyelv (OQL) deklaratív eszköz egy objektumorientált adatbázis SQL-szerű szintaxis használatához. Nem tartalmaz kifejezett frissítési operátorokat, mivel ezeket a funkciókat az objektumtípusokban definiált műveletek biztosítják. Csakúgy, mint abban az esetben, SQL, OQL nyelvet lehet használni, mint egy önálló, vagy olyan nyelven, amelyet a szolgáltatók hajtják végre a program, a másik, az alap nyelvet, ami ODMG szabvány meghatározza a sorrendben azok kötelező érvényűek. Jelenleg az alapvető nyelvek a Smalltalk, a C ++ és a Java támogatottak. Az OQL nyelv az ezeken a nyelveken programozott műveletekre utal. Az OQL-lekérdezés egy olyan objektum kiadásának függvénye, amelynek a típusa logikusan származtatható az adott lekérdezés kifejezés részét képező utasítás alapján. Az OQL-lekérdezések létrehozásának megvitatása előtt először ismerkedjen meg a kifejezések létrehozásával kapcsolatos szabályokkal.

A lekérdezés definíció kifejezés "DEFINE Q AS e", ahol Q a kérés neve, és "e" a lekérdezés kifejezés.

A kifejezés a következő összetevőkből állhat:

- atomi literál, például 10, 16,2, 'x', 'abcde', igaz, nulla;

- iterator változót üzemeltető ajánlattevő SELECT-tól-AHOL, például e x, e, vagy X, vagy X e, ahol e - gyűjtemény típusú (T), és X - egy objektum típusú T;

- lekérdezés definíció kifejezés.

A nyelv fejlesztői a következő alapelveken alapultak:

- Az OQL az ODMG objektummodellre támaszkodik.

- Az OQL nagyon közel áll az SQL / 92-hez. A bővítmények objektumorientált fogalmakhoz kapcsolódnak, például összetett objektumokhoz, objektumazonosítókhoz, útvonalkifejezésekhez, polimorfizmushoz, műveletek meghívásához és halasztott kötéshez.

- Az OQL magas szintű primitíveket kínál objektumok készítéséhez, de emellett ugyanolyan hatékony primitívek is vannak a struktúrák, listák és tömbök kezeléséhez.

- Az OQL olyan funkcionális nyelv, amely lehetővé teszi a műveletek korlátlan összeállítását, ha az operandusok nem lépik túl a rendszer típusát. Ez annak a következménye, hogy a lekérdezések eredménye az ODMG típusmintához tartozó típus, ezért új lekérdezést lehet alkalmazni a lekérdezés eredményére.

- Az OQL nem komputeresen teljes. Ez egy egyszerű lekérdező nyelv.

- Az OQL nyelv üzemeltetői bármely olyan programozási nyelvről hívhatók le, amelyre az ODMG szabványban kötelező érvényű szabályokat határoztak meg. Ezzel szemben az OQL lekérdezésekben lehetnek hívások az ezeken a nyelveken programozott műveletekre.

- Az OQL nem határoz meg explicit frissítési műveleteket, hanem az objektumok által definiált frissítési műveletekhez tartozó hívásokat használja.

- Az OQL deklaratív hozzáférést biztosít az objektumokhoz. Emiatt az OQL lekérdezések könnyen optimalizálhatók.

26 Az OO-DBMS architektúra jellemzői: a külső memóriában lévő objektumok elérésének módjai, az ügyfél-szerver architektúra változatai, a módszerek kezelése az OODBMS-ben

Bár nagyon hasonló építészeti RDBMS (orientáció egy kliens-szerver cég támaszkodik az indexek, a processzor elvégzi a relációs algebra kifejezés) olyan jellemzőket és teljesítményt és skálázhatóságot különböznek egy kis hányada, OODB architektúrák nagyban különböznek, és azt mutatják, meglehetősen különböző tulajdonságokkal rendelkeznek. Ennyi év után, amelynek során az emberek azt tanították, hogy minden RDBMS viselkednek szinte azonos, teljesen természetes volt, hogy ezeket az eredményeket a OODBMS és kijelentik, hogy szinte azonos. Ha ez a feltételezés, ha úttörő választani néhány objektum adatbázis, amely gyengén igényeinek kielégítésére alkalmazásai könnyen arra a következtetésre jutott, hogy semmilyen tárgy adatbázis nem lesz képes megfelelni ezeknek az igényeknek. Ezek logikátlan érvelés vezetett tévhiteket objektum adatbázis: ők túl lassú, nem nyújt magas szintű párhuzamosság, nem méretarányos kezelni a nagy mennyiségű adat, stb és hasonlók. Mindez rossz, és a valóság az, hogy alaposan elemezni kell az alkalmazás jellemzőit, és meg kell értenünk, hogy az OO-DBMS architektúrája leginkább megfelel nekik. A megfelelő DBMS architektúra kiválasztásakor a teljesítmény és a méretezhetőség nagyságrendekkel, százalék helyett inkább növekszik, mint a relációs implementációk esetében. Ennek megértésénél elemezzük az OODBMS architektúrájának különbségeit, hogy segítsük a felhasználókat a sikeres technológia kiválasztásához vezető döntések meghozatalában.

Kapcsolódó cikkek