Správa používání paměti cache dotazů

Služba Oracle Analytics Cloud udržuje místní paměť cache sad výsledků dotazů v paměti cache dotazů.

Témata:

Paměť cache dotazů

Paměť cache dotazů umožňuje službě Oracle Analytics Cloud uspokojit mnoho následných požadavků dotazů bez přístupu k backendovým datovým zdrojům, a tím zvyšuje výkonnost dotazů. Položky v paměti cache dotazů se však mohou stát neaktuální, když dochází k aktualizacím v backendových datových zdrojích.

Výhody používání paměti cache

Nejrychlejším způsobem, jak zpracovat dotaz, je přeskočit rozsáhlé zpracování a použít předem vypočítanou odpověď.

Prostřednictvím používání paměti cache dotazů služba Oracle Analytics Cloud ukládá předem vypočítané výsledky dotazů do místní paměti cache. Pokud tyto výsledky může použít jiný dotaz, je veškeré zpracování databáze pro tento dotaz eliminováno. To může vést k velmi výraznému zlepšení průměrné doby odezvy na dotaz.

Schopnost odpovídat na dotazy z místní paměti cache kromě zlepšení výkonu také šetří síťové zdroje a zkracuje dobu zpracování na databázovém serveru. Síťové zdroje jsou zachovány, protože do služby Oracle Analytics Cloud nejsou vraceny průběžné výsledky. Spuštění dotazu bez použití databáze uvolní databázový server pro jinou práci. Pokud databáze používá systém doúčtování, může spuštění méně dotazů také snížit náklady v rozpočtu.

Další výhodou použití paměti cache k zodpovězení dotazu je úspora doby zpracování ve službě Oracle Analytics Cloud, zejména pokud jsou výsledky dotazu načteny z více databází. V závislosti na dotazu může na serveru probíhat rozsáhlé zpracování související se spojením a řazením. Pokud je dotaz již vypočítán, pak k tomuto zpracování nedojde, čímž se uvolní zdroje serveru pro další úkoly.

Používání paměti cache dotazů tedy může velmi výrazně zlepšit výkonnost dotazů a snížit síťový provoz, rozsah zpracování databáze a režii zpracování.

Náklady na používání paměti cache

Používání paměti cache dotazů nabízí mnoho zřejmých výhod, ale také přináší určité náklady.

  • Potenciální možnost ztráty aktuálnosti výsledků uložených v paměti cache

  • Administrativní náklady na správu paměti cache

Při správě paměti cache výhody zpravidla výrazně převažují nad náklady.

Úlohy správy spojené s využíváním paměti cache

Některé úlohy správy jsou spojeny s používáním paměti cache. Je nutné náležitě nastavit dobu zachování obsahu paměti cache pro jednotlivé fyzické tabulky s ohledem na četnost, s jakou dochází k aktualizaci dat v dané tabulce.

Když se četnost aktualizace obměňuje, musíte sledovat, kdy dojde ke změnám a v případě potřeby ručně vyprázdnit paměť cache.

Udržování aktuálního obsahu paměti cache

Pokud nejsou při změně dat v podkladových databázích vyprázdněny položky obsažené v paměti cache, dotazy mohou potenciálně vrátit výsledky, které nejsou aktuální.

Je nutné vyhodnotit, zda je to přijatelné. Může být přijatelné povolit, aby paměť cache obsahovala určitá neaktuální data. Musíte rozhodnout, jaká úroveň neaktuálnosti dat je přijatelná, a poté konfigurovat (a sledovat) sadu pravidel tak, aby těmto úrovním odpovídala.

Předpokládejme například, že aplikace analyzuje podniková data z velkého konsorcia podniků a vy každoročně vytváříte souhrny pro různé divize ve společnosti. Nová data podstatně neovlivní dotazy, protože nová data mají vliv pouze na souhrny dalšího roku. V tomto případě mohou kompromisní přístupy při rozhodování, zda vyprázdnit paměť cache, upřednostňovat ponechání položek v paměti cache.

