รีวิวระบบฐานข้อมูลของ AWS แบบเจาะลึก ใช้ตัวไหนดีถึงจะเหมาะกับธุรกิจของเรา

สวัสดีครับผู้อ่านทุกท่านในบทความนี้ผู้เขียนจะพาผู้อ่านทุกท่านมารู้จักกับบริการหรือ Service ของ AWS อีกประเภทหนึ่งที่สำคัญมากต่อการทำธุรกิจของเราบนระบบคลาวด์นั่นก็คือฐานข้อมูลหรือ Database ซึ่งไม่ว่าเราจะทำแอพพลิเคชั่นอะไรก็ตาม แน่นอนว่าเราจะต้องทีการจัดเก็บข้อมูลเข้ามาแล้วจะต้องทำการรวบรวมข้อมูลเหล่านั้นไว้บนระบบคลาวด์ ซึ่งการเลือกรูปแบบของ Database นั้นก็จะต้องเลือกประเภทให้เหมาะสมกับการจัดเก็บข้อมูลด้วย เพราะอย่าลืมว่าเราจะต้องนำข้อมูลที่เราจัดเก็บเอาไว้ไปใช้งานต่อ โดยเราจะต้องคำนึงถึงความเหมาะสมของ Service  อื่น ๆ ที่เราจะใช้งานกับ Database ด้วย

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

1. สร้าง Database ตามวัตถุประสงค์

ลูกค้าหรือผู้ใช้งาน AWS สามารถเลือกสร้างเครื่องมือที่ใช้สร้าง Database ได้มากกว่า 15 รูปแบบ โดยประกอบไปด้วยข้อมูลที่เชื่อมโยงกันแบบ key-value หรือเป็นแบบ graph หรือเป็นข้อมูลประเภท time-series (ขึ้นกับเวลา) รวมไปถึงแบบคอลัมน์

2. เพิ่มและลดประสิทธิภาพได้ตามต้องการ

ข้อดีแบบนี้เรียกเป็นภาษาอังกฤษว่า Performance at Scale นั่นคือเราสามารถสร้าง Database แบบ relational ได้รวดเร็วมากกว่าเดิมถึง 3-5 เท่าหรือสามารถสร้าง Database ประเภท Non-relational ได้ในระยะเวลาความเร็วระดับมิลลิวินาทีหรีอเร็วกว่านั้นเลยทีเดียว

3. จัดการและควบคุมได้เต็มรูปแบบ

Database ของ AWS นั้นให้ผู้ใช้งานสามารถควบคุมและจัดการ service ของตัวเองได้เต็มรูปแบบ และ AWS ยังช่วยสอดส่องดูแลระบบคลัสเตอร์ของเราอย่างต่อเนื่องเพื่อให้มั่นใจว่า workload ของเรานั้นสามารถทำงานได้อย่างเต็มระบบและมีการ Scaling แบบเต็มรูปแบบ ซึ่งทำให้เราไม่ต้องมากังวลกับ Database และทำให้เราไปใส่ใจในส่วนอื่น ๆ แทนได้

4. ความปลอดภัยของเราระบบ

Database ของ AWS นั้นถูกสร้างขึ้นมาบนพื้นฐานของความปลอดภัยในระบบองค์กรใหญ่ ๆ สามารถเชื่อถือได้ โดยผู้ใช้งานไม่ต้องกังวลว่าจะเกิดข้อผิดพลาดหรือความเสียหายหรือการโจรกรรมข้อมูลของเรา

Credit: Toward Data Science

คราวนี้เรามาดูกันดีกว่าว่า AWS มี Database แบบไหนบ้าง และมาเปรียบเทียบกันว่ามีความแตกต่างกันอย่างไรในแง่การใช้งาน ข้อดีข้อเสีย ซึ่งบอกไว้ก่อนเลยว่า Database service ที่ผู้เขียนจะอธิบายให้ผู้อ่านฟังต่อไปนี้นั้นล้วนแล้วแต่มีการเปิดบริการแบบฟรี (Free Tier) ซึ่งทำให้เราสามารถเข้าไปใช้งานได้ฟรีตามจำนวนโควต้าที่ทาง AWS กำหนดไว้ครับ

บริการคำอธิบายรายละเอียดการใช้งาน Free Tierค่าใช้จ่ายจริงของบริการ
Amazon Neptune
(บริการ Database แบบกราฟ)
เหมาะสำหรับการจัดการฐานข้อมูลแบบเต็มรูปแบบ มีประสิทธิภาพสูง และได้รับความนิมากสำหรับการทำฐานข้อมูลแบบกราฟ สามารถใช้งานร่วมกับ API อื่น ๆ ได้ เช่น Gemlin, SPARQL และ openCypherฟรี 30 วัน

