DB แรงขึ้นแบบไม่ต้องจ่ายแพง! เคล็ดลับที่ไม่บอกต่อ ประหยัด...

DB แรงขึ้นแบบไม่ต้องจ่ายแพง! เคล็ดลับที่ไม่บอกต่อ ประหยัดเงินในกระเป๋าแบบเหลือเชื่อ

webmaster

저비용으로 데이터베이스 성능 향상하는 방법 - Modern Bangkok Office**

"A professional Thai businesswoman in a stylish, modest dress, working on a...

หลายครั้งที่เราต้องเผชิญหน้ากับปัญหาฐานข้อมูลทำงานช้าลง ทั้งๆ ที่ไม่ได้มีการใช้งานที่เปลี่ยนแปลงไปมากนัก ทำให้เว็บไซต์หรือแอปพลิเคชันของเราหน่วงและส่งผลเสียต่อประสบการณ์ของผู้ใช้งานโดยตรง ซึ่งแน่นอนว่าการลงทุนกับฮาร์ดแวร์ใหม่ๆ เพื่อเพิ่มประสิทธิภาพนั้นอาจไม่ใช่ทางออกที่ยั่งยืนเสมอไป เพราะมีวิธีอีกมากมายที่เราสามารถทำได้โดยไม่ต้องเสียเงินเยอะ แถมยังได้ผลลัพธ์ที่น่าพอใจอีกด้วย จากประสบการณ์ตรงของผมในการปรับแต่งฐานข้อมูลขนาดกลาง พบว่าหลายครั้งปัญหาไม่ได้อยู่ที่ขนาดของฐานข้อมูล แต่อยู่ที่การจัดการที่ไม่ถูกต้องต่างหากเทรนด์ล่าสุดในวงการ database คือการใช้ AI เข้ามาช่วย optimize queries และ index โดยอัตโนมัติ ซึ่งช่วยลดภาระของ DBA ลงได้มาก นอกจากนี้ การใช้ cloud database ก็เป็นที่นิยมมากขึ้นเรื่อยๆ เพราะมีความยืดหยุ่นและ scalability สูง ตอบโจทย์ความต้องการของธุรกิจที่เปลี่ยนแปลงไปอย่างรวดเร็ว ในอนาคตเราอาจได้เห็นเทคโนโลยี database ที่ “ฉลาด” มากขึ้น สามารถเรียนรู้พฤติกรรมการใช้งานและปรับแต่งตัวเองให้เหมาะสมได้ตลอดเวลามาดูวิธีเพิ่มประสิทธิภาพ database แบบประหยัดงบกันครับ!

ปรับแต่ง Query ให้คมกริบ: หัวใจของการประหยัดทรัพยากร

저비용으로 데이터베이스 성능 향상하는 방법 - Modern Bangkok Office**

"A professional Thai businesswoman in a stylish, modest dress, working on a...
ประสิทธิภาพของ query มีผลอย่างมากต่อการทำงานของ database ครับ ลองนึกภาพว่าเรามีคำสั่งที่ซับซ้อนและใช้เวลานานกว่าจะดึงข้อมูลออกมาได้ นั่นหมายถึงทรัพยากรของ server ที่ต้องถูกใช้ไปอย่างสิ้นเปลือง ซึ่งไม่ดีต่อทั้งความเร็วของ application และค่าใช้จ่ายโดยรวมของเราครับ

วิเคราะห์ Query Execution Plan อย่างละเอียด

