INSERT Data To DBMS
ผมได้รับมอบหมาย จากเพื่อให้ลองใช้ Database Management System (DBMS) คือ MySQL กับการทดสอบในครั้งนี้
ผมได้ลองการ Query โดยการ INSERT ข้อมูลจำนวนมาก ตอนแรกช้ามากเลยใช้ การ LOAD
คือ
LOAD DATA LOCAL INFILE 'loaction file' INTO TABLE table FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' ;
ลองกลับไปแก้โค้ด แก้ในส่วน commit โดยปกติโค้ดจะต้องเข้า function และสร้าง object connect mysql ที่เป็นแบบ local variable เพื่อติดต่อกับ DMBS เลยแก้ให้ สร้าง object connect mysql เป็นแบบ global variable แทนเพราะจะทำการ commit ในตอนจบ ครั้งเดียว
รูป โค้ด INSERT แบบเก่า
รูป โค้ด INSERT แบบใหม่
100 row
|
1k row
|
10k row
| |
Old insert
|
7.3 s
|
87.2 s
|
> 30 min
|
New insert
|
0.23 s
|
2.62 s
|
59.82 s
|
รูป ตารางเปรียบเทียบโค้ด
Problem/Solution
การ INSERT ช้ามาก
Decision
แก้โค้ดโดยการสร้าง object connect mysql เป็นแบบ global variable เพื่อ commit ตอนจบโปรแกรม ครั้งเดียว
No comments:
Post a Comment