ActiveBase
ActiveBase
ActiveKnowledge és ActiveBase SQL Expert, Oracle
Az ActiveKnowledge használatával...
- Lehetővé válik az egyes alkalmazások használatának felügyelete,
- A naplóállományok alapján megoldottá válik a kiadott SQL parancsok auditálása, azaz kitűnő statisztikák készíthetők az egyes táblákra, ill. azok mezőire,
- A kiadott SQL parancsok optimalizálhatók, az ActiveBase SQL Expert segítségével
- Az optimalizálás eredményeként előálló Oracle hint-ek alkalmazását szabályokhoz kötve automatizálni lehet,
- A szabályok végrehajtását számos dologtól függővé lehet tenni, pl. SQL parancs, Oracle végrehajtási terv, Oracle cost, időszak, stb.,
- A szabályok segítségével nem csak optimalizálni lehet, de pl. bizonyos alkalmazások, lekérdezések tilthatóak is.
Főbb összetevők:
- Administrator Setup - A telepítéshez, ill. az ActiveKnowledge Management Console beállításához használható.
- ActiveKnowledge Management Console - Itt definiálhatók az egyes adatbázisok, szabályok, ill. ez tartalmazza az ActiveBase SQL Expertet is.
- ActiveBase Service - A Management Console-ban definiáltak végrehajtását végzi.
Hardver igény:
- 800 MHz vagy gyorsabb processor.
- 700 MB hely (ebből kb. 600 MB a naplók számára szükséges).
- Legalább 256 MB RAM.
- Hálózati kártya.
Támogatott operációs rendszerek:
- Microsoft Windows NT/2000 (server vagy professional).
- Sun Solaris 7 vagy újabb (32 vagy 64 bites).
- HP-UX 11 vagy újabb.
- Redhat Linux 7.2 vagy újabb.
Az ActiveKnowledge működése
A szolgáltatás egyfajta routerként működik a kliens alkalmazások és az Oracle között, azaz a kiadott SQL parancsok, mind az ActiveKnowledge-en keresztül jutnak el az adatbázis kezelőhöz. Ez fogja biztosítani, hogy a definiált szabályok és optimalizációs eljárások minden esetben végrehajtásra kerülhessenek majd, ill. lehetővé teszi a lekérdezést indító alkalmazások tevékenységének, ill. az SQL parancsoknak az auditálását is.

Első lépésben az ActiveKnowledge számára definiálni kell a használni kívánt Oracle adatbázisokat, majd a kliensek számára az Oracle kapcsolódási paramétereknél (pl. TNSNAMES.ORA) az adatbázis valós kapcsolódási paramétereit módosítani kell az ActiveKnowledge szolgáltatása által használtakra (port szám, host név).
A következő lépés az alkalmazások felvétele (amennyiben szükséges). Ezáltal biztosítható, hogy pl. a fejlesztéshez, üzemeltetéshez használt eszközök által kiadott SQL-ek ne kerüljenek fölöslegesen vizsgálatra, ill. az, hogy az egyes alkalmazások a későbbiekben szeparáltan legyenek kezelhetőek.
Az alkalmazások és az adatbázisok rögzítését követően meg kell adni az ún. routing action-okat, melyekhez majd az egyes szabályok, szabálycsoportok tartozhatnak. Ennek típusai:
- Use Rules - használja az egyes szabályokat,
- Direct - közvetlen kapcsolat, azaz ne használjon szabályokat,
- Refuse - visszautasítás, azaz megakadályozza a kapcsolat használatát.
A leírtak alapján pl. könnyen szabályozható akár az is, hogy egy bizonyos alkalmazás használatát egy bizonyos OS felhasználóhoz és egy terminálhoz kössük.
Az egyes routing action-okhoz rule-okat, azaz szabályokat kell definiálni. Az egyes szabályok a SELECT, INSERT, UPDATE, DELETE SQL parancsok vizsgálatára a következők alapján adnak lehetőséget:
- Statement exact match - Szöveg alapú összehasonlítás.
- Statement syntax match- Magát az SQL parancsot vizsgálja, lehetőséget ad annak átírására is.
- Execution plan steps- Az Oracle végrehatási terv több lépcsőjéhez lehet kötni a szabály végrehatását.
- Any statement- A szabályban foglaltak valamennyi SQL parancsra végrehajtódnak.
- Partition range matcher - A megadott partíció számnál többet használó SQL-ek esetében aktiválódik.
- Single execution plan step matcher - Az Oracle végrehajtási terv bármely részétől függővé lehet tenni a szabály végrehajtását (pl. NESTED LOOP esetében az adott lekérdezéshez így könnyen hozzáadható egy USE HASH hint).
- Oracle cost- Egy minimum Oracle cost megadását teszi lehetővé, az ennél nagyobb igényű lekérdezésekre lesz alkalmazva a szabály. Segítségével szabályozható, hogy bizonyos nagy erőforrásigénnyel bíró lekérdezések csak bizonyos napszakokban legyenek végrehajthatóak.
- PL/SQL matcher - A beérkező SQL kifejezés paraméterként átadható egy PL/SQL eljárásnak. Amennyiben a visszatérési érték nem 0, a szabályban foglaltak végrehatódnak. Jól használható arra az esetre, ha valami miatt az adott Oracle instance-hoz ideiglenesen nem kívánunk hozzáférést adni és ennek eldöntése rábízható egy tárolt eljárásra (így pl. a betöltések idejére egy üzenet kíséretében megakadályozhatóak a lekérdezések).
A szabályok egy fa struktúrában tárolódnak, melyek minden ágára, ill. levelére megadható, hogy a feltételek teljesülése esetén:
- Az adott SQL blokkolható (ilyenkor a felhasználónak üzenetet is lehet küldeni),
- Az adott SQL részei lecserélhetőek,
- Az adott SQL-hez hint adható.
ActiveBase SQL Expert
Az SQL Expert teszi lehetővé az egyes SQL parancsok optimalizálását. A megadott SQL alapján egy listát állít elő, mely tartalmazza a javasolt Oracle hint-okat. A listából (pl. Oracle cost alapján) kiválasztott elemekre futásidő elemzés készül, mely alapján könnyen kiválasztható az optimális hint, melyet az SQL-hez tartozó szabálynál alkalmazhatunk. Ezt követően a szabály teljesülése esetén a megfelelő hint automatikusan hozzáadódik az SQL kifejezéshez, ezáltal csökkentve annak futásidejét.



