วิธีลดราคาด้วย Aurora I/O-Optimized วิธีดูว่าเปิดใช้งานแล้วจะคุ้มไหม จะลดราคาได้จริงหรือเปล่า

แนะนำฟังก์ชัน Aurora I/O-Optimized ที่อาจจะลดราคาของ Aurora ที่คุณใช้อยู่ได้
2024.06.26

สวัสดีครับ ต้า ครับ

วันนี้เราเรามาเกี่ยวกับบทความที่จะพูดเกี่ยวกับฟังก์ชัน I/O-Optimized ของ Aurora ที่ "อาจจะ" ช่วยให้คุณลดค่าใช้จ่ายที่เกิดขึ้นกับ Aurora Resource ของคุณได้ครับ

ด้านล่างนี้เป็นบทความ Official ที่เกี่ยวกับ I/O-Optimized ครับ

Amazon Aurora I/O-Optimized คืออะไร

ก่อนอื่น เรามาเข้าใจเกี่ยวกับ การคิดเงินของ Aurora กันก่อนนะครับ

ด้านล่างนี้เป็นรายละเอียด ราคา Amazon Aurora – AWS เราจะเห็นว่าในส่วนการคิดค่าใช้จ่าย ราคาตามพื้นที่เก็บข้อมูลและ I/O จะมีการแบ่งเป็นดังนี้(อ้างอิงจาก Region Singapore)

องค์ประกอบ Aurora Standard Aurora I/O-Optimized
อัตราพื้นที่เก็บข้อมูล USD 0.11 ต่อ GB ต่อเดือน USD 0.248 ต่อ GB ต่อเดือน
อัตรา I/O USD 0.22 ต่อ 1 ล้านคำขอ รวมแล้ว

จะเห็นได้ว่า การคิดเงินของ Aurora Standard และ Aurora I/O-Optimized นั้นมีการคิดเงินที่ต่างกัน

โดยที่ Aurora Standard จะมีการคิดเงินในส่วนของ อัตรา I/O แต่ Aurora I/O-Optimized นั้นไม่มีค่าใช้จ่ายในส่วนนี้

ซึ่งสรุปได้ว่า Aurora I/O-Optimized คือ การคิดราคาของ Aurora ที่จะไม่คิดราคา อัตรา I/O แต่ราคาส่วนอื่นจะเพิ่มแทน

หมายความว่าหาก Aurora ของเรามี I/O จำนวนมากๆ การใช้งาน Aurora I/O-Optimized นั้นจะทำให้ราคา Aurora ที่เราจ่ายต่อเดือนจะได้ราคาที่ถูกกว่าก็เป็นได้

โดยในตารางด้านบนนี้ จะเห็นแค่ว่าราคาของ อัตราพื้นที่เก็บข้อมูล(Storage) มีการเก็บสูงขึ้น แต่ความจริงยังมีอย่างอื่นที่ราคาสูงขึ้นอีก ซึ่งจะเล่าในหัวข้อต่อไป

การคิดราคา Instance ก็เพิ่ม

สำหรับ Instance ที่เปิดการใช้งาน I/O-Optimized จะมีการคิดราคาเพิ่มอีก 30% (เพิ่มทั้งแบบ On-Demand และ Reserved)

https://devio2023-media.developers.io/wp-content/uploads/2024/06/Screenshot-2024-06-21-162907.png

จากหน้า ฐานข้อมูลแบบเชิงสัมพันธ์ MySQL PostgreSQL – ราคา Amazon Aurora – AWS ราคา instance ของ Aurora I/O-Optimized จะแพงกว่า Aurora Standard อยู่ 30% โดยสังเกตได้ว่าในภาพของ Aurora I/O-Optimized ที่อยู่ด้านขวาจะแพงกว่าด้านซ้ายอยู่ 1.3 เท่า

ซื่งทำให้เราจำเป็นต้องมาคำนวณค่าใช้จ่ายที่เกิดขึ้นกับ Aurora Resource กันก่อน ถึงจะทราบได้ว่าใช้ I/O-Optimized แล้วจะคุ้มหรือไม่

แล้วราคาเท่าไรแล้วถึงคุ้ม

สำหรับท่านที่อ่านมาถึงตรงนี้น่าจะทราบแล้วว่าถ้าค่าใช้จ่ายที่เกิดขึ้นใน Aurora มีอัตราส่วนจาก I/O เยอะมากๆ จะใช้ I/O-Optimized แล้วจะคุ้ม

