Lekérdezés gyorsítótárazásának kezelése

Az Oracle Analytics Cloud egy helyi gyorsítótárt tart fenn a lekérdezési eredménykészletek számára a lekérdezési gyorsítótárban.

Témakörök:

Tudnivalók a lekérdezési gyorsítótárról

A lekérdezési gyorsítótár segítségével az Oracle Analytics Cloud számos egymást követő lekérdezéssel kapcsolatos kérést tud teljesíteni a háttérbeli adatforrások elérése nélkül, és ez növeli a lekérdezés teljesítményét. Azonban a lekérdezési gyorsítótár bejegyzései elavulhatnak, mivel a frissítések a háttérbeli adatforrásokon jelennek meg.

A gyorsítótárazás előnyei

A lekérdezés feldolgozásának leggyorsabb módja, ha kihagyja a tömeges feldolgozást és előre kiszámított választ használ.

A lekérdezés gyorsítótárazásával az Oracle Analytics Cloud egy helyi gyorsítótárban eltárolja a lekérdezések előre kiszámított eredményeit. Ha egy másik lekérdezés használni tudja ezeket az eredményeket, akkor az adott lekérdezéshez nem kell igénybe venni az összes adatbázis feldolgozását. Ez rendkívüli mértékben javítja a lekérdezés átlagos válaszidejét.

A teljesítmény javításán kívül azáltal, hogy egy helyi gyorsítótárból válaszolni tud a lekérdezésre, megőrzi a hálózati erőforrásokat és csökkenti az adatbázis-kiszolgáló feldolgozási idejét. A hálózati erőforrások megőrzése annak köszönhető, hogy a rendszer a köztes eredményeket nem küldi vissza az Oracle Analytics Cloud szolgáltatásnak. Ha nem kell lefuttatni a lekérdezést az adatbázison, akkor az adatbázis-kiszolgáló felszabadul és más munkát végezhet. Ha az adatbázis visszatérítési rendszert használ, akkor a kevesebb lekérdezés futtatása csökkentheti a költségvetési költségeket.

A lekérdezések gyorsítótárral történő megválaszolásának másik előnye, hogy feldolgozási időt takarít meg az Oracle Analytics Cloud szolgáltatásban, különösen akkor, ha a lekérdezés eredményeit több adatbázisból kell lekérni. A lekérdezéstől függően előfordulhat, hogy a kiszolgálónak jelentős mennyiségű összekapcsolást és rendezést kell feldolgoznia. Ha a lekérdezést már kiszámították, akkor ez a feldolgozás elkerülhető, és így a felszabaduló kiszolgálói erőforrások más feladatokat végezhetnek.

Összegezve, a lekérdezés gyorsítótárazása rendkívüli mértékben javíthatja a lekérdezési teljesítményt és csökkentheti a hálózati adatforgalmat, az adatbázis-feldolgozási időt és a feldolgozás általános költségeit.

Gyorsítótárazással kapcsolatos költségek

A lekérdezés gyorsítótárazása számos nyilvánvaló előnnyel jár, de bizonyos költségek is felmerülnek.

  • A gyorsítótárbeli eredmények elavulásának lehetősége

  • A gyorsítótár kezelésével kapcsolatos adminisztrációs költségek

A gyorsítótár kezelésének köszönhetően az előnyök általában felülmúlják a költségeket.

A gyorsítótárazáshoz társított adminisztratív feladatok

A gyorsítótárazáshoz bizonyos adminisztrálási feladatok vannak társítva. Minden egyes fizikai táblához megfelelően be kell állítania a gyorsítótár megőrzési idejét, ehhez tudnia kell, hogy az adott táblában milyen gyakran módosulnak az adatok.

Ha a módosítások gyakorisága változó, nyomon kell követnie a módosítások megjelenését, és szükség szerint ki kell ürítenie a gyorsítótárt.

A gyorsítótár adatainak naprakészen tartása

Ha a gyorsítótár bejegyzései nem törlődnek ki, amikor az alapul szolgáló adatbázisokban lévő adatok módosulnak, akkor a lekérdezések elavult eredményeket adhatnak vissza.

Értékelnie kell, hogy ez elfogadható-e. Elfogadható annak engedélyezése, hogy a gyorsítótár valamennyi elavult adatot tartalmazzon. Önnek kell eldöntenie, hogy az elavult adatok milyen szintje elfogadható, és annak alapján kell konfigurálnia (és követnie) az adott szintekre vonatkozó szabályok készletét.

