• ระหว่างทำตามคู่มือของ AWS Amplify เพื่อรวม OpenSearch เข้าด้วยกัน กลับเกิดค่าใช้จ่ายสูงเกินคาด
    • หลังติดต่อทีมสนับสนุนลูกค้าของ AWS ก็ได้รับการปรับยอดบิลและเครดิตบริการ
    • สามารถตั้งค่า AWS Budget เพื่อคาดการณ์ค่าใช้จ่ายในอนาคตและรับการแจ้งเตือนได้
  • 1. เริ่มต้นอย่างรวดเร็ว
    • สร้างแอปง่าย ๆ ด้วยโค้ดที่ AWS จัดเตรียมไว้ พร้อมสร้างฐานข้อมูล DynamoDB และคำขอ CRUD ที่ยืนยันตัวตนแล้วแบบอัตโนมัติ
    • สามารถรันบนเครื่องโลคัลได้ และมีการสร้างเว็บโดเมนให้ด้วย
  • 2. คู่มือตั้งค่า OpenSearch
    • เขียนโค้ดประกาศรีซอร์สด้วย Typescript
    • ตั้งค่าตาราง DynamoDB เป็นตัวแปร และสร้างอินสแตนซ์กับดัชนีของ OpenSearch
    • คัดลอกข้อมูลผ่านไปป์ไลน์ของ OpenSearchIngestionService
    • โดยค่าเริ่มต้นจะมีการสร้างอินสแตนซ์ r5.large.search ซึ่งมีค่าใช้จ่าย $134 ต่อเดือน
  • 3. จบงานในวันนั้น
    • เมื่อเลิกงาน ใช้ CTRL-C เพื่อหยุดแซนด์บ็อกซ์และเลือกให้ลบทุกอย่าง
    • DynamoDB ถูกลบ แต่โดเมน OpenSearch ยังคงอยู่
  • 4. เริ่มใหม่อีกครั้ง
    • เมื่อต้องสร้างบริการใหม่ในวันถัดไป ก็มีการสร้างอินสแตนซ์ OpenSearch ใหม่ขึ้นมา
    • ไม่สามารถลบอินสแตนซ์เดิมได้ด้วยคำสั่ง npx ampx sandbox delete
    • อาจมีการสร้างหลายโดเมน ส่งผลให้เกิดค่าใช้จ่ายสูง
  • เป็นบั๊กหรือไม่?
    • เรื่องนี้ดูเหมือนจะเป็นบั๊ก และยังไม่ถูกแก้แม้จะเปิดทิกเก็ตกับฝ่ายสนับสนุนลูกค้าของ AWS แล้ว
    • ผู้เขียนไม่พอใจที่ r5.large.search ถูกตั้งเป็นชนิดเครื่องเริ่มต้น
  • สรุป
    • เมื่อใช้เทคโนโลยีใหม่ ค่าใช้จ่ายอาจสูงขึ้นได้ แต่กรณีนี้ถือว่าสูงเกินไป
    • สามารถใช้คอนโซล "Budget" ของ AWS เพื่อรับการแจ้งเตือนเมื่อใช้งบเกิน
    • OpenSearch มักถูกใช้สำหรับลูกค้าองค์กร และต้องมีความเข้าใจเกี่ยวกับอีโคซิสเต็มของ AWS
    • ผู้เขียนใช้งาน OpenSearch เพราะรองรับคำสั่งค้นหา bounding box ของ geo_point

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น