Předpokládejme však, že databáze jsou aktualizovány třikrát denně a vy provádíte dotazy ohledně aktivit aktuálního dne. V tomto případě musíte paměť cache vyprazdňovat mnohem častěji nebo možná zvážit, zda ji vůbec používat.

Dalším scénářem je, že datovou sadu sestavujete v pravidelných intervalech (například jednou týdně) znovu od začátku. V tomto příkladu můžete vyprázdnit celou paměť cache jako součást procesu opětovného sestavení datové sady, čímž zajistíte, že v paměti cache nikdy nebudou neaktuální data.

Ať už je vaše situace jakákoli, musíte vyhodnotit, co je přijatelné, pokud jde o neaktuálnost informací vracených uživatelům.

Sdílení paměti cache mezi uživateli

Pokud je pro konkrétní fond připojení povoleno sdílené přihlášení, může být paměť cache sdílena mezi uživateli a není nutné naplnit ji pro každého uživatele.

Pokud není povoleno sdílené přihlášení a každý uživatel se musí k databázi přihlásit samostatně, pak každý uživatel generuje svůj vlastní záznam v paměti cache.

Aktivace nebo deaktivace používání paměti cache dotazů

Ve službě Oracle Analytics Cloud je paměť cache dotazů při výchozím nastavení aktivována. Používání paměti cache dotazů můžete aktivovat nebo deaktivovat na stránce Nastavení systému.

  1. Klikněte na volbu Konzola.
  2. Klikněte na Nastavení systému.
  3. Klikněte na položku Výkon a kompatibilita.
  4. Zapněte nebo vypněte funkci Paměť cache aktivována.
    • Zapnuto – Ukládání dat do paměti cache dotazů je aktivováno.
    • Vypnuto – Ukládání do paměti cache je deaktivováno.
  5. Klikněte na příkaz Použít.
    Chvíli počkejte, než se změny projeví v celém systému.

Sledování a správa paměti cache

Chcete-li provádět správu změn v podkladových databázích a sledovat položky v paměti cache, musíte vyvinout strategii správy paměti cache.

Potřebujete proces, který zneplatní položky v paměti cache, když se změní data v podkladových tabulkách, které tvoří položku v paměti cache, a proces ke sledování, identifikaci a odebrání všech nežádoucích položek v paměti cache.

Tato část obsahuje následující témata:

Volba strategie správy paměti cache

Volba strategie správy paměti cache závisí na nestálosti dat v podkladových databázích a předvídatelnosti změn, které tuto nestálost způsobují.

Záleží také na počtu a typech dotazů, které tvoří vaši paměť cache, a na využití těchto dotazů. Tato část poskytuje přehled různých přístupů ke správě paměti cache.

Deaktivace používání paměti cache pro systém

Pokud chcete zabránit vytváření jakýchkoli nových položek ve stávající paměti cache a používání této paměti cache libovolným novým dotazem, můžete deaktivovat používání paměti cache pro celý systém. Deaktivace používání paměti cache umožňuje později používání opět aktivovat bez ztráty jakékoli položky, která je v paměti cache uložena.

Dočasná deaktivace používání paměti cache je užitečná strategie v případě podezření, že máte v paměti cache neaktuální položky, ale před vyprázdněním těchto položek nebo celé paměti cache chcete ověřit, zda jsou skutečně neaktuální. Pokud zjistíte, že data uložená v paměti cache jsou stále relevantní, nebo poté, co jste bezpečně vyprázdnili problémové položky, můžete paměť cache bezpečně aktivovat. V případě potřeby před opětovnou aktivací paměti cache vyprázdněte celou paměť cache nebo pouze část spojenou s určitým modelem.

Paměť cache a určení doby zachování obsahu paměti cache pro stanovené fyzické tabulky

Pro každou fyzickou tabulku můžete nastavit atribut schopnosti uložení do paměti cache, který vám umožní určit, zda budou dotazy pro tuto tabulku přidány do paměti cache k zodpovězení budoucích dotazů.

