Ako je omogućeno spremanje u cache memoriju, provjerit će se svaki upit kako bi se odredilo je li on prikladan za pronalazak u cache memoriji.
Pronalazak u cache memoriji znači da je Oracle Analytics Cloud mogao upotrijebiti cache memoriju za odgovaranje na upit i nije uopće upotrijebio bazu podataka. Oracle Analytics Cloud može upotrijebiti cache memoriju upita za odgovaranje na upite na istoj ili višoj razini sabiranja.
Pronalazak u cache memoriji ovisi o različitim čimbenicima. Ti su čimbenici opisani u tablici u nastavku.
| Čimbenik ili pravilo | Opis |
|---|---|
|
Podskup stupaca na popisu |
Svi stupci na popisu Ovo pravilo opisuje minimalni uvjet pronalaska u cache memoriji, no ispunjavanje ovog pravila ne jamči pronalazak u cache memoriji. Mogu se primjenjivati i druga pravila navedena u ovoj tablici. |
|
Stupci na popisu |
Oracle Analytics Cloud može izračunati izraze u rezultatima u cache memoriji za odgovaranje na novi upit, no stupci se moraju nalaziti u rezultatu u cache memoriji. Na primjer, u upitu: SELECT product, month, averageprice FROM sales WHERE year = 2000 pronalazak u cache memoriji za upit: SELECT product, month, dollars, unitsales FROM sales WHERE year = 2000 jer se |
|
Uvjet |
Kako bi se upit kvalificirao kao pronalazak u cache memoriji, ograničenja uvjeta Uvjet
Nadalje, stupci koji se upotrebljavaju u uvjetu SELECT employeename
FROM employee, geography
WHERE region in ('EAST', 'WEST')
Ne daje pronalazak u cache memoriji za sistemski upit na prethodnom popisu jer REGION nije na popisu za projekciju. |
|
Upiti koji se odnose samo na dimenziju moraju se točno podudarati |
Ako se upit odnosi samo na dimenziju, tj. u njega nije uključena nijedna činjenica ni mjera, uspješan pristup cache memoriji dat će samo točna podudarnost stupaca projekcije iz upita u cache memoriji. Ovo ponašanje sprječava netočne rezultate ako za dimenzijsku tablicu postoji više logičkih izvora. |
|
Upiti s posebnim funkcijama moraju se točno podudarati |
Ostali upiti koji sadrže posebne funkcije, primjerice funkcije vremenske serije ( |
|
Mora se podudarati skup logičkih tablica |
Kako bi se kvalificirali kao pronalazak u cache memoriji, svi dolazni upiti moraju imati isti skup logičkih tablica kao unos u cache memoriji. Tim pravilom izbjegava se lažni pronalazak u cache memoriji. Na primjer, |
|
Vrijednosti varijable sesije moraju se podudarati, uključujući sigurnosne varijable sesije |
Ako logička SQL ili fizička SQL naredba navodi bilo koju varijablu sesije, vrijednosti varijable sesije moraju se podudarati. U suprotnom neće biti pronalaska u cache memoriji. Nadalje, vrijednost varijabli sesije koje su povezane sa sigurnosti moraju se podudarati s vrijednostima sigurnosne varijable sigurnosne koje su definirane u semantičkom modelu, čak i ako sama logička SQL naredba ne navodi varijable sesije. Pogledajte Provjera točnih cache rezultata pri upotrebi zaštite baze podataka na razini retka. |
|
Jednaki uvjeti spoja |
Spojena logička tablica koja je dobivena za novi zahtjev za upit mora biti ista kao rezultati iz cache memorije (ili mora biti njihov podskup) kako bi se kvalificirala kao pronalazak u cache memoriji. |
|
Atribut |
Ako upit u cache memoriji eliminira duplicirane zapise s |
|
Upiti moraju sadržavati kompatibilne razine sabiranja |
Upiti kojima se traži sabrana razina informacija mogu upotrebljavati rezultate u cache memoriji na nižoj razini sabiranja. Na primjer, sljedeći upit traži količinu prodanu na razini dobavljača, regije i grada: SELECT supplier, region, city, qtysold FROM suppliercity Sljedeći upit traži prodanu količinu na razini grada: SELECT city, qtysold FROM suppliercity Drugi rezultati upita pri pronalasku u cache memoriji za prvi upit. |
|
Ograničeno dodatno sabiranje |
Na primjer, ako je upit sa stupcem |
|
Uvjet |
Upiti s redoslijedom prema stupcima koji nisu na popisu SELECT neće dati pronalazak u cache memoriji. |
|
Dijagnosticiranje ponašanja za pronalazak u cache memoriji |
Kako biste bolje procijenili ponašanje za pronalazak u cache memoriji, varijablu sesije ENABLE_CACHE_DIAGNOSTICS postavite na 4, kao što je prikazano u sljedećem primjeru: ENABLE_CACHE_DIAGNOSTICS=4 |