Például tételezzük fel, hogy egy alkalmazás egy hatalmas konglomerátumból származó vállalati adatokat elemez, és Ön a vállalat különböző részlegeire vonatkozó éves összesítéseket hajt végre. Az új adatok anyagi szempontból nem befolyásolják a lekérdezéseket, mivel csak a következő év összesítéseit befolyásolják. Ebben az esetben kompromisszumot kell kötni annak eldöntéséhez, hogy a gyorsítótár kiürítését részesítsék-e előnyben a gyorsítótár bejegyzéseinek megőrzésével szemben.

Azonban tételezzük fel, hogy az adatbázisok naponta háromszor frissülnek, és Ön az aktuális nap tevékenységeire vonatkozó lekérdezést hajt végre. Ebben az esetben sokkal gyakrabban ki kell ürítenie a gyorsítótárt, vagy dönthet úgy is, hogy egyáltalán nem használja azt.

Másik lehetőség, hogy kezdettől fogva rendszeres időközönként (például hetente egyszer) átrendezi az adatkészletet. Ebben a példában az adatkészlet átrendezési folyamatának részeként teljesen kiüríti a gyorsítótárt, ezzel biztosítva, hogy soha ne legyenek elavult adatok a gyorsítótárban.

Bármelyik megoldást választja, értékelnie kell, hogy mi az elfogadható ahhoz, hogy a felhasználók ne kapjanak vissza nem aktuális adatokat.

A gyorsítótár megosztása a felhasználók között

Ha egy adott kapcsolatkészlethez engedélyezve van a megosztott bejelentkezés, akkor a gyorsítótárt meg lehet osztani a felhasználók között, és nem kell minden egyes felhasználó számára feltölteni alapadatokkal.

Ha a megosztott bejelentkezés nincs engedélyezve, és felhasználóra jellemző adatbázis-bejelentkezést használnak, akkor minden egyes felhasználó a saját gyorsítótári bejegyzését hozza létre.

Lekérdezés gyorsítótárazásának engedélyezése vagy letiltása

Az Oracle Analytics Cloud szolgáltatásban a lekérdezés gyorsítótárazása alapértelmezés szerint engedélyezett. A lekérdezés gyorsítótárazását a Speciális rendszerbeállítások oldalon engedélyezheti vagy tilthatja le.

  1. Kattintson a Konzol elemre.
  2. Kattintson a Speciális rendszerbeállítások lehetőségre.
  3. Kattintson a Teljesítmény és kompatibilitás elemre.
  4. Állítsa be a Gyorsítótár engedélyezése értékét be vagy ki értékre.
    • Be – Az adatlekérdezés gyorsítótárazása engedélyezve van.
    • Off – A gyorsítótárazás le van tiltva.
  5. Kattintson az Alkalmaz elemre.
    Várjon néhány percet, amíg a módosítások frissülnek a rendszerében.

A gyorsítótár figyelése és kezelése

Az alapul szolgáló adatbázisokban történt változások kezeléséhez és a gyorsítótári bejegyzések figyeléséhez ki kell fejlesztenie egy gyorsítótár-kezelési stratégiát.

Szüksége van egy olyan folyamatra, amelyikkel érvénytelenítheti a gyorsítótári bejegyzéseket, amikor az azokat alkotó adatok megváltoznak az alapul szolgáló táblákban, továbbá egy másik folyamatra, amelyikkel figyelheti, azonosíthatja, illetve eltávolíthatja a nemkívánatos gyorsítótári bejegyzéseket.

A szakasz a következő témákat tartalmazza:

Gyorsítótár-kezelési stratégia kiválasztása

A gyorsítótár-kezelési stratégia kiválasztásának lehetősége az alapul szolgáló adatbázisok adatainak változékonyságától és a változékonyságot okozó változások kiszámíthatóságától függ.

Továbbá függ azoknak a lekérdezéseknek a számától és típusától is, amelyek a gyorsítótárban találhatók, valamint a lekérdezések használatától. Ez a szakasz áttekintést nyújt a gyorsítótár-kezelés különböző módszereiről.

A rendszer gyorsítótárazásának letiltása

