ขอสวนทางนิดนึง คือ หากต้องการลด CPU Time ต้องใช้ I/O Time เพิ่มขึ้น
ดังนั้น ต้องเป็น 1 table 100krecords
แต่หากถามเรื่องความเร็ว query กรณี return 1 rows จาก 100ks เป็นวิธี split partition เป็น 2 tables ดีกว่า
ทั้งมีและไม่มี index
หากถามผม คงอยากให้เกิด Time CPU > I/O แต่เมื่อถึงจุดนึง คงต้องมาปรับ trade-off เพื่อให้เกิดการคุ้มค่าสูงสุด
ลองหา tools มาปรับค่า mysql เช่น tuning-primer, phpmyadmin เอง ก็มี recommend เป็นต้น
หรือลองปรับการ call db ให้น้อยลง
ไปละครับ ...
ถ้า table ของผมมี 100,000 record
ถ้าใช้ 1 table 100,000 record เลย
กับแบ่งเป็น 2 table table ละ 50,000 record
อันไหนจะใช้ cpu น้อยกว่ากัน
หรือไม่มีผลใดๆเลย
ชี้แนะด้วยครับ