องค์ความรู้เกี่ยวกับ In-memory Database ฐานข้อมูลที่ทำงานในหน่วยความจำ

องค์ความรู้เกี่ยวกับ In-memory Database ฐานข้อมูลที่ทำงานในหน่วยความจำ

เป็นการจัดเก็บ data ทั้งหมดไว้ใน memory ทำให้การเข้าถึงข้อมูลรวดเร็วกว่าค่อนข้างมาก เพราะ memory มีการคำนวนซับซ้อนน้อยกว่า HDD

เป็นการจัดเก็บ data ทั้งหมดไว้ใน memory ทำให้การเข้าถึงข้อมูลรวดเร็วกว่าค่อนข้างมาก เพราะ memory มีการคำนวนซับซ้อนน้อยกว่า HDD

จากภาพ การเข้าถึง data แบบเก่า ต้องมีการ load data ไปไว้ในที่หนึ่ง เพื่อให้ application นำไปใช้งาน
แต่แบบใหม่ application สามารถเข้าถึง data ได้ทันที เพระ application และ data สามารถทำงานอยู่ในที่เดียวกัน

จากภาพที่ละเอียดมากขึ้น จะเห็นว่าแบบเก่าจะเก็บ data ใน HDD ทำให้เมื่อมีการเรียกใช้ data จาก Application จะต้องใช้เวลาค่อนข้างนานในการ load data จาก HDD มาที่ DRAM

แต่ In-memory แบบใหม่จะเก็บ data ใน DRAM โดยไม่มีการใช้ disk I/O เลย ทำให้เรียกใช้ data ได้รวดเร็วกว่า และยังสามารถทำ backup, recovery, transaction log ไว้บน HDD ได้

 

ตัวอย่าง In-memory ของ Oracle Timesten

จากภาพ ในแบบเก่า Oracle จะมีการ load data จาก HDD ไปไว้ที่ buffer pool จัดเก็บเป็น datablock โดยมี RDBMS Query Optimizer เป็นตัวควบคุมการทำงานระหว่าง Application และ buffer pool

แต่ In-memory แบบใหม่ จะนำ data ไปเก็บไว้ที่ memory เลย จึงไม่มีการสร้าง datablock และ buffer pool ทำให้ application สามารถเข้าถึง data ได้โดยตรง โดยมี TimesTen Query Optimizer เป็นตัวควบคุมการทำงาน