Database
 sql >> Baza danych >  >> RDS >> Database

Przypinanie tabeli w pamięci Flash Cache

Obiekty są automatycznie buforowane w pamięci podręcznej Exadata Smart Flash Cache (ESFC), jednak administrator może wymusić przechowywanie obiektu w pamięci podręcznej flash. CELL_FLASH_CACHE Atrybut klauzuli przechowywania kontroluje priorytety bloków w ESFC, a także traktowanie bloków Smart Scan. Istnieją trzy możliwe ustawienia

  • DOMYŚLNE:Działa mechanizm automatycznego buforowania. To jest wartość domyślna.
  • BRAK:Nigdy nie buforuj tego obiektu.
  • ZACHOWAJ:Obiekt powinien mieć status preferencyjny.

Zwróć uwagę, że to oznaczenie zmienia również domyślne zachowanie inteligentnych skanowań, umożliwiając im odczytywanie zarówno z pamięci podręcznej, jak iz dysku.

Oto przykład zmiany klauzuli przechowywania CELL_FLASH_CACHE za pomocą polecenia „ALTER TABLE”:

Aby przypiąć tabelę w ESFC:


SQL> ALTER TABLE llamadas STORAGE (CELL_FLASH_CACHE KEEP);

Table altered.

Ten atrybut przechowywania można również określić podczas tworzenia tabeli:


SQL> create table region
2 (
3 name varchar2(30 byte) not null enable,
4 num number not null enable,
5 buddy_region number default null,
6 change_state char(1 byte) default null,
7 weights varchar2(500 byte) default null,
8 primary key (name)
9 using index pctfree 10 initrans 2 maxtrans 255 compute statistics
10 tablespace tbs_idx enable
11 )
12 (cell_flash_cache keep)
13 tablespace tbs_data;

Table created.

Ustawianie klauzuli przechowywania CELL_FLASH_CACHE ZACHOWAĆ , inteligentne skanowanie spróbuje odczytać dane bezpośrednio z pamięci. Sytuację tę można przeanalizować, sprawdzając „trafienia odczytu pamięci podręcznej pamięci flash komórki „:


SQL> select * from llamadas;

SQL> select name, value from v$sysstat where name in ('physical read total IO requests','cell flash cache read hits');

NAME    VALUE 
------ ------------ 
physical read total IO requests 1274902412
cell flash cache read hits       984578330

Pamięć podręczna Flash nie ma wpływu na operacje skanowania na dużym stole chyba że tabela jest powiązana z klauzulą ​​CELL_FLASH_CACHE KEEP, jak pokazano na rysunku 1.

                                            Rysunek 1:Wynik ustawienia pamięci CELL_FLASH_CACHE w ESFC

Aby odpiąć tabelę w ESFC:


SQL> ALTER TABLE llamadas STORAGE (CELL_FLASH_CACHE DEFAULT);

Może sprawdzić bieżące ustawienia klauzuli CELL_FLASH_CACHE, wysyłając zapytanie do DBA_SEGMENTS, DBA_TABLES lub DBA_INDEXES:


SQL> SELECT segment_name,segment_type,cell_flash_cache FROM dba_segments where segment_name = 'LLAMADAS';

SEGMENT_NAME SEGMENT_TYPE CELL_FLASH_CACHE
------------- ------------- ---------------
LLAMADAS TABLE KEEP


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Poziom izolacji SNAPSHOT

  2. Model danych do śledzenia Twojej najcenniejszej własności

  3. Używanie flagi śledzenia 3226 do pomijania rejestrowania kopii zapasowej dziennika

  4. Ograniczenia Optymalizatora z filtrowanymi indeksami

  5. Używanie tabel konfiguracji do definiowania rzeczywistego przepływu pracy