W jaki sposób zmiany dokonywane w modelu semantycznym wpływają na pamięć podręczną zapytań

Jeśli modele semantyczne są modyfikowane za pomocą narzędzia Semantic Modeler lub narzędzia Model Administration Tool, to dokonywane zmiany wpływają na wpisy przechowywane w pamięci podręcznej. Na przykład, jeśli zostanie zmieniona definicja obiektu fizycznego lub dynamicznej zmiennej modelu semantycznego, to wpisy w pamięci podręcznej, które odwołują się do tego obiektu lub tej zmiennej, mogą stać się niepoprawne. Zmiany te mogą wymagać opróżnienia pamięci podręcznej. Istnieją dwie sytuacje, o których należy pamiętać: zmiana istniejącego modelu semantycznego lub utworzenie (bądź wysłanie) nowego modelu semantycznego.

Zmiany w modelu semantycznym

Jeśli model semantyczny zostanie zmodyfikowany albo zostanie wysłany inny plik .rpd, to wszelkie zmiany wpływające na wpisy w pamięci podręcznej automatycznie powodują opróżnienie pamięci podręcznej ze wszystkich wpisów odwołujących się do zmienionych obiektów. Opróżnienie nastąpi, gdy zmiany zostaną wysłane. Na przykład, jeśli z modelu semantycznego zostanie usunięta tabela fizyczna, to - po zarejestrowaniu modelu - z pamięci podręcznej zostaną usunięte wszystkie wpisy odwołujące się do tej tabeli. Wszelkie zmiany dokonywane w modelu semantycznym w warstwie logicznej powodują opróżnienie pamięci podręcznej ze wszystkich wpisów dla tego modelu.

Zmiany w globalnych zmiennych modelu semantycznego

Wartości globalnych zmiennych modelu semantycznego są odświeżane na podstawie danych zwracanych przez zapytania. Definiując globalną zmienną modelu semantycznego, tworzy się blok inicjalizacyjny albo używa bloku już istniejącego, zawierającego zapytanie SQL. Można także skonfigurować harmonogram uruchamiania zapytania i okresowego odświeżania wartości danej zmiennej.

Jeśli wartość globalnej zmiennej modelu semantycznego zmieni się, to wszystkie wpisy w pamięci podręcznej, używające tej zmiennej w kolumnie, ulegną dezaktualizacji i - gdy dane z takiego wpisu będą znów potrzebne - zostanie wygenerowany nowy wpis w pamięci podręcznej. Stary wpis nie jest od razu usuwany z pamięci podręcznej, lecz pozostaje w niej, aż zostanie usunięty przez zwykły mechanizm czyszczenia pamięci podręcznej.