* เครื่องมือวิเคราะห์ Query Execution Plan เป็นเหมือนแผนที่นำทางที่ช่วยให้เราเห็นภาพรวมว่า query ของเราทำงานอย่างไร มีขั้นตอนอะไรบ้าง และตรงไหนที่เป็นคอขวดที่ทำให้ query ช้าลง ลองใช้เครื่องมือนี้เพื่อหาจุดที่ต้องปรับปรุงดูครับ ผมเคยเจอ query ที่ใช้เวลาเป็นนาที แต่พอวิเคราะห์ execution plan แล้วพบว่า index ไม่ถูกใช้งาน ทำให้ต้องปรับปรุง index ใหม่ หลังจากนั้น query ก็เร็วขึ้นเป็นวินาทีเลยครับ
* การอ่าน Query Execution Plan ไม่ใช่เรื่องยากอย่างที่คิดครับ เริ่มจากดูว่ามีขั้นตอนไหนที่ใช้เวลานานผิดปกติ (เช่น Table Scan แทนที่จะเป็น Index Seek) แล้วลองหาวิธีแก้ไข เช่น สร้าง index เพิ่ม หรือปรับปรุง query ให้ใช้ index ได้ดีขึ้น
* อย่าลืมอัปเดตสถิติของ table อย่างสม่ำเสมอด้วยนะครับ เพราะ Query Optimizer จะใช้สถิติเหล่านี้ในการวางแผนการทำงานของ query ถ้าสถิติไม่อัปเดต Optimizer อาจจะเลือกแผนการทำงานที่ไม่เหมาะสม ทำให้ query ช้าลงได้

เขียน Query ให้ตรงจุด เลี่ยงการใช้ฟังก์ชันที่ไม่จำเป็น

* การเขียน query ที่ดีคือการเขียน query ที่ดึงข้อมูลเฉพาะที่ต้องการเท่านั้นครับ หลีกเลี่ยงการใช้ ถ้าไม่จำเป็น เพราะจะทำให้ database ต้องอ่านข้อมูลทั้งหมดจาก table ถึงแม้เราจะไม่ได้ใช้ก็ตาม
* ฟังก์ชันบางอย่างใน SQL อาจทำให้ query ช้าลงได้ครับ เช่น ฟังก์ชันที่ต้องทำงานกับข้อมูลจำนวนมาก หรือฟังก์ชันที่ซับซ้อน ลองหาวิธีอื่นที่ง่ายกว่า หรือถ้าจำเป็นต้องใช้ฟังก์ชันจริงๆ ลองพิจารณาว่าสามารถปรับปรุงประสิทธิภาพได้หรือไม่
* การใช้ หลายๆ table อาจทำให้ query ซับซ้อนและช้าลงได้ ลองพิจารณาว่าจำเป็นต้อง JOIN table เหล่านั้นทั้งหมดหรือไม่ หรือสามารถใช้ subquery หรือ CTE (Common Table Expression) เพื่อแบ่ง query ออกเป็นส่วนๆ ได้

Index ให้ถูกที่ถูกเวลา: ทางลัดสู่ข้อมูลที่ต้องการ

Advertisement

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

เลือก Column ที่จะทำ Index อย่างชาญฉลาด

* เลือก column ที่มักถูกใช้ในการค้นหา (WHERE clause) หรือ JOIN เป็นอันดับแรกครับ Column เหล่านี้คือตัวแปรสำคัญที่จะช่วยให้ query ทำงานได้เร็วขึ้นอย่างเห็นได้ชัด ผมเคยเจอกรณีที่ลูกค้าค้นหาข้อมูลลูกค้าจากเบอร์โทรศัพท์ แต่ไม่มี index บน column นั้น พอสร้าง index แล้วลูกค้าแฮปปี้มาก เพราะค้นหาได้เร็วขึ้นเยอะ
* พิจารณา composite index (index ที่สร้างจากหลาย column) สำหรับ query ที่มีการค้นหาโดยใช้หลาย column พร้อมกันครับ แต่ระวังอย่าสร้าง composite index ที่มีจำนวน column มากเกินไป เพราะจะทำให้ index ใหญ่และอัปเดตช้า
* หลีกเลี่ยงการสร้าง index บน column ที่มีการแก้ไขบ่อยๆ เพราะทุกครั้งที่มีการแก้ไขข้อมูลใน column นั้น database จะต้องอัปเดต index ด้วย ทำให้เสียเวลาและทรัพยากร

Monitor และปรับปรุง Index อย่างสม่ำเสมอ

* เครื่องมือ database ส่วนใหญ่จะมีฟังก์ชันในการ monitor การใช้งาน index ครับ ลองใช้เครื่องมือเหล่านี้เพื่อดูว่า index ไหนที่ถูกใช้งานบ่อย และ index ไหนที่ไม่ค่อยได้ใช้งาน
* index ที่ไม่ค่อยได้ใช้งานอาจเป็นภาระมากกว่าเป็นประโยชน์ ลองพิจารณา drop index เหล่านั้นเพื่อลดขนาดของ database และเพิ่มความเร็วในการอัปเดตข้อมูล
* การปรับปรุง index อาจรวมถึงการ rebuild index เพื่อจัดเรียงข้อมูลใน index ใหม่ หรือการ reorganize index เพื่อลด fragmentation (ข้อมูลใน index กระจัดกระจาย)