Pokud aktivujete používání paměti cache pro tabulku, pak bude jakýkoli dotaz zahrnující tuto tabulku přidán do paměti cache. Při výchozím nastavení je možné používat paměť cache pro všechny tabulky, ale některé z nich nemusí být vhodnými kandidáty pro zahrnutí do paměti cache, pokud nepoužijete vhodné nastavení Zachování obsahu paměti cache. Předpokládejme například, že máte tabulku, do níž se ukládají data běžícího textu, která se aktualizují každou minutu. Můžete zadat, že chcete vyprázdnit záznamy pro danou tabulku každých 59 sekund.

Nastavení Zachování obsahu paměti cache můžete také použít k určení doby, po kterou budou položky této tabulky uloženy v paměti cache dotazů. To je užitečné pro datové zdroje, které jsou často aktualizovány.

  1. Nástroji pro správu modelu klikněte dvakrát ve fyzické vrstvě na fyzickou tabulku.

    Pokud používáte nástroj Semantic Modeler, viz Jaké jsou obecné vlastnosti fyzikální tabulky?.

  2. V dialogovém okně vlastností Fyzická tabulka na kartě Obecné proveďte jeden z následujících výběrů:

    • Chcete-li aktivovat používání paměti cache, vyberte volbu Lze uložit do paměti cache.

    • Chcete-li zabránit ukládání tabulky do paměti cache, výběr položky Lze uložit do paměti cache zrušte.

  3. Chcete-li nastavit dobu vypršení platnosti paměti cache, nastavte položku Doba zachování obsahu paměti cache a zadejte měrnou jednotku (dny, hodiny, minuty nebo sekundy). Pokud nechcete, aby platnost položek v paměti cache automaticky vypršela, vyberte volbu Platnost paměti cache nikdy nevyprší.

  4. Klikněte na tlačítko OK.

Jak změny sémantického modelu ovlivňují paměť cache dotazů

Když upravujete sémantické modely pomocí nástroje Semantic Modeler nebo Nástroje pro správu modelu, mohou mít provedené změny dopad na položky, které jsou uloženy v paměti cache. Pokud například změníte definici fyzického objektu nebo proměnné dynamického sémantického modelu, položky v paměti cache, které odkazují na tento objekt nebo proměnnou, již nemusí být platné. Tyto změny mohou vyžadovat vyprázdnění paměti cache. Je nutné mít na paměti dva možné scénáře: když upravujete stávající sémantický model a když vytváříte (nebo odesíláte) nový sémantický model.

Změny v sémantickém modelu

Když upravíte sémantický model nebo odešlete odlišný soubor .rpd, všechny změny, které provedete a které ovlivní položky v paměti cache, automaticky vyvolají vyprázdnění všech položek v paměti cache, které odkazují na změněné objekty. K vyprázdnění dojde při odeslání změn. Pokud například odstraníte fyzickou tabulku ze sémantického modelu, budou všechny položky v paměti cache, které se odkazují na tuto tabulku, při odeslání vyprázdněny. Jakékoli změny provedené v sémantickém modelu v logické vrstvě vyprázdní všechny položky v paměti cache pro tento sémantický model.

Změny proměnných globálního sémantického modelu

Hodnoty proměnných globálního sémantického modelu jsou aktualizovány daty, která jsou vrácena z dotazů. Když definujete proměnnou globálního sémantického modelu, vytvoříte inicializační blok nebo použijete již existující inicializační blok, který obsahuje dotaz SQL. Provedete také konfiguraci plánu pro spuštění dotazu a pravidelné aktualizace hodnoty proměnné.

Pokud se změní hodnota proměnné globálního sémantického modelu, stane se jakákoli položka v paměti cache, která používá tuto proměnnou ve sloupci, neaktuální. Když jsou data obsažená v této položce znovu potřebná, bude generována nová položka v paměti cache. Stará položka v paměti cache není ihned odebrána, ale zůstane zachována až do vymazání obvyklým mechanismem ukládání do paměti cache.

Strategie používání paměti cache

Jednou z hlavních výhod používání paměti cache dotazů je zlepšení zřejmé výkonnosti dotazů.

Při používání paměti cache dotazů může být užitečné naplnit ji v čase mimo pracovní dobu spuštěním dotazů a uložením jejich výsledků do paměti cache. Dobrá strategie naplnění vyžaduje znalost podmínek, při kterých dojde k úspěšnému přístupu do paměti cache.

