Memoptimized Rowstore Fast Ingest یکی از قابلیتهای جدید اوراکل در نسخه 19c است که می تواند در زمینه IOT بسیار کاربردی باشد قبلا در مطلبی تحت عنوان “Memoptimized Fast Ingest در اوراکل 19c“، سعی کردیم به طور مفصل این قابلیت را شرح دهیم. اوراکل در نسخه 23c بهبودهایی را در این زمینه ایجاد کرده است که موضوع این مستند خواهد بود.
در نسخه 19c و 21c امکان تنظیم MEMOPTIMIZE FOR WRITE برای جداول پارتیشن شده وجود نداشت:
Coected to Oracle Database 21c Enterprise Edition Release 21.0.0.0.0
SQL> create table TBL1 2 ( 3 id NUMBER not null, 4 text VARCHAR2(3000), 5 mydate date 6 ) 7 SEGMENT CREATION IMMEDIATE 8 partition by range ( mydate ) 9 interval ( numtoyminterval(1,'MONTH')) 10 ( 11 PARTITION p1 VALUES LESS THAN (TO_DATE('1-1-2015', 'DD-MM-YYYY')) 12 );
Table createdSQL> ALTER TABLE tbl1 MEMOPTIMIZE FOR WRITE;
ORA-62165: MEMOPTIMIZE FOR WRITE caot be enabled on table with specified partitioning type.
این قابلیت در نسخه 23c اضافه شد:
Coected to Oracle Database 23c Free, Release 23.0.0.0.0
SQL> create table TBL1 2 ( 3 id NUMBER not null, 4 text VARCHAR2(3000), 5 mydate date 6 ) 7 SEGMENT CREATION IMMEDIATE 8 partition by range ( mydate ) 9 interval ( numtoyminterval(1,'MONTH')) 10 ( 11 PARTITION p1 VALUES LESS THAN (TO_DATE('1-1-2015', 'DD-MM-YYYY')) 12 );
Table createdSQL> ALTER TABLE tbl1 MEMOPTIMIZE FOR WRITE;
Table altered
پشتیبانی از Compression
در نسخه 19c و 21c امکان تنظیم MEMOPTIMIZE FOR WRITE برای جداول compress شده وجود نداشت:
Coected to Oracle Database 21c Enterprise Edition Release 21.0.0.0.0
SQL> create table TBL1 2 ( 3 id NUMBER not null, 4 text VARCHAR2(3000) 5 ) 6 SEGMENT CREATION IMMEDIATE 7 MEMOPTIMIZE FOR WRITE 8 COMPRESS;
ORA-62146: MEMOPTIMIZE FOR WRITE feature caot be used with COMPRESS option.
در نسخه 23c این قابلیت به وجود آمد:
Coected to Oracle Database 23c Free, Release 23.0.0.0.0
SQL> create table TBL1 2 ( 3 id NUMBER not null, 4 text VARCHAR2(3000) 5 ) 6 SEGMENT CREATION IMMEDIATE 7 MEMOPTIMIZE FOR WRITE 8 COMPRESS;
Table created
پشتیبانی از LOB در نسخه 21c و 23c
در نسخه 19c امکان تنظیم قابلیت Fast Ingest برای جداولی که از LOBها استفاده می کردند وجود نداشت:
SQL*Plus: Release 19.0.0.0.0 - Production on Tue Sep 19 15:36:02 2023
SQL> create table usef.TBL1 2 ( 3 id NUMBER not null, 4 text VARCHAR2(3000), 5 PIC BLOB 6 ) 7 SEGMENT CREATION IMMEDIATE 8 MEMOPTIMIZE FOR WRITE;
ORA-62152: MEMOPTIMIZE FOR WRITE feature caot be enabled on table with LOBs.
این قابلیت در نسخه 23c به وجود آمد:
Coected to Oracle Database 23c Free, Release 23.0.0.0.0
SQL> create table usef.TBL1 2 ( 3 id NUMBER not null, 4 text VARCHAR2(3000), 5 PIC BLOB 6 ) 7 SEGMENT CREATION IMMEDIATE 8 MEMOPTIMIZE FOR WRITE;
Table created
ارائه خدمات مشاوره ، پشتیبانی و نصب و راه اندازی پایگاه داده اوراکل در سراسر کشور......................
تلفن: 09128110897
ایمیل:[email protected]
تالار های تخصصی...
ما را در سایت تالار های تخصصی دنبال میکنید
برچسب: نویسنده: خنجی بازدید: 66 تاريخ: شنبه 22 مهر 1402 ساعت: 19:23