สอบถามการออกแบบ ฐานข้อมูล MySQL ที่มีข้อมูลจำนวนมาก หลายล้านแถว
set index ตัวที่ ใช้ where หรือ ยังครับ
Date :
2014-10-03 13:49:27
By :
gaowteen
ค้นหาเป็นบางส่วนของ ฟีล์ด
หรือว่าค้นทั้งฟีลด์
เช่น where a like "%abc%"
หรือ where a = "abc"
ถ้าเป็นแบบแรก like การสร้าง index ไม่ช่วยอะไรเลยครับ
แต่ถ้าเป็นแบบที่ 2 การสร้าง index ช่วยได้เยอะครับ
ปล. เพิ่มเติม
แบ่ง table เป็น section ย่อยๆ
กำหนด การเลือกแบ่งไปตาม section
ประวัติการแก้ไข 2014-10-04 07:48:34
Date :
2014-10-03 19:56:35
By :
Chaidhanan
คุณพระ 40 ล้านเรคคอร์ด ลำพังโค้ดคงช่วยอะไรมากไมไ่ด้แล้ว คงต้องพึ่งพวกของไม่ฟรีแล้วกระมัง
Date :
2014-10-03 21:40:44
By :
meannerss
แยกทำ datawarehouse
Date :
2014-10-03 22:00:32
By :
.ผ่านมา
set index แล้วครับ
เลือกข้อมูลทั้งหมด where id = "100" แต่มี relational กับตารางอื่นๆ อีกด้วย
ก็ยังช้าสงสัยว่าแถวเยอะเกินกำลังหาวิธีอยู่ว่าจะทำไงดีหรือจะเพิ่มคอลัมแต่
แล้วลดจำนวนแถวเอา ถ้าใช้ oracle จะไวกว่าหรอครับ หรือว่าจะเปลี่ยนเป็น NoSQL ยังไม่เคยใช้
Date :
2014-10-07 14:23:20
By :
VsuperV
แยกข้อมูลที่ไม่ใช่ไปจัดเก็บไว้ใน Table อื่นครับ ๆ ไม่งั้นก็ไม่น่าจะเร็วครับ เพราะหลักล้าน Record เมื่อ JOIN กันแล้ว มีช้าแน่นอนครับ
Date :
2014-10-07 14:34:47
By :
mr.win
Load balance : Server 03