Database
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Database

Ghim Bảng trong Bộ nhớ đệm Flash

Các đối tượng được tự động lưu vào bộ đệm ẩn trong Exadata Smart Flash Cache (ESFC), tuy nhiên, DBA có thể thực thi một đối tượng được lưu trong bộ đệm flash. CELL_FLASH_CACHE thuộc tính mệnh đề lưu trữ kiểm soát mức độ ưu tiên của các khối trong ESFC và cũng như việc xử lý các khối Quét thông minh. Có ba cài đặt có thể có

  • DEFAULT:Cơ chế lưu vào bộ nhớ đệm tự động đang có hiệu lực. Đây là giá trị mặc định.
  • KHÔNG CÓ:Không bao giờ lưu vào bộ nhớ cache đối tượng này.
  • GIỮ:Đối tượng phải được ưu đãi.

Lưu ý rằng chỉ định này cũng thay đổi hành vi mặc định của Quét thông minh cho phép chúng đọc từ cả bộ nhớ cache và đĩa.

Dưới đây là một ví dụ về việc thay đổi mệnh đề lưu trữ CELL_FLASH_CACHE bằng lệnh “ALTER TABLE”:

Để ghim một bảng trong ESFC:


SQL> ALTER TABLE llamadas STORAGE (CELL_FLASH_CACHE KEEP);

Table altered.

Thuộc tính lưu trữ này cũng có thể được chỉ định khi bảng được tạo:


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.

Đặt điều khoản lưu trữ CELL_FLASH_CACHE để GIỮ , tính năng quét thông minh sẽ cố gắng đọc dữ liệu trực tiếp từ bộ nhớ. Tình huống này có thể được phân tích bằng cách kiểm tra “ số lần truy cập đọc bộ nhớ đệm flash di động “:


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

Các hoạt động quét trên một bảng lớn không bị ảnh hưởng bởi Flash Cache trừ khi bảng được liên kết với mệnh đề CELL_FLASH_CACHE KEEP như thể hiện trong hình 1.

Hình 1:Kết quả cài đặt lưu trữ CELL_FLASH_CACHE trên ESFC

Để bỏ ghim một bảng trong ESFC:


SQL> ALTER TABLE llamadas STORAGE (CELL_FLASH_CACHE DEFAULT);

Có thể kiểm tra cài đặt hiện tại cho mệnh đề CELL_FLASH_CACHE bằng cách truy vấn DBA_SEGMENTS, DBA_TABLES hoặc 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. Mô hình dữ liệu cho ứng dụng thời tiết

  2. SQL IN so với SQL EXISTS

  3. Các kiểu dữ liệu SQL:5 lựa chọn tồi tệ nhất bạn cần dừng ngay hôm nay

  4. Một lý do khác để tránh sp_updatestats

  5. Đặc quyền của người dùng cơ sở dữ liệu là gì?