ตอนนี้ มา Tuneup ระบบให้กับ โปรแกรมของชาวบ้านเค้าครับ ซึ่งระบบนี้ใช้ database DB2 ทดลองจับเวลาในขั้นตอนของการ save ข้อมูลลง database ดู ปรากฏว่า ใช้เวลาประมาณ 3 นาที ทั้งๆ ที่ข้อมูลมีแค่ประมาณ 2000 record, field ก็ไม่ได้เยอะมาก แถม save ลง table เดียวอีกต่างหาก
ลองไปลองมา ก็ไปพบว่า table นี้มีการใช้ triggerr เยอะมาก ก็เลยลองเปลี่ยนให้ trigger ไปเรียก store procedure แทน ผลปรากฏว่า เร็วขึ้น 70 - 80% เลยที่เดียว
ที่เป็นแบบนี้ เพราะว่า การทำงานของ เจ้า trigger นี้ จะ compile ใหม่ทุกครั้ง ทำให้ มี overhead ในการทำงานสูงครับ ยิ่ง trigger มี step การทำงานเยอะ ยิ่งใช้เวลานาน
19 มิถุนายน 2552
สมัครสมาชิก:
ส่งความคิดเห็น (Atom)

ไม่มีความคิดเห็น:
แสดงความคิดเห็น