Caching: เทคนิคเบื้องต้นที่มองข้ามไม่ได้

Caching คือการเก็บข้อมูลที่ถูกใช้งานบ่อยๆ ไว้ในหน่วยความจำที่เข้าถึงได้เร็วกว่า เพื่อลดภาระในการดึงข้อมูลจาก database ซ้ำๆ

Implement Caching ใน Application Layer

* Caching ใน application layer เป็นวิธีที่ง่ายและมีประสิทธิภาพในการลด load บน database ครับ ลองใช้ caching library หรือ framework ที่มีอยู่แล้ว เพื่อเก็บข้อมูลที่ถูกใช้งานบ่อยๆ ไว้ในหน่วยความจำของ application server
* กำหนดเวลาหมดอายุ (expiration time) สำหรับ cache เพื่อให้ข้อมูลใน cache สดใหม่อยู่เสมอ และหลีกเลี่ยงการแสดงข้อมูลที่ล้าสมัย
* พิจารณาใช้ cache eviction policy (นโยบายการนำข้อมูลออกจาก cache) เช่น Least Recently Used (LRU) เพื่อให้ cache เก็บเฉพาะข้อมูลที่ถูกใช้งานบ่อยที่สุด

Leverage Database Caching Mechanism

* database ส่วนใหญ่จะมี caching mechanism ในตัวอยู่แล้ว เช่น query cache หรือ buffer pool ลองปรับแต่งค่าเหล่านี้ให้เหมาะสมกับการใช้งานของเรา เพื่อให้ database สามารถ cache ข้อมูลได้อย่างมีประสิทธิภาพ
* query cache จะเก็บผลลัพธ์ของ query ที่ถูกใช้งานบ่อยๆ ไว้ในหน่วยความจำ ทำให้ query ที่เหมือนกันในครั้งต่อไปสามารถดึงข้อมูลจาก cache ได้เลย โดยไม่ต้องไป query จาก disk
* buffer pool จะเก็บ data page ที่ถูกใช้งานบ่อยๆ ไว้ในหน่วยความจำ ทำให้การอ่านข้อมูลจาก disk น้อยลง และเพิ่มความเร็วในการเข้าถึงข้อมูล

Database Tuning: ปรับแต่ง Configuration ให้เข้าที่

Advertisement

database แต่ละตัวมีการตั้งค่า configuration ที่แตกต่างกัน การปรับแต่ง configuration ให้เหมาะสมกับการใช้งานของเราเป็นสิ่งสำคัญที่จะช่วยเพิ่มประสิทธิภาพโดยรวมของ database

Adjust Memory Allocation

* การจัดสรรหน่วยความจำให้กับ database อย่างเหมาะสมเป็นสิ่งสำคัญมากครับ ถ้า database มีหน่วยความจำไม่เพียงพอ ก็จะต้องใช้ disk ในการเก็บข้อมูลชั่วคราว ทำให้ช้าลง ลองเพิ่มหน่วยความจำให้กับ database ถ้าเป็นไปได้
* ตรวจสอบค่าต่างๆ ที่เกี่ยวข้องกับการจัดสรรหน่วยความจำ เช่น buffer pool size, query cache size และ adjust ให้เหมาะสมกับการใช้งานของเรา
* อย่าลืม monitor การใช้งานหน่วยความจำของ database อย่างสม่ำเสมอ เพื่อให้แน่ใจว่า database มีหน่วยความจำเพียงพอ และไม่มี memory leak

Optimize Disk I/O