ราคาที่เพิ่มขึ้น
อัตราพื้นที่เก็บข้อมูล USD 0.11 → USD 0.248 ราคาเพิ่มขึ้น 125%

ราคา Instance type
ราคาเพิ่มขึ้น 30%

โดยที่ ราคา I/O > (อัตราพื้นที่เก็บข้อมูลที่เพิ่มขึ้น + ราคา Instance ที่เพิ่มขึ้น) ราคาจะคุ้มต่อการ I/O-Optimized ครับ

สรุปวิธีคำนวณ

วิธีคำนวณแบบคร่าวๆ

วิธีคิดคร่าวๆ คือ ถ้า ราคา I/O เราคิดมากกว่า 30% ของราคาที่เกิดกับ Aurora ทั้งหมด เราควรที่จะพิจารณาการการใช้ I/O-Optimized ครับ

โดยวิธีการดูเราสามารถดูได้ตามนี้ครับ

เปิด AWS Management Console > Cost Explorer > เลือกดู RDS

เราจะเห็นราคาของ RDS ที่เกิดขึ้นในแต่ละเดือน

แต่อย่าพึ่งก่อนราคาของ RDS ที่แสดงขึ้นอยู่ในส่วนนี้จะเป็นราคาของ RDS และ Aurora ซึ่งหัวข้อที่เราที่เราต้องการจะทราบคือ Aurora เท่านั้น ทำให้เราต้องทำการใช้ Filter ด้านขวามือ เพื่อทำการกรองข้อมูลที่เป็น Aurora เท่านั้นให้ได้ออกมาก่อน
(ในกรณีที่ Account ของเรามีการใช้งานแค่ Aurora เท่านั้นก็สามารถใช้หัวข้อนี้ไปได้เลย)

ราคาที่แสดงขึ้น $26.09 จะเป็นราคาทั้งหมดของ RDS + Aurora ที่เกิดขึ้นใน Account นี้ในเดือน Apr 2024 ที่ผ่านมา

https://devio2023-media.developers.io/wp-content/uploads/2024/06/rds1.png

ด้วยความที่ใน Account ที่ผมดูอยู่โดยด้านล่างนี้จะเป็นราคาที่มี RDS อยู่ด้วย ผมจึงทำการกรองข้อมูลออกมาให้เหลือแต่ Aurora โดยได้ราคาเท่านี้ครับ(ใช้ Filter Tag แล้วเลือกชื่อที่มีแต่ Aurora เท่านั้น)

ราคาที่แสดงขึ้น $0.84 จะเป็นราคาทั้งหมดของ Aurora ที่เกิดขึ้นใน Account นี้ในเดือน Apr 2024 ที่ผ่านมา

https://devio2023-media.developers.io/wp-content/uploads/2024/06/rds2.png

จากนั้นให้เราเลือก "Usage type" เลือก APN1-Aurora:StorageIOUsage (IOs) APN1-Aurora:StorageUsage (GB-Month) APS1-Aurora:StorageIOUsage (IOs) APS1-Aurora:StorageUsage (GB-Month)

จะเป็นการกรองหัวข้อราคาที่เกิดจาก I/O ทั้งหมดครับ

จะเห็นราคาที่แสดงขึ้น $0.04 ครับ

https://devio2023-media.developers.io/wp-content/uploads/2024/06/rds3.png

โดยที่เมื่อเราเปรียบเทียบแล้ว $0.04 จะไม่ถึง 30% ของ $0.84

ทำให้สรุปแบบคร่าวๆได้ว่า ใช้ I/O-Optimized แล้วไม่คุ้ม
ราคาของ Aurora ต่อเดือนที่เกิดขึ้นอาจจะเพิ่มมากขึ้นแทนครับ

วิธีคำนวนแบบละเอียด

ในหัวข้อที่แล้วจะเป็นการดูรวมๆว่า Aurora ที่เราใช้ทั้งหมดมีราคา I/O อยู่เท่าไร

ซึ่งในกรณีที่เรามี Aurora Cluster หลายๆ ตัว อาจจะทำให้ผลลัพท์การดูคลาดเคลื่อนได้

ยกตัวอย่างเช่น เราดูรายละเอียดราคาที่เกิดขึ้นกับ Aurora ในแบบคร่าวๆในหัวข้อด้านบน เราได้รับผลลัพท์ว่า