Chcete-li naplnit paměť cache pro všechny uživatele, můžete naplnění uskutečnit následujícím dotazem:

SELECT User, SRs

Po naplnění paměti cache pomocí příkazu SELECT User, SRs poskytnou následující dotazy přístup do paměti cache:

SELECT User, SRs WHERE user = valueof(nq_SESSION.USER) (a uživatel byl USER1)
SELECT User, SRs WHERE user = valueof(nq_SESSION.USER) (a uživatel byl USER2)
SELECT User, SRs WHERE user = valueof(nq_SESSION.USER) (a uživatel byl USER3)

Tato část obsahuje následující témata:

Přístupy do paměti cache

Když je povoleno používat paměť cache, je u každého dotazu vyhodnoceno, zda je oprávněn k přístupu do paměti cache.

Přístup do paměti cache je umožněn, pokud služba Oracle Analytics Cloud dokáže použít paměť cache k zodpovězení dotazu, přičemž v takovém případě vůbec nepřejde do databáze. Služba Oracle Analytics Cloud může pomocí paměti cache dotazů odpovídat na dotazy na stejné nebo vyšší úrovni agregace.

O možnosti přistupovat do paměti cache rozhoduje mnoho faktorů. Tyto faktory jsou popsány v níže uvedené tabulce.

Faktor nebo pravidlo Popis

Podmnožina sloupců v seznamu SELECT se musí shodovat.

Všechny sloupce v seznamu SELECT nového dotazu se musí vyskytovat v dotazu obsaženém v paměti cache nebo je musí být možné vypočítat ze sloupců v dotazu, aby dotaz získal oprávnění k přístupu do paměti cache.

Toto pravidlo popisuje minimální požadavek pro přístup do paměti cache, ale splnění tohoto pravidla přístup do paměti cache nezaručuje. Platí také ostatní pravidla uvedená v této tabulce.

Sloupce v seznamu SELECT mohou být složeny z výrazů zahrnujících sloupce dotazů uložených v paměti cache.

Služba Oracle Analytics Cloud může k získání odpovědi na nový dotaz vypočítat výrazy zahrnující výsledky obsažené v paměti cache, ale všechny sloupce musí být obsaženy ve výsledku uloženém v paměti cache. Například dotaz:

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

využije při přístupu do paměti cache dotaz:

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

protože údaj averageprice lze vypočítat z údajů dollars a unitsales (averageprice = dollars / unitsales).

Klauzule WHERE musí být sémanticky stejná nebo musí být logickou podmnožinou.

Pokud má dotaz získat oprávnění k přístupu do paměti cache, musí být omezení klauzule WHERE buď ekvivalentní s výsledky uloženými v paměti cache, nebo podmnožinou těchto výsledků.

Klauzule WHERE, která je logickou podmnožinou dotazu uloženého v paměti cache, získá oprávnění k přístupu do paměti cache, pokud tato podmnožina splňuje jedno z následujících kritérií:

  • Podmnožina hodnot seznamu IN. Oprávnění k přístupu do paměti cache získají dotazy vyžadující méně prvků, než jich obsahuje seznam IN dotazu uloženého v paměti cache. Například následující dotaz:

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

    získá oprávnění k přístupu přes následující dotaz uložený v paměti cache:

    SELECT employeename, region
    FROM employee, geography
    WHERE region in ('NORTH', 'SOUTH', 'EAST', 'WEST')
  • Obsahuje méně (ale identických) omezení OR než výsledek uložený v paměti cache.

  • Obsahuje logickou podmnožinu doslovného srovnání. Například následující předpoklad:

    WHERE revenue < 1000

    získá oprávnění k přístupu do paměti cache přes srovnávací dotaz s předpokladem:

    WHERE revenue < 5000
  • Dotaz bez klauzule WHERE. Pokud je v paměti cache dotaz bez klauzule WHERE, pak dotazy, které splňují všechna ostatní pravidla pro přístup do paměti cache, získají oprávnění k přístupu do paměti cache bez ohledu na svou klauzuli WHERE.