* Disk I/O เป็นอีกปัจจัยหนึ่งที่มีผลต่อประสิทธิภาพของ database ครับ ลองย้าย database ไปไว้ใน disk ที่เร็วขึ้น เช่น SSD (Solid State Drive) หรือใช้ RAID (Redundant Array of Independent Disks) เพื่อเพิ่มความเร็วในการอ่านเขียนข้อมูล
* จัดเรียงข้อมูลใน disk อย่างสม่ำเสมอ เพื่อลด fragmentation และเพิ่มความเร็วในการเข้าถึงข้อมูล
* ปิดการใช้งาน features ที่ไม่จำเป็น เช่น การ logging ที่ละเอียดเกินไป เพราะจะทำให้ disk I/O เพิ่มขึ้น

Hardware Upgrade (ถ้าจำเป็น): ลงทุนอย่างคุ้มค่า

저비용으로 데이터베이스 성능 향상하는 방법 - Thai Street Food Vendor**

"A friendly Thai street food vendor, fully clothed in clean, appropriate ...
ถึงแม้ว่าเราจะสามารถปรับปรุงประสิทธิภาพของ database ได้ด้วยซอฟต์แวร์ แต่บางครั้ง hardware ก็เป็นคอขวดที่หลีกเลี่ยงไม่ได้ การ upgrade hardware อาจเป็นทางเลือกสุดท้าย แต่ก็เป็นทางเลือกที่คุ้มค่าถ้าเราลงทุนอย่างชาญฉลาด

CPU, RAM, หรือ Storage: อะไรสำคัญที่สุด?

* การเลือก hardware ที่จะ upgrade ขึ้นอยู่กับลักษณะการใช้งานของ database ของเราครับ ถ้า database มีการคำนวณเยอะๆ CPU อาจเป็นสิ่งสำคัญที่สุด ถ้า database มีการเข้าถึงข้อมูลเยอะๆ RAM และ storage อาจเป็นสิ่งสำคัญกว่า
* CPU ที่มี core เยอะๆ จะช่วยให้ database สามารถประมวลผล query หลายๆ query พร้อมกันได้
* RAM ที่มีขนาดใหญ่จะช่วยให้ database สามารถ cache ข้อมูลได้มากขึ้น ลดการเข้าถึง disk ลง

Cloud Database: ทางเลือกที่ยืดหยุ่นและคุ้มค่า

* Cloud database เป็นทางเลือกที่น่าสนใจสำหรับธุรกิจที่ต้องการความยืดหยุ่นและ scalability สูง เราสามารถปรับขนาดของ database ได้ตามความต้องการ โดยไม่ต้องลงทุนกับ hardware เอง
* Cloud database ส่วนใหญ่จะมี features ในการ auto-scaling และ auto-tuning ทำให้เราไม่ต้องกังวลเรื่องการดูแลรักษา database มากนัก
* แต่ก็ต้องระวังเรื่องค่าใช้จ่ายด้วยนะครับ เพราะ cloud database อาจมีค่าใช้จ่ายที่สูงกว่าถ้าเราใช้งานไม่ดี

เทคนิค รายละเอียด ข้อดี ข้อเสีย
Query Optimization ปรับปรุง query ให้ดึงข้อมูลเฉพาะที่ต้องการ, เลี่ยงฟังก์ชันที่ไม่จำเป็น ลด load บน database, เพิ่มความเร็วในการ query ต้องมีความรู้ SQL ที่ดี
Index Optimization สร้าง index บน column ที่ถูกใช้ในการค้นหา, monitor และปรับปรุง index อย่างสม่ำเสมอ เพิ่มความเร็วในการค้นหาข้อมูล index มากเกินไปจะทำให้ database ใหญ่และอัปเดตช้า
Caching เก็บข้อมูลที่ถูกใช้งานบ่อยๆ ไว้ในหน่วยความจำ ลด load บน database, เพิ่มความเร็วในการเข้าถึงข้อมูล ต้องจัดการ cache ให้ดี
Database Tuning ปรับแต่ง configuration ของ database ให้เหมาะสมกับการใช้งาน เพิ่มประสิทธิภาพโดยรวมของ database ต้องมีความรู้เกี่ยวกับ database configuration

Monitor อย่างใกล้ชิด: รู้ทันปัญหา ก่อนจะสายเกินแก้

Advertisement

การ monitor database อย่างสม่ำเสมอเป็นสิ่งสำคัญที่จะช่วยให้เราทราบถึงปัญหาที่เกิดขึ้น และแก้ไขได้ทันท่วงที