ราคา Aurora ทั้งหมดที่เกิดขึ้น = $100
ราคา Aurora ที่เกี่ยวกับ I/O = $10

ซึ่งหากเราดูคร่าวๆ $10 น้อยกว่า 30% ของ $100 ซึ่งได้ผลสรุปว่าไม่ต้องใช้ I/O-Optimized

แต่เมื่อเราดูรายละเอียดลึกลงไปที่ Aurora Cluster แต่ละตัว เราอาจจะเห็นผลลัพท์ที่ต่างไป เช่น

เราพบเราใช้ Aurora Cluster อยู่ 2 ตัว

โดยมีรายละเอียดดังนี้

ราคา Aurora ตัวที่ 1 ทั้งหมดที่เกิดขึ้น = $20
ราคา Aurora ตัวที่ 1 ที่เกี่ยวกับ I/O = $9

ราคา Aurora ตัวที่ 2 ทั้งหมดที่เกิดขึ้น = $70
ราคา Aurora ตัวที่ 2 ที่เกี่ยวกับ I/O = $1

จะเห็นได้ว่า Aurora ตัวที่ 1 มีราคา I/O มากกว่า 30% ของราคา Aurora ตัวที่ 1 ทั้งหมดที่เกิดขึ้น ซึ่งถ้าเป็นแบบนี้ ใช้ I/O-Optimized แล้วน่าจะคุ้ม

วิธีดูแบบละเอียดในกรณีที่เรามี tag กับ Aurora Cluster ที่เราใช้

ในกรณีที่เรามี tag เหมือนกัน แต่ Value ต่างกัน กับ Aurora Cluster (เช่น Tag:name แต่ Value:ไม่เหมือนกันสักตัว) เราสามารถใช้วิธีนี้เพื่อดูรายละเอียดของค่าใช้จ่ายที่เกิดขึ้นกับ Cluster ที่เกิดขึ้นกับแต่ละตัวได้

https://devio2023-media.developers.io/wp-content/uploads/2024/06/rds4.png

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

https://devio2023-media.developers.io/wp-content/uploads/2024/06/rds5.png

คราวนี้ในหัวข้อ Tag ด้านล่าง เราสามารถเลือกดูรายการไหนเป็นพิเศษได้

https://devio2023-media.developers.io/wp-content/uploads/2024/06/rds6-1.png

และสามารถใช้วิธีด้านบนในการกรองค่าใช้จ่ายที่เกิดขึ้นกับ Aurora ของเราได้ครับ

https://devio2023-media.developers.io/wp-content/uploads/2024/06/rds7-1.png

วิธีดูแบบละเอียดขึ้นไปอีก

ถ้าเราอยากชัวร์จริงๆ ว่าเราใช้ I/O-Optimized แล้วจะคุ้มจริงๆไหม เราสามารถดูละเอียดขึ้นไปอีกได้ครับ

โดยในหัวข้อด้านบนผมบอกว่า ถ้าราคา I/O เกิน 30% ของราคาทั้งหมดให้ลองพิจารณาการใช้ I/O-Optimized
นั้นเป็นการประมาณการคร่าวๆครับ

เพราะราคาที่จะเพิ่มจริงๆจากการใช้ I/O-Optimized นั้น ราคา Instance type จะเพิ่มขึ้น 30% และ ราคาอัตราพื้นที่เก็บข้อมูล จะเพิ่มขึ้น 125%
ซึ่งอัตราส่วนที่เพิ่มขึ้นมานี้ หากเราต้องการคำนวณแบบละเอียด ทางผมแนะนำให้ท่านผู้อ่าน ทำการตรวจสอบราคา Instance type และ ราคาอัตราพื้นที่เก็บข้อมูลก่อนการใช้ I/O-Optimized ครับ

สรุป

วิธีที่ผมแนะนำคือ วิธีคร่าวๆ ให้ไปดูว่าค่าใช้จ่าย I/O เกิน 30% ของค่าใช้จ่ายทั้งหมดก็พอครับ โดยถ้าเราเห็นว่ามีอะไรผิดปกติ ค่อยทำการตรวจสอบลึกลงไปอีกเพื่อพิจารณาการใช้ I/O-Optimized อีกทีครับ

เพราะส่วนใหญ่ค่าใช้จ่าย I/O มักจะสอดคล้างกับ Instance type อยู่แล้ว (I/O ปกติมักจะอยู่ที่ ไม่เกิน 15% ของราคาทั้งหมด)

บทความที่เกี่ยวข้อง