Kromě toho musí být sloupce použité v klauzuli WHERE obsaženy v seznamu projekcí. Například následující dotaz:

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

Neumožní přístup do paměti cache pro dotaz v předchozím seznamu, protože položka REGION není uvedena v seznamu projekcí.

Dotazy týkající se pouze dimenze se musí přesně shodovat.

Pokud se dotaz týká pouze dimenze, což znamená, že neobsahuje žádný fakt ani ukazatel, pak přístup do paměti cache zajistí pouze přesná shoda se sloupci projekce dotazu uloženého v paměti cache. Toto chování zabrání falešně pozitivním shodám, když pro tabulku dimenzí existuje více logických zdrojů.

Dotazy se speciálními funkcemi se musí přesně shodovat.

Další dotazy, které obsahují speciální funkce, jako jsou funkce časových řad (AGO, TODATE a PERIODROLLING), funkce limitů a posunů (OFFSET a FETCH), relační funkce (ISANCESTOR, ISLEAF, ISROOT a ISSIBLING), funkce externích agregací a metriky obecného filtrování, se musí také přesně shodovat se sloupci projekce dotazu uloženého v paměti cache. V těchto případech musí pro filtr rovněž nastat přesná shoda. Pro metriky filtru, pokud lze metriku filtru přepsat jako klauzuli WHERE, je pak možné využít paměť cache podmnožiny.

Sada logických tabulek se musí shodovat.

K získání oprávnění pro přístup do paměti cache musí mít všechny příchozí dotazy stejnou sadu logických tabulek jako položka v paměti cache. Toto pravidlo zabrání falešným přístupům do paměti cache. Například dotaz SELECT * FROM product neodpovídá dotazu SELECT * FROM product, sales.

Hodnoty proměnných relace se musí shodovat, včetně proměnných relace zabezpečení.

Pokud logický příkaz SQL nebo fyzický příkaz SQL odkazuje na libovolnou proměnnou relace, musí se hodnoty proměnné relace shodovat. V opačném případě není přístup do paměti cache povolen.

Kromě toho se hodnoty proměnných relace, které jsou citlivé z hlediska zabezpečení, musí shodovat s hodnotami proměnných relace zabezpečení, které jsou definovány v sémantickém modelu, přestože samotný logický příkaz SQL na proměnné relace neodkazuje. Viz část Zajištění správných výsledků v paměti cache při používání zabezpečení databáze na úrovni řádek.

Ekvivalentní podmínky spojení

K získání oprávnění pro přístup do paměti cache musí být výsledná spojená logická tabulka požadavku nového dotazu shodná s výsledky (nebo jejich podmnožinou) v paměti cache.

Atribut DISTINCT musí být shodný.

Pokud dotaz uložený v paměti cache odstraňuje duplicitní záznamy pomocí zpracování DISTINCT (například SELECT DISTINCT...), pak požadavky pro sloupce uložené v paměti cache musí také zahrnovat zpracování DISTINCT. Při požadavku pro stejný sloupec bez zpracování DISTINCT nebudou v paměti cache nalezena žádná data.

Dotazy musí obsahovat kompatibilní úrovně agregace.

Dotazy, které vyžadují agregovanou úroveň informací, mohou použít výsledky obsažené v paměti cache na nižší úrovni agregace. Následující dotaz například požaduje množství prodané na úrovni dodavatele, regionu a města:

SELECT supplier, region, city, qtysold
FROM suppliercity

Následující dotaz požaduje množství prodané na úrovni města:

SELECT city, qtysold
FROM suppliercity

Druhý dotaz povede k přístupu do paměti cache přes první dotaz.

Omezená další agregace

Pokud je například v paměti cache uložen dotaz se sloupcem qtysold, pak požadavek RANK(qtysold) způsobí, že v paměti cache nebudou nalezena žádná data. Navíc dotaz, který požaduje data qtysold na úrovni země, může získat přístup do paměti cache z dotazu, který požaduje data qtysold na úrovni země a regionu.

Klauzule ORDER BY musí být složena ze sloupců obsažených v seznamu SELECT.