A teljes rendszerre vonatkozóan letilthatja a gyorsítótárazást, ezzel leállíthatja az összes gyorsítótári bejegyzést, és ezzel megakadályozhatja, hogy az új lekérdezések használják a meglévő adattárt. A gyorsítótárazás letiltása lehetővé teszi, hogy később bármikor engedélyezze azt, a gyorsítótárban tárolt bejegyzések elvesztése nélkül.

A gyorsítótárazás ideiglenes letiltása olyan esetekben hasznos, amikor feltételezhető, hogy a gyorsítótár elavult bejegyzéseket tartalmaz, de az elavult bejegyzések törlése vagy a gyorsítótár teljes kiürítése előtt szeretné ellenőrizni, hogy azok a bejegyzések valóban elavultak-e. Ha úgy találja, hogy a gyorsítótárban tárolt adatok még mindig aktuálisak vagy biztonságosan kitörölte a problémás bejegyzéseket, akkor biztonságosan engedélyezheti a gyorsítótár használatát. Ha szükséges, a gyorsítótár újbóli engedélyezése előtt ürítse ki a teljes gyorsítótárt vagy csak egy adott üzleti modellhez kapcsolódó gyorsítótárt.

A gyorsítótár és a gyorsítótár megőrzési idejének beállítása a megadott fizikai táblák esetében

Minden egyes fizikai táblához be kell állítania egy gyorsítótárazható attribútumot, amely segítségével meghatározhatja, hogy az adott táblára vonatkozó lekérdezéseket a rendszer hozzáadja-e a gyorsítótárhoz a jövőbeni lekérdezések megválaszolása érdekében.

Ha egy táblára vonatkozóan engedélyezi a gyorsítótárazást, akkor a rendszer hozzáadja a gyorsítótárhoz az adott táblát tartalmazó összes lekérdezést. Alapértelmezés szerint minden tábla gyorsítótárazható, azonban vannak olyan táblák, amelyek csak akkor szerepelhetnek a gyorsítótárban, ha megfelelő beállításokat ad meg a gyorsítótár megőrzéséhez. Például tételezzük fel, hogy Ön olyan táblával rendelkezik, amely percenként változó tőzsdei árfolyamjelző adatokat tárol. Meghatározhatja, hogy 59 másodpercenként törölni szeretné az adott táblához tartozó bejegyzéseket.

A gyorsítótár megőrzési beállításaival azt is megadhatja, hogy a lekérdezési gyorsítótár mennyi ideig tárolja az adott táblához tartozó bejegyzéseket. Ez a módszer a gyakran módosított adatforrások esetében hasznos.

  1. A Model Administration Tool alkalmazásban, a fizikai rétegen kattintson duplán a fizikai táblára.

    Ha a Semantic Modeler alkalmazást használja, tekintse meg a következőt: Mik egy fizikai tábla általános tulajdonságai?.

  2. A Fizikai tábla tulajdonságai párbeszédpanelen, az Általános lapon jelölje be a következő beállítások egyikét:

    • A gyorsítótárazás engedélyezéséhez jelölje be a Gyorsítótárazható beállítást.

    • A tábla gyorsítótárazásának megakadályozásához törölje a Gyorsítótárazható beállítás jelölését.

  3. A gyorsítótár lejárati idejének beállításához adjon meg a Gyorsítótár megőrzési ideje mezőben egy értéket, továbbá adjon meg egy mértékegységet (nap, óra, perc vagy másodperc). Ha nem szeretné, hogy a gyorsítótári bejegyzések automatikusan lejárjanak, jelölje be A gyorsítótár soha nem jár le beállítást.

  4. Kattintson az OK gombra.

Hogyan hatnak a szemantikai modell módosításai a lekérdezési gyorsítótárra?

Amikor a szemantikai modellek módosítását a Semantic Modeler vagy a Model Administration Tool alkalmazással végzi, a módosítások hatással lehetnek a gyorsítótárban tárolt bejegyzésekre. Például ha módosítja egy fizikai objektumnak vagy egy dinamikus szemantikai modell változójának a definícióját, akkor az adott objektumra vagy változóra hivatkozó gyorsítótári bejegyzések érvényüket veszíthetik. A módosítások következtében lehet, hogy ki kell törölni a gyorsítótár tartalmát. A következő két eljárással kell tisztában lennie: a meglévő szemantikai modell módosítása és új szemantikai modell létrehozása (feltöltése).

A szemantikai modell módosításai

