Database
 sql >> डेटाबेस >  >> RDS >> Database

फ्लैश कैश में टेबल पिन करना

एक्सडाटा स्मार्ट फ्लैश कैश (ईएसएफसी) में ऑब्जेक्ट स्वचालित रूप से कैश किए जाते हैं, हालांकि डीबीए यह लागू कर सकता है कि ऑब्जेक्ट फ्लैश कैश में रखा गया है। CELL_FLASH_CACHE स्टोरेज क्लॉज एट्रिब्यूट ईएसएफसी के भीतर ब्लॉकों की प्राथमिकता को नियंत्रित करता है और स्मार्ट स्कैन ब्लॉकों के उपचार को भी नियंत्रित करता है। तीन संभावित सेटिंग्स हैं

  • डिफ़ॉल्ट:स्वचालित कैशिंग तंत्र प्रभाव में है। यह डिफ़ॉल्ट मान है।
  • कोई नहीं:इस ऑब्जेक्ट को कभी भी कैश न करें।
  • रखें:वस्तु को अधिमान्य दर्जा दिया जाना चाहिए।

ध्यान दें कि यह पदनाम स्मार्ट स्कैन के डिफ़ॉल्ट व्यवहार को भी बदल देता है जिससे उन्हें कैशे और डिस्क दोनों से पढ़ने की अनुमति मिलती है।

यहां "ALTER TABLE" कमांड का उपयोग करके CELL_FLASH_CACHE स्टोरेज क्लॉज को बदलने का एक उदाहरण दिया गया है:

ESFC में टेबल पिन करने के लिए:


SQL> ALTER TABLE llamadas STORAGE (CELL_FLASH_CACHE KEEP);

Table altered.

तालिका बनाते समय यह संग्रहण विशेषता भी निर्दिष्ट की जा सकती है:


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.

संग्रहण खंड सेट करना CELL_FLASH_CACHE करने के लिए रखें , स्मार्ट स्कैन डेटा को सीधे मेमोरी से पढ़ने का प्रयास करेगा। इस स्थिति का विश्लेषण "सेल फ्लैश कैश रीड हिट . की जांच करके किया जा सकता है ":


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

फ़्लैश कैश . से बड़े टेबल पर स्कैन ऑपरेशन अप्रभावित रहते हैं जब तक तालिका CELL_FLASH_CACHE KEEP क्लॉज से संबद्ध न हो जैसा कि चित्र 1 में दिखाया गया है।

                                      चित्र 1:ES पर CELL_FLASH_CACHE संग्रहण सेटिंग का परिणाम

ESFC में किसी तालिका को अन-पिन करने के लिए:


SQL> ALTER TABLE llamadas STORAGE (CELL_FLASH_CACHE DEFAULT);

DBA_SEGMENTS, DBA_TABLES या DBA_INDEXES को क्वेरी करके CELL_FLASH_CACHE क्लॉज के लिए वर्तमान सेटिंग्स की जांच कर सकते हैं:


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. SQL में दो कॉलम कैसे गुणा करें

  2. IRI कार्यक्षेत्र में Teradata से जुड़ना

  3. कुबेरनेट्स एडब्ल्यूएस के साथ जेनकींस का उपयोग करना, भाग 3

  4. SQL ऑपरेटर क्या हैं और वे कैसे काम करते हैं?

  5. बड़े आरडीएस इंस्टेंस पर कब स्विच करें