Dotazy s řazením podle sloupců, které nejsou obsaženy v seznamu SELECT, způsobí, že v paměti cache nebudou nalezena žádná data.

Diagnostika chování přístupu do paměti cache

Chcete-li lépe posoudit chování přístupu do paměti cache, nastavte proměnnou relace ENABLE_CACHE_DIAGNOSTICS na hodnotu 4, jak ukazuje následující příklad:

ENABLE_CACHE_DIAGNOSTICS=4

Zajištění správných výsledků v paměti cache při používání zabezpečení databáze na úrovni řádek

Při použití strategie zabezpečení databáze na úrovni řádek, jako je virtuální privátní databáze (VPD), jsou vrácené datové výsledky podmíněny ověřovacími údaji uživatele.

Z tohoto důvodu musí služba Oracle Analytics Cloud vědět, zda datový zdroj používá zabezpečení databáze na úrovni řádek a které proměnné jsou pro zabezpečení důležité.

Chcete-li zajistit, že přístup do paměti cache se bude týkat pouze položek paměti cache, které obsahují všechny proměnné citlivé z hlediska zabezpečení a odpovídají těmto proměnným, musíte správně konfigurovat objekt databáze a objekty proměnných relace v Nástroji pro správu modelu, a to následovně:

  • Objekt databáze. Ve fyzické vrstvě na kartě Obecné dialogového okna Databáze vyberte položku Virtuální privátní databáze a určete, že datový zdroj používá zabezpečení databáze na úrovni řádek.

    Pokud používáte zabezpečení databáze na úrovni řádek se sdíleným používáním paměti cache, pak musíte tuto volbu vybrat, abyste zabránili sdílení položek v paměti cache, jejichž proměnné citlivé z hlediska zabezpečení se neshodují.

  • Objekt proměnné relace. U proměnných souvisejících se zabezpečením vyberte v dialogovém okně Proměnná relace položku Citlivé z hlediska zabezpečení, aby byly při použití strategie zabezpečení databáze na úrovni řádek identifikovány jako citlivé z hlediska zabezpečení. Tato volba zajišťuje, že položky obsažené v paměti cache jsou označeny proměnnými citlivými z hlediska zabezpečení, což umožňuje zajistit shodu proměnných citlivých z hlediska zabezpečení u všech příchozích dotazů.

Spuštění sady dotazů k vyplnění paměti cache

Chcete-li maximalizovat potenciální přístupy do paměti cache, je jednou ze strategií spustit sadu dotazů k naplnění paměti cache.

Níže je uvedeno několik doporučení pro typy dotazů, které mají být použity při vytváření sady dotazů, pomocí níž bude naplněna paměť cache.

  • Běžné předem připravené dotazy. Dotazy, které jsou běžně spouštěny, zejména ty, jejichž zpracování je nákladné, jsou skvělým typem dotazů pro naplnění paměti cache. Vhodným příkladem běžných dotazů jsou dotazy, jejichž výsledky jsou vkládány do panelů.

  • Seznamy SELECT bez výrazů. Eliminace výrazů ve sloupcích seznamů SELECT rozšiřuje možnost přístupů do paměti cache. Sloupec v paměti cache s výrazem může odpovědět pouze na nový dotaz se stejným výrazem, zatímco sloupec v paměti cache bez výrazů může odpovědět na požadavek pro tento sloupec s jakýmkoli výrazem. Například požadavek v paměti cache, jako je:

    SELECT QUANTITY, REVENUE...
    

    může odpovědět na nový dotaz, jako je:

    SELECT QUANTITY/REVENUE... 
    

    ale nikoli naopak.

  • Bez klauzule WHERE. Pokud se ve výsledku v paměti cache nevyskytuje klauzule WHERE, lze jej použít k zodpovězení dotazů, které splňují pravidla přístupu do paměti cache pro seznam SELECT s libovolnou klauzulí WHERE, která obsahuje sloupce uvedené v seznamu projekcí.