Amikor egy szemantikai modellt módosít vagy feltölt egy másik .rpd-fájlt, a gyorsítótári bejegyzéseket érintő bármilyen módosítás hatására a rendszer törli a gyorsítótárból az összes olyan bejegyzést, amely a módosított objektumokra hivatkozik. A törlés a módosítások feltöltésekor megy végbe. Például ha töröl egy fizikai táblát egy szemantikai modellből, akkor az adott táblára hivatkozó összes gyorsítótári bejegyzés törlődik a bejegyzéskor. A szemantikai modell minden módosítása a Logikai rétegben törli a gyorstároló bejegyzéseit az adott szemantikai modellhez.

A globális szemantikai modell változóinak módosítása

A globális szemantikai modell változóinak értékei a lekérdezésekből visszakapott adatokkal frissülnek. Globális szemantikai modell definiálásakor hozzon létre egy inicializálási blokkot, vagy használjon egy olyan korábban már létező blokkot, amelyik SQL-lekérdezést tartalmaz. Konfigurálja a lekérdezés futtatásának ütemezését is, és rendszeres időközönként frissítse a változó értékét.

Ha egy globális szemantikai modell változója módosul, akkor az adott változót használó bármelyik gyorsítótári bejegyzés az egyik oszlopban elavulttá válik, és amikor a bejegyzésben lévő adatokra ismét szükség lesz, a rendszer új gyorsítótári bejegyzést hoz létre. A régi gyorsítótári bejegyzés nem törlődik azonnal, hanem addig megmarad, amíg a rendszer a szokásos gyorsítótárazási mechanizmus során ki nem törli.

A gyorsítótár használatára vonatkozó stratégiák

A lekérdezés gyorsítótárazásának egyik legfőbb előnye, hogy növeli a lekérdezés látszólagos teljesítményét.

A lekérdezés gyorsítótárazása A jó alapadatokkal való feltöltési stratégia megköveteli, hogy tudja, mikor jelennek meg a gyorsítótár-találatok.

Ha az összes felhasználó számára szeretné alapadatokkal feltölteni a gyorsítótárt, valószínűleg a következő lekérdezéssel kell feltöltenie:

SELECT User, SRs

Miután a SELECT User, SRs lekérdezéssel feltöltötte a gyorsítótárt, a következő lekérdezésekre jelenhetnek meg gyorsítótár-találatok:

SELECT User, SRs WHERE user = valueof(nq_SESSION.USER) (and the user was USER1)
SELECT User, SRs WHERE user = valueof(nq_SESSION.USER) (and the user was USER2)
SELECT User, SRs WHERE user = valueof(nq_SESSION.USER) (and the user was USER3)

A szakasz a következő témákat tartalmazza:

Tudnivalók a gyorsítótár-találatokról

Ha a gyorsítótárazás engedélyezve van, a rendszer minden egyes lekérdezést kiértékel, hogy megállapítsa, hogy az gyorsítótár-találatnak számít-e.

A gyorsítótár-találat azt jelenti, hogy az Oracle Analytics Cloud a gyorsítótár használatával tudott válaszolni a lekérdezésre, és egyáltalán nem fordult az adatbázishoz. Az Oracle Analytics Cloud a lekérdezési gyorsítótár segítségével egyidejűleg ugyanazon vagy még magasabb szinten összesített lekérdezésekre tud válaszolni.

A gyorsítótári találatot számos tényező befolyásolja. Az alábbi táblázat ezeket a tényezőket ismerteti.

Tényező vagy szabály Leírás

A SELECT listában lévő oszlopok részhalmazának meg kell egyeznie

Az új lekérdezés SELECT listájában lévő összes oszlopnak léteznie kell a gyorsítótárbeli lekérdezésben, hogy megfeleljen egy gyorsítótár-találatnak, vagy pedig ki kel tudni számítani őket a lekérdezés oszlopaiból.

Ez a szabály leírja a gyorsítótár-találat elérésének minimális követelményét, de a szabály teljesítése nem garantálja, hogy lesz is találat a gyorsítótárban. A táblázatban található többi szabály is érvényes.

A SELECT listában szereplő oszlopoknak a gyorsítótárbeli lekérdezések oszlopaiban található kifejezéseket kell tartalmazniuk.

