Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> ฐานข้อมูล

Oracle 19c Hybrid Partitioning: รวม Partition ภายนอกและภายในได้อย่างราบรื่น

ภาพรวม Hybrid Partitioning

Oracle 12c Release 2 รองรับ Partition บน External Tables Oracle 19c นำเสนอ Hybrid Partitioning ที่อนุญาตให้สร้าง Partition บางส่วนเป็น External (Flat Files) และบางส่วนเป็น Internal (Tablespace ใน Database)

ประโยชน์: ย้าย Partition เก่าที่ใช้น้อยไปเก็บที่ External Storage (Linux File System) ส่วน Partition ที่ใช้งานอยู่เก็บใน Database ในตัวอย่างสร้าง Hybrid Partitioned Table ชื่อ DATA 4 Partitions: DATA_2019, DATA_2020, DATA_2021, DATA_2022 ข้อมูลปี 2019, 2020, 2021 เก็บใน Flat Files ที่ /home/oracle/data_dir แยกด้วย Whitespace

ขั้นตอนการสร้างและทดสอบ

Step 1: Login Database และ Set Target PDB

เข้าสู่ Database และตั้งค่า PDB เป้าหมาย

Step 2: สร้าง Directory และ User

สร้าง Directory DATA_FILES_DIRdata_dir สร้าง User APP_USER ให้สิทธิ์ READ, WRITE บน Directory

Step 3: สร้าง Hybrid Partitioned Table

สร้าง Table DATA ใน APP_USER Partitions DATA_2019, DATA_2020, DATA_2021 เป็น External (Flat Files) Partition DATA_2022 เป็น Internal (ใน Database)

Step 4: Query ข้อมูลจากแต่ละ Partition

ทดสอบ Query ข้อมูลจากแต่ละ Partition:

  • DATA_2019 - ข้อมูลจาก Flat File
  • DATA_2020 - ข้อมูลจาก Flat File
  • DATA_2021 - ข้อมูลจาก Flat File
  • DATA_2022 - ข้อมูลจาก Internal Table

Step 5: ตรวจสอบว่า Table เป็น Hybrid Partitioned Table

Query Metadata ยืนยันว่าเป็น Hybrid Partitioned Table

Step 6: ทดสอบ Insert ข้อมูลใน Partition DATA_2022

Insert ล้มเหลว Error ORA-01950: no privileges on tablespace 'USERS' ยืนยันว่า Partition DATA_2022 เก็บใน USERS Tablespace (Internal) หลังให้ Quota บน USERS Tablespace สามารถ Insert ได้

Step 7: ตรวจสอบการจัดเก็บข้อมูล

Query แสดงว่าเฉพาะ Partition DATA_2022 เก็บใน Database ส่วน Partition อื่นๆ เป็น External

สรุป

Hybrid Partitioning ช่วยย้าย Partition เก่าที่ไม่ Active ไปเก็บที่ Storage ภายนอกที่ถูกกว่า ขณะที่ข้อมูลที่ Active อยู่ใน Oracle Database ช่วยลดต้นทุน Storage และจัดการข้อมูลได้มีประสิทธิภาพมากขึ้น