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 |
Az új lekérdezés 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 |
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 |
|
A |
Ahhoz, hogy egy lekérdezést gyorsítótár-találatnak lehessen tekinteni, a A
Ezenkívül a 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 ( |
|
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 |
|
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 |
Ha egy gyorsítótárbeli lekérdezés kiküszöböli az ismétlődő rekordokat a |
|
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 |
|
Az |
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 |