Az Oracle Analytics Cloud ki tudja számítani a kifejezéseket a gyorsítótárbeli eredmények alapján, hogy válaszoljon az új lekérdezésre, de minden oszlopnak szerepelnie kell a gyorsítótárbeli eredményben. Például a következő lekérdezés:

SELECT product, month, averageprice FROM sales WHERE year = 2000

gyorsítótári találatnak számít a következő lekérdezésnél:

SELECT product, month, dollars, unitsales FROM sales WHERE year = 2000

mert az averageprice értéke kiszámítható a dollars és a unitsales értékéből (averageprice = dollars/unitsales).

A WHERE utasításrész szemantikailag lehet ugyanaz vagy egy logikai részhalmaz

Ahhoz, hogy egy lekérdezést gyorsítótár-találatnak lehessen tekinteni, a WHERE utasításrész megszorításainak vagy egyenlőnek kell lenniük a gyorsítótárbeli eredményekkel, vagy a gyorsítótárbeli eredmények részhalmazával.

A WHERE utasításrész, ami egy gyorsítótárbeli lekérdezés logikai részhalmaza, akkor felel meg egy gyorsítótár-találatnak, ha a részhalmaz teljesíti az alábbi feltételek egyikét:

  • Az IN lista értékeinek részhalmaza. Azok a lekérdezések számítanak gyorsítótár-találatnak, amelyek egy IN lista gyorsítótárbeli lekérdezésének kevesebb elemét igénylik. Például a következő lekérdezés:

    SELECT employeename, region
    FROM employee, geography
    WHERE region in ('EAST', 'WEST')

    találatnak számít a következő gyorsítótárbeli lekérdezésnél:

    SELECT employeename, region
    FROM employee, geography
    WHERE region in ('NORTH', 'SOUTH', 'EAST', 'WEST')
  • Kevesebb (de ugyanolyan) OR megszorítást tartalmaz, mint a gyorsítótárbeli eredmény.

  • Egy literális összehasonlítás logikai részhalmazát tartalmazza. Például a következő predikátum:

    WHERE revenue < 1000

    gyorsítótár-találatnak számít a következő predikátumot tartalmazó, összehasonlítható gyorsítótárbeli lekérdezésnél:

    WHERE revenue < 5000
  • Nincs WHERE utasításrész. Ha egy WHERE utasításrészt nem tartalmazó lekérdezés gyorsítótárbeli, akkor az olyan lekérdezések, amelyek megfelelnek az összes többi gyorsítótár-találati szabálynak, a bennük lévő WHERE utasításrésztől függetlenül gyorsítótár-találatoknak számítanak.

Ezenkívül a WHERE utasításrészben használt oszlopoknak szerepelniük kell a kivetítési listában. Például a következő lekérdezés:

SELECT employeename
FROM employee, geography
WHERE region in ('EAST', 'WEST')

Nem eredményez gyorsítótár-találatot az előző listában szereplő feltöltött alaplekérdezésnél, mert a REGION nem szerepel a kivetítési listában.

A csak dimenziót tartalmazó lekérdezéseknek pontosan meg kell egyezniük.

Ha egy lekérdezés csak dimenziót tartalmaz, vagyis nem tartalmaz sem tényadatot, sem mérőszámot, akkor csak a gyorsítótárbeli lekérdezés kivetítési oszlopaival való pontos egyezés számít gyorsítótári találatnak. Ez a viselkedés megakadályozza a hamis pozitív eredmények megjelenését, amikor egy dimenziótáblához több logikai forrás tartozik.

A speciális függvényeket tartalmazó lekérdezéseknek pontosan meg kell egyezniük.

Más lekérdezéseknek, amelyek olyan speciális függvényeket tartalmaznak, mint például az idősori függvények (AGO, TODATE és PERIODROLLING), a korlátozási és eltolási függvények (OFFSET és FETCH), a kapcsolati függvények (ISANCESTOR, ISLEAF, ISROOT és ISSIBLING), a külső összesítő függvények és általában a szűrési mérőszámok, szintén pontosan meg kell egyezniük a gyorsítótárbeli lekérdezés kivetítési oszlopaival. Ezekben az esetekben a szűrőnek is pontosan meg kell egyeznie. A szűrő mérőszámainál, ha a szűrő mérőszáma átírható WHERE utasításrészként, akkor a gyorsítótárbeli részhalmazt lehet alkalmazni.

A logikai táblák készletének meg kell egyeznie

Ahhoz, hogy gyorsítótár-találatot érjünk el, az összes bejövő lekérdezésnek ugyanolyan logikai táblakészletet kell tartalmaznia, mint ami a gyorsítótári bejegyzés tartalmaz. Ez a szabály nem vonatkozik a hamis gyorsítótár-találatokra. Például a SELECT * FROM product és a SELECT * FROM product, sales nem egyeznek meg.

A munkameneti változók értékeinek meg kell egyezniük, beleértve a biztonsági munkameneti változókat is

Ha a logikai vagy a fizikai SQL-utasítás bármilyen munkameneti változóra hivatkozik, akkor a munkameneti változó értékeinek meg kell egyezniük. Ellenkező esetben nincs gyorsítótári találat.

Ezenkívül azon munkameneti változók értékének, amelyek biztonsági szempontból érzékenyek, meg kell egyezniük a biztonsági munkameneti változónak a szemantikai modellben definiált értékeivel, még akkor is, ha maga a logikai SQL-utasítás nem hivatkozik munkameneti változókra. Lásd: Pontos gyorsítótári eredmények biztosítása sorszintű adatbázis-biztonság használata esetén.

Egyenlő összekapcsolási feltételek

Egy új lekérdezési kérelem eredményül kapott összekapcsolt logikai táblájának meg kell egyeznie a gyorsítótárbeli eredményekkel (vagy azok részhalmazával) a gyorsítótár-találat eléréséhez.

A DISTINCT attribútumnak azonosnak kell lennie

Ha egy gyorsítótárbeli lekérdezés kiküszöböli az ismétlődő rekordokat a DISTINCT feldolgozással (például: SELECT DISTINCT...), akkor a gyorsítótárbeli oszlopokra vonatkozó kérelmeknek szintén tartalmazniuk kell a DISTINCT feldolgozást. Ha egy ugyanarra az oszlopra vonatkozó kérelem nem tartalmazza a DISTINCT feldolgozást, akkor az gyorsítótár-tévesztésnek számít.

A lekérdezéseknek kompatibilis összesítési szinteket kell tartalmazniuk

Azok a lekérdezések, amelyek összesített szintű adatokat igényelnek, alacsonyabb összesítési szinten is használhatják a gyorsítótárbeli eredményeket. Például a következő lekérdezés az eladott mennyiséget szállító, régió és város szinten igényli:

SELECT supplier, region, city, qtysold
FROM suppliercity

A következő lekérdezés az eladott mennyiséget város szinten igényli:

SELECT city, qtysold
FROM suppliercity

A második lekérdezés gyorsítótár-találatot eredményez az első lekérdezésnél.

Korlátozott kiegészítő összesítés

Például ha a qtysold oszlopot tartalmazó kérelmet feltöltenek a gyorsítótárba, akkor egy RANK(qtysold) iránti kérelem gyorsítótár-tévesztést eredményez. Ezenkívül, a qtysold adatokat ország szinten igénylő lekérdezés gyorsítótár-találatot kap attól a lekérdezéstől, amelyik a qtysold adatot ország és régió szinten igényli.

Az ORDER BY utasításrésznek a kiválasztási lista oszlopait kell tartalmaznia

A kiválasztási listában nem szereplő oszlopok szerint rendező lekérdezések gyorsítótár-tévesztéseket eredményeznek.

A gyorsítótár-találat viselkedésének diagnosztizálása

Ahhoz, hogy jobban tudja értékelni a gyorsítótár-találat viselkedését, állítsa be az ENABLE_CACHE_DIAGNOSTICS munkameneti változó értékét 4-re a következő példa szerint:

ENABLE_CACHE_DIAGNOSTICS=4

Pontos gyorsítótári eredmények biztosítása sorszintű adatbázis-biztonság használata esetén

Sorszintű adatbázis-biztonsági stratégia, például egy virtuális magánadatbázis (VPD) használata esetén a visszakapott adateredmények a felhasználó engedélyezett hitelesítő adataitól függenek.

Ezért az Oracle Analytics Cloud alkalmazásnak tudnia kell, hogy egy adatforrás használ-e sorszintű adatbázis-biztonságot, és hogy mely változók felelnek meg a biztonságnak.