750 hours of Neptune t3. medium instance usage 10 million I/O requests

1 GB of storage
1 GB of backup
Amazon Neputne Pricing
Amazon RDS
บริการ
(Database แบบ Relational)
Amazon RDS คือบริการฐานข้อมูลแบบ relational สำหรับ MySQL, PostgreSQL, MariaDB, Oracle BYOL หรือ SQL Serverฟรี 12 เดือน
750 hours per month of db.t2.micro, db.t3.micro, and db.t4g.micro Single-AZ instance usage (applicable database engines)

20 GB of general purpose (SSD) database storage

20 GB of storage for database backups and database snapshots
Amazon RDS Pricing
Amazon DynamoDB
(บริการ Database แบบ NoSQL)
เป็นฐานข้อมูลแบบไร้เซิร์ฟเวอร์ (Serverless) สำหรับแอพพลิเคชั่นที่ต้องการประสิทภาพและความเร็วสูงในการส่งข้อมูลที่สเกลของระบบขนาดต่าง ๆฟรีตลอดเวลา

25 GB of storage
25 units of write capacity
25 units of read capacity (enough to handle up to 200 million requests per month)
Amazon DynamoDB Pricing
Amazon Redshift
(บริการ Data Warehouse)
เป็นฐานข้อมูลที่เร็ว ง่าย และส่งผลต่อข้อมูลน้อยมาก สำหรับข้อมูลประเภท warehouseฟรี 2 เดือน

750 DC2.Large node hours per month
Amazon Redshift Pricing
AWS Database Migration Service
(บริการการย้าย Database)
เป็นบริการย้ายฐานข้อมูลโดยใช้เวลาสั้น ๆ นิดเดียว ใช้งามง่ายไม่ซับซ้อนฟรีตลอดเวลา

750 hours of Amazon DMS single Availability Zone dms.t2.micro instance usage
50 GB of included general purpose (SSD) storage
AWS Database Migration Service Pricing
Amazon ElastiCache
(บริการจัดเก็บข้อมูลแบบฝังความจำ (In-Memory Data))
เป็นระบบฐานข้อมูลที่เหมาะสำหรับข้อมูลประเภท in-memory ที่ช่วยให้เราสามารถทำการจัดการข้อมูล ส่งต่อ นำขึ้นระบบ ได้ที่สเกลต่าง ๆ ได้รีบความนิยมสูงมากฟรี 12 เดือน

750 hours of cache.t2micro node usage
Amazon ElastiCache Pricing
Amazon MemoryDB
(บริการ Database แบบ In-Memory)
เป็นบริการสำหรับฐานข้อมูลแบบ in-memory เช่นเดียวกัน แต่จะเหมาะกับ Redis ด้วย ซึ่งมีประสิทภาพในระดับอัลตร้าหรือสูงมาก ๆฟรี 2 เดือน

750 t4g.small instance hours per month
20 GB of data per month
Amazon MemoryDB Pricing
Amazon DocumentDB
(บริการ Database สำหรับจัดการเอกสาร)
เป็นฐานข้อมูลสำหรับจัดการ MongoDB ที่มีการปรับตัว การสเกล ความยืดหยุ่นที่สูงมาก ๆฟรี 750 ชั่วโมง

t3.medium instances for 30 days
5 GB of storage for 30 days
5 GB of backup storage for 30 days
30M IOs for 30 days
Amazon DocumentDB Pricing

สำหรับผู้อ่านที่สนใจศึกษารายละเอียดเพิ่มเติมของการบริการที่เกี่ยวข้องกับ Database สามารถดูวิดีโอด้านล่างนี้เพื่อเป็นแนวทางในการใช้งานต่อไปได้ครับ

  1. Understanding Amazon Relational Database Service (RDS)
  2. What is Amazon DynamoDB?
  3. How Trimble Successfully Migrated Their Databases to the Cloud
  4. AWS Databases: Break Free to Save, Grow, and Innovate Faster

และยังมี Tutorial สอนเกี่ยวกับ Database เบื้องต้นอีกด้วย

  1. Create and Connect to a MySQL Database
  2. Create and Query a NoSQL Table
  3. Create and Connect to a Microsoft SQL Server Database
  4. Create and Connect to a PostgreSQL Database

อ่านมาจนถึงจุดนี้แล้วถ้าหากผู้อ่านมีความสนใจในบริการของ AWS โดยเฉพาะถ้าอยากจะปรึกษาเกี่ยวกับการใช้ระบบฐานข้อมูลของ AWS ก็สามารถติดต่อ Cloud HM ได้โดยตรงเลยครับ เพราะเรามีการให้บริการ Cloud Platform ครบวงจร ทั้ง Domestic Cloud และ Global Cloud เพื่อตอบสนองความต้องการรอบด้านของลูกค้าครับ

— Cloud HM