Obecně platí, že nejlepšími dotazy pro naplnění paměti cache jsou dotazy, které výrazně spotřebovávají zdroje pro zpracování databáze a u kterých je pravděpodobné, že se budou opakovat. Dbejte na to, abyste nenaplnili paměť cache jednoduchými dotazy, které vracejí mnoho řádek. Takové dotazy (například SELECT * FROM PRODUCTS, ve kterých je výraz PRODUCTS mapován přímo na jedinou databázovou tabulku) vyžadují velmi malý rozsah zpracování databáze. Jejich výdajem je režie sítě a disku, což jsou faktory, které používání paměti cache nezmírní.

Když služba Oracle Analytics Cloud aktualizuje proměnné sémantického modelu, zkoumá modely a zjišťuje, zda se odkazují na tyto proměnné úložiště. Pokud se odkazují, pak služba Oracle Analytics Cloud vyprázdní celou paměť cache pro tyto modely. Viz část Jak změny sémantického modelu ovlivňují paměť cache dotazů.

Používání agentů k naplnění paměti cache dotazů

Agenty můžete konfigurovat tak, aby naplnily paměť cache dotazů služby Oracle Analytics Cloud.

Naplnění paměti cache může uživatelům zkrátit dobu odezvy při provádění analýz nebo zobrazení analýz, které jsou vložené na jejich panelech. Toho můžete dosáhnout plánováním agentů tak, aby spouštěly požadavky, které aktualizují tato data.

  1. Ve službě Oracle Analytics Cloud otevřete klasickou domovskou stránku a vyberte položku Agent (část Vytvořit).
  2. Na kartě Obecné vyberte položku Příjemce pro volbu Spustit jako. Individuálně přizpůsobené naplnění paměti cache využívá viditelnost dat jednotlivých příjemců k přizpůsobení obsahu doručování agentů pro jednotlivé příjemce.
  3. Na kartě Plán zadejte, kdy má být naplněna paměť cache.
  4. Volitelné: Vyberte položku Podmínka a vytvořte nebo vyberte podmíněný požadavek. Můžete mít například model, který určuje, kdy bude dokončen proces ETL. Sestavu založenou na tomto modelu můžete použít jako podmíněný trigger pro zahájení plnění paměti cache.
  5. Na kartě Obsah doručení vyberte jednotlivý požadavek nebo celou stránku panelu, pro kterou chcete naplnit paměť cache. Výběrem stránky panelu můžete ušetřit čas.
  6. Na kartě Příjemci vyberte jednotlivé uživatele nebo skupiny jako příjemce.
  7. Na kartě Cíle vymažte všechny cíle uživatelů a vyberte položku Oracle Analytics Server Cache.
  8. Uložte agent výběrem tlačítka Uložit v pravém horním rohu.

Jediný rozdíl mezi agenty naplnění paměti cache a ostatními agenty spočívá v tom, že automaticky vymažou předchozí paměť cache a nezobrazí se na panelu jako výstrahy.

Poznámka:

Agenty naplnění paměti cache vyprázdní pouze dotazy s přesnou shodou, takže se stále mohou vyskytovat neaktuální data. Zajistěte, aby strategie používání paměti cache vždy zahrnovala vyprázdnění paměti cache, protože dotazy agentů neřeší dotazy ad hoc ani procházení.

Nástroj pro správu modelu použijte k automatickému vymazání paměti cache pro určité tabulky

Vyprázdnění paměti cache odstraní položky z paměti cache dotazů a zachová váš obsah aktuální. Položky v paměti cache pro konkrétní tabulky můžete automaticky vyprázdnit nastavením pole Doba zachování obsahu paměti cache pro jednotlivé tabulky v  Nástroji pro správu modelu.

Poznámka:

Pokud používáte nástroj Semantic Modeler, viz Jaké jsou obecné vlastnosti fyzikální tabulky?.

To je užitečné pro datové zdroje, které jsou často aktualizovány. Pokud máte například tabulku, do níž se ukládají data běžícího textu, která se aktualizují každou minutu, můžete pole Doba zachování obsahu paměti cache nastavit tak, aby položky pro tuto tabulku byly vyprázdněny vždy po 59 sekundách. Viz Paměť cache a určení doby zachování obsahu paměti cache pro stanovené fyzické tabulky.