Ha biztosítani szeretné, hogy a gyorsítótár-találatok csak azoknál a gyorsítótári bejegyzéseknél jelenjenek meg, amelyek tartalmazzák és megfelelnek az összes biztonsági szempontból érzékeny változónak, megfelelően kell konfigurálnia az adatbázis-objektumot és a munkameneti változó objektumait a Model Administration Tool eszközben az alábbiak szerint:

  • Adatbázis-objektum. Az Adatbázis párbeszédpanel Általános lapján, a Fizikai rétegben válassza ki a Virtuális magánadatbázis elemet, hogy meghatározhassa, hogy az adatforrás használjon sorszintű adatbázis-biztonságot.

    Ha megosztott gyorsítótárazással rendelkező sorszintű adatbázis-biztonságot használ, akkor be kell jelölnie ezt a beállítást, hogy megakadályozza azoknak a gyorsítótári bejegyzéseknek a megosztását, amelyeknek a biztonsági szempontból érzékeny változóik nem felelnek meg.

  • Munkameneti változó objektuma. Biztonsággal kapcsolatos változók esetében a Munkameneti változó panelen jelölje be a Biztonsági szempontból érzékeny beállítást, hogy sorszintű adatbázis-biztonsági stratégia használata esetén a rendszer biztonsági szempontból érzékeny változókként azonosítsa őket. Ez a beállítás biztosítja, hogy a rendszer biztonsági szempontból érzékeny változókkal jelölje meg a gyorsítótári bejegyzéseket, lehetővé téve a biztonsági szempontból érzékeny változók egyeztetését minden bejövő lekérdezésnél.

Lekérdezéscsomag futtatása a gyorsítótár feltöltéséhez

A gyorsítótár-találatok lehető legnagyobb számának eléréséhez a legjobb stratégia a lekérdezéscsomag futtatása a gyorsítótár feltöltéséhez.

A gyorsítótár alapadatokkal való feltöltéséhez szükséges lekérdezéscsomag létrehozásához a következő lekérdezéstípusok használatát javasoljuk.

  • Gyakori előre összeállított lekérdezések. Elsősorban olyan gyakran futtatott lekérdezések, amelyeknek költséges a feldolgozása. Ezek kiváló alaplekérdezések a gyorsítótár feltöltéséhez. Az olyan lekérdezések, amelyeknek eredményei irányítópultokba vannak beágyazva, nagyon jó példák a gyakori lekérdezésekre.

  • Kifejezéseket nem tartalmazó SELECT listák. A kifejezések kihagyása a SELECT lista oszlopainál növeli a gyorsítótár-találatok lehetőségét. Egy kifejezést tartalmazó gyorsítótárbeli oszlop csak egy olyan új lekérdezésre tud válaszolni, amelyik ugyanazt a kifejezést tartalmazza, viszont egy kifejezést nem tartalmazó gyorsítótárbeli oszlop a rá vonatkozó bármilyen kifejezést tartalmazó kérelemre tud válaszolni. Például a következő gyorsítótárbeli kérelem:

    SELECT QUANTITY, REVENUE...
    

    egy ilyen új lekérdezésre tud válaszolni:

    SELECT QUANTITY/REVENUE... 
    

    de fordítva ez nem igaz.

  • Nincs WHERE utasításrész. Ha egy gyorsítótárbeli eredményben nincs WHERE utasításrész, akkor az olyan lekérdezések megválaszolására használható, amelyek megfelelnek a gyorsítótár-találati szabályoknak az olyan kiválasztási lista esetében, amelyik egyetlen olyan WHERE utasításrészt sem tartalmaz, amelyikben a kivetítési listában lévő oszlopok találhatók.

Általában a gyorsítótár feltöltéséhez azok a legjobb lekérdezések, amelyek nagy mértékben használnak fel adatbázis-feldolgozási erőforrásokat, és amelyeket valószínűleg újra kiadnak. Ügyeljen rá, hogy ne töltse fel a gyorsítótárt olyan egyszerű lekérdezésekkel, amelyek sok sort adnak vissza. Ezek a lekérdezések (például a SELECT * FROM PRODUCTS, ahol a PRODUCTS leképezése közvetlenül egyetlen adatbázisi táblába történik) nagyon kevés adatbázis-feldolgozást igényelnek. A költségük a hálózat és a lemez általános költségeiből áll, ami olyan tényező, amit a gyorsítótárazás nem tud csökkenteni.

Amikor az Oracle Analytics Cloud frissíti a szemantikai modell változóit, megvizsgálja az üzleti modelleket, és meghatározza, hogy azok hivatkoznak-e az adott szemantikaimodell-változókra. Ha igen, akkor az Oracle Analytics Cloud kitörli a gyorsítótár teljes tartalmát, amely az adott üzleti modellekhez kapcsolódik. Lásd: Hogyan hatnak a szemantikai modell módosításai a lekérdezési gyorsítótárra?.

Ügynökök használata a lekérdezési gyorsítótár alapadatokkal való feltöltéséhez

Ügynököket konfigurálhat az Oracle Analytics Cloud lekérdezési gyorsítótárának alapadatokkal való feltöltéséhez.

A gyorsítótár alapadatokkal való feltöltése lerövidítheti a válaszidőt a felhasználók számára, amikor az irányítópultokon beágyazott elemzéseket futtatnak vagy tekintenek meg. A feladat végrehajtásához az ügynököket olyan kérelmek futtatására kell ütemeznie, amelyek frissítik ezeket az adatokat.

  1. Az Oracle Analytics Cloud szolgáltatásban nyissa meg a Klasszikus kezdőlapot, és válassza ki az Ügynök elemet (Létrehozás szakasz).
  2. Az Általános lapon válassza ki a Futtatás másként beállítás Címzett elemét. A személyre szabott gyorsítótár-feltöltés az egyes címzettek adatainak láthatóságának használatával tudja személyre szabni az ügynök kézbesítési tartalmát minden egyes címzett esetében.
  3. Az Ütemezés lapon adja meg, hogy mikor kívánja alapadatokkal feltölteni a gyorsítótárt.
  4. Választható: Válassza ki a Feltétel elemet, és hozzon létre vagy válasszon ki egy feltételes kérelmet. Például lehet egy olyan üzleti modellje, amelyik meghatározza, hogy mikor fejeződjön be az ETL folyamat. Használhatna egy ezen az üzleti modellen alapuló kimutatást feltételes triggerként a gyorsítótár feltöltésének megkezdéséhez.
  5. A Kézbesítési tartalom lapon válasszon ki egy egyedi kérelmet vagy egy teljes irányítópult-oldalt, amelyikhez fel kívánja tölteni a gyorsítótárt. Irányítópult-oldal választásával időt takaríthat meg.
  6. A Címzettek lapon válassza ki, hogy mely felhasználók vagy csoportok legyenek a címzettek.
  7. A Célhelyek lapon törölje ki az összes felhasználói célhelyet, és válassza ki az Oracle Analytics kiszolgáló gyorsítótára elemet.
  8. Az ügynök mentéséhez válassza ki a jobb felső sarokban lévő Mentés gombot.

A gyorsítótár-feltöltő ügynökök és más ügynökök között mindössze annyi a különbség, hogy az utóbbiak automatikusan törlik a gyorsítótár előző tartalmát, és nem jelennek meg riasztásként az irányítópulton.

Megjegyzés:

A gyorsítótár-feltöltő ügynökök csak a pontosan megegyező lekérdezéseket törlik, így továbbra is maradhatnak elavult adatok. Gondoskodjon róla, hogy a gyorsítótárazási stratégia mindig tartalmazza a gyorsítótár kiürítését, mert az ügynök lekérdezései nem foglalkoznak az ad hoc lekérdezésekkel vagy a részletezésekkel.

A Model Administration Tool használata a gyorsítótár automatikus kiürítéséhez adott táblák esetében

A gyorsítótár kiürítése kitörli a lekérdezési gyorsítótárból a bejegyzéseket, és frissen tartja a tartalmat. Ön automatikusan kitörölheti a megadott táblákhoz tartozó gyorsítótári bejegyzéseket, ha beállítja a Gyorsítótár megőrzési ideje mező értékét minden egyes táblához a Model Administration Tool eszközben.

Megjegyzés:

Ha a Semantic Modeler alkalmazást használja, tekintse meg a következőt: Mik egy fizikai tábla általános tulajdonságai?

Ez a módszer a gyakran módosított adatforrások esetében hasznos. Például ha olyan táblával rendelkezik, amely percenként változó tőzsdei árfolyamjelző adatokat tárol, a Gyorsítótár megőrzési ideje beállítással 59 másodpercenként törölheti az adott táblához tartozó bejegyzéseket. Lásd: A gyorsítótár és a gyorsítótár megőrzési idejének beállítása a megadott fizikai táblák esetében.