Slider[Style1]

Style2

Style3[OneLeft]

Style3[OneRight]

Style4

Style5[ImagesOnly]

Style6

เพิ่มความเร็วในการ Join Table ด้วยการสร้าง index ในฐานข้อมูล MySQL

ที่มา : http://spalinux.com/2008/06/indexing_mysql_database

ปัญหานี้เกิดจากตอนได้ทำงานกับข้อมูลจังหวัด อำเภอ ตำบล หมู่บ้าน ทั่วประเทศ การ Join กันแต่ละที ใช้เวลานานมาก

ปัญหาแรกคือ Maximum execution time of 30 seconds exceeded เกิดจากการประมวลผลคำสั่งที่นานเกินไป วิธีแก้คือใส่คำสั่งนี้ไว้บนสุดของหน้าเว็บ ส่วนวิธีที่ให้ไปแก้ php.ini ผมว่าใช้จริงกับ host ไม่ได้หรอกครับ เพราะเราไม่สามารถเข้าไปแก้ php.ini ใน host ได้จริงๆ

สำหรับการทำ index ในฐานข้อมูล ผมจับประเด็นได้แค่ว่า
- ทำ index กับฟิลด์ที่ใช้ค้นหาบ่อยๆ หรือใช้เป็นเงื่อนไขการ JOIN TABLE
ยกตัวอย่าง ฐานข้อมุลที่ผมได้ใช้งานเพิ่มความเร็วในการ Join Table ด้วยการสร้าง index ในฐานข้อมูล MySQL

เวลา join ตารางทั้งหมดมันจะช้ามาก หลังจากทำแล้วเร็วขึ้นมาก
สำหรับการทำจะใช้ phpmyadmin ก็ได้ หรือว่าโปรแกรม SQL Client อื่นๆ เช่น SQLyog ก็ได้ครับ

- ไม่จำเป็นเสมอไป หลังจากทำ index แล้วจะเร็วขึ้น ขึ้นอยู่กับการออกแบบฐานข้อมูลและคำสั่งที่ใช้ค้นหาด้วย

เรื่องนี้ผมเห็นด้วยครับ สำหรับงานบางงานผมไม่ได้เป้นคนออกแบบฐานข้อมูล แต่เป้นคนใช้ฐานข้อมูลก็จำเป้นต้องหาวิธีของตัวเอง เพื่อให้การทำงานเร้วและสะดวกที่สุด

เอาเป็นว่าอย่างน้อยๆ ตอนนี้ ก็พอเข้าใจเรื่องการทำ Index มานิดหน่อยแล้วครับ

About Know2Play

This is a short description in the author block about the author. You edit it by entering text in the "Biographical Info" field in the user admin panel.
«
Next
Newer Post
»
Previous
Older Post

No comments:

Post a Comment