ตั้งค่า Alert สำหรับ Metric ที่สำคัญ

* ตั้งค่า alert สำหรับ metric ที่สำคัญ เช่น CPU usage, memory usage, disk I/O, query latency และ number of connections เพื่อให้เราทราบเมื่อมีสิ่งผิดปกติเกิดขึ้น
* เลือกเครื่องมือ monitor ที่เหมาะสมกับการใช้งานของเรา มีเครื่องมือ monitor ทั้งแบบ open source และ commercial ให้เลือกใช้มากมาย
* อย่าลืม monitor log files ของ database ด้วย เพราะ log files อาจมีข้อมูลที่เป็นประโยชน์ในการแก้ไขปัญหา

วิเคราะห์ Performance Bottleneck อย่างสม่ำเสมอ

* วิเคราะห์ performance bottleneck อย่างสม่ำเสมอ เพื่อหาจุดที่ทำให้ database ช้าลง และหาวิธีแก้ไข
* ใช้เครื่องมือ profiling เพื่อดูว่า query ไหนที่ใช้เวลานานที่สุด และทำไม
* อย่าลืมเปรียบเทียบ performance กับ baseline เพื่อดูว่ามีการเปลี่ยนแปลงไปในทางที่ดีขึ้นหรือแย่ลง

Upgrade Version: ของใหม่ อาจจะดีกว่าเสมอไป

การ upgrade database version เป็นสิ่งที่ควรทำอย่างสม่ำเสมอ เพราะ version ใหม่ๆ มักจะมี features ใหม่ๆ ที่ช่วยเพิ่มประสิทธิภาพและความปลอดภัย

อ่าน Release Note อย่างละเอียด

* อ่าน release note อย่างละเอียดก่อนที่จะ upgrade database version เพื่อทำความเข้าใจว่ามีอะไรเปลี่ยนแปลงไปบ้าง และมีอะไรที่เราต้องระวัง
* ทดสอบ upgrade ใน environment ที่ไม่ใช่ production ก่อน เพื่อให้แน่ใจว่าไม่มีปัญหาอะไรเกิดขึ้น
* สำรองข้อมูลก่อนที่จะ upgrade เสมอ เพื่อป้องกันข้อมูลสูญหาย

วางแผน Upgrade อย่างรอบคอบ

* วางแผน upgrade อย่างรอบคอบ โดยคำนึงถึง downtime ที่อาจเกิดขึ้น และผลกระทบต่อ application
* แจ้งให้ผู้ใช้งานทราบล่วงหน้าก่อนที่จะ upgrade เพื่อหลีกเลี่ยงความเข้าใจผิด
* ตรวจสอบ compatibility ของ application กับ database version ใหม่การปรับปรุงประสิทธิภาพของ database เป็นเรื่องที่ต้องทำอย่างต่อเนื่องครับ ไม่มีวิธีใดที่ได้ผลเสมอไปในทุกสถานการณ์ เราต้องเรียนรู้และปรับปรุงอยู่เสมอ หวังว่าเคล็ดลับเหล่านี้จะเป็นประโยชน์นะครับ!

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

บทสรุป

1. เลือกใช้เครื่องมือวิเคราะห์ Query Execution Plan เพื่อหาจุดที่ทำให้ query ช้าลง

2. สร้าง index ที่เหมาะสมบน column ที่ใช้ในการค้นหาบ่อยๆ

3. ใช้ caching เพื่อเก็บข้อมูลที่ถูกใช้งานบ่อยๆ ไว้ในหน่วยความจำ

4. ปรับแต่ง configuration ของ database ให้เหมาะสมกับการใช้งาน

5. Monitor database อย่างสม่ำเสมอเพื่อหาปัญหาและแก้ไขได้ทันท่วงที

Advertisement

เกร็ดความรู้เพิ่มเติม

1. ลองใช้ ORM (Object-Relational Mapping) เพื่อช่วยในการจัดการ database และลดความซับซ้อนในการเขียน SQL

2. พิจารณาใช้ database ที่เหมาะสมกับลักษณะการใช้งานของเรา เช่น NoSQL database สำหรับข้อมูลที่ไม่มีโครงสร้างที่แน่นอน

3. ศึกษา best practices ในการออกแบบ schema เพื่อให้ database มีประสิทธิภาพที่ดี

4. เข้าร่วม community ของ database ที่เราใช้ เพื่อแลกเปลี่ยนความรู้และประสบการณ์กับผู้อื่น

5. อย่ากลัวที่จะทดลองและเรียนรู้สิ่งใหม่ๆ เกี่ยวกับ database เพราะเทคโนโลยีมีการเปลี่ยนแปลงอยู่เสมอ

สรุปประเด็นสำคัญ

การปรับปรุงประสิทธิภาพของ database เป็นกระบวนการต่อเนื่องที่ต้องอาศัยความเข้าใจในหลายๆ ด้าน ตั้งแต่การเขียน query, การจัดการ index, การใช้ caching, การปรับแต่ง configuration ไปจนถึงการ monitor และการ upgrade version การลงทุนกับการปรับปรุงประสิทธิภาพของ database จะช่วยให้ application ของเราทำงานได้อย่างรวดเร็วและมีเสถียรภาพมากยิ่งขึ้น ซึ่งส่งผลดีต่อประสบการณ์ของผู้ใช้งานโดยรวมครับ

คำถามที่พบบ่อย (FAQ) 📖

ถาม: จะรู้ได้อย่างไรว่า database ของเราเริ่มทำงานช้าลง?

ตอบ: สังเกตง่ายๆ ครับ ถ้าเว็บไซต์หรือแอปพลิเคชันของคุณโหลดช้าลงอย่างเห็นได้ชัด หรือผู้ใช้งานบ่นเรื่องความหน่วง นั่นเป็นสัญญาณเตือนแรกๆ นอกจากนี้ ลองสังเกต CPU usage ของ database server ดูครับ ถ้ามันพุ่งสูงตลอดเวลา นั่นแสดงว่า database กำลังทำงานหนักเกินไป และอีกวิธีคือการใช้เครื่องมือ monitoring ต่างๆ เช่น Grafana หรือ Prometheus เพื่อติดตามประสิทธิภาพของ database อย่างละเอียด พวกนี้จะช่วยให้คุณเห็นภาพรวมและเจาะลึกถึงปัญหาได้ครับ

ถาม: วิธีง่ายๆ ที่ทำได้เลยเพื่อเพิ่มความเร็ว database มีอะไรบ้าง?

ตอบ: เริ่มจากเช็ค queries ที่ใช้บ่อยๆ ครับ ว่ามี query ไหนที่กินเวลานานผิดปกติ ลองใช้ EXPLAIN statement เพื่อดูว่า query นั้นทำงานอย่างไร แล้วลองปรับปรุง query ให้มีประสิทธิภาพมากขึ้น เช่น เพิ่ม index ให้กับ column ที่ใช้ในการค้นหา หรือหลีกเลี่ยงการใช้ SELECT ถ้าไม่จำเป็น อีกอย่างที่สำคัญคือการหมั่นอัพเดท database engine ให้เป็น version ล่าสุดเสมอ เพราะ version ใหม่ๆ มักจะมีการปรับปรุงประสิทธิภาพอยู่เสมอครับ

ถาม: ถ้าทำทุกอย่างแล้ว database ก็ยังช้าอยู่ ควรทำอย่างไรต่อไป?

ตอบ: ถ้าลองทำทุกวิธีข้างต้นแล้วยังไม่ดีขึ้น อาจจะต้องพิจารณาเรื่อง hardware ครับ บางที server อาจจะเก่าเกินไป หรือ RAM ไม่พอ แต่ก่อนที่จะลงทุนซื้อ hardware ใหม่ ลองเช็คดูเรื่อง database configuration ก่อนครับ ว่ามีการตั้งค่า memory allocation หรือ connection pool ที่เหมาะสมหรือไม่ บางทีการปรับแต่ง configuration เล็กๆ น้อยๆ ก็สามารถช่วยได้เยอะเหมือนกัน และถ้าข้อมูลมีขนาดใหญ่มากๆ อาจจะต้องพิจารณาเรื่อง database sharding หรือ partitioning เพื่อกระจาย load ไปยัง server หลายๆ ตัวครับ

📚 อ้างอิง

Advertisement