Amazon RDS - คุณสมบัติ MariaDB

MariaDB เป็นโอเพ่นซอร์ส Relational DB ที่ได้รับความนิยมซึ่งมีอยู่ในบริการ amazon RDS พร้อมด้วยคุณสมบัติ community edition เกือบทุกฟีเจอร์ของ MariaDB สามารถใช้ประโยชน์ได้ในแพลตฟอร์ม RDS ด้านล่างนี้เป็นคำอธิบายสั้น ๆ เกี่ยวกับคุณสมบัติหลักของ MariaDB ในแพลตฟอร์ม RDS

เวอร์ชัน 10.0, 10.1,10.2 เป็นเวอร์ชันหลักที่รองรับในแพลตฟอร์ม RDS หากไม่มีการกล่าวถึงเวอร์ชันระหว่างการสร้าง DB จะมีค่าเริ่มต้นเป็นเวอร์ชันล่าสุด ณ เวลานั้น ด้านล่างนี้คือตัวอย่างวิธีรับเวอร์ชัน DB Engine ที่รองรับทั้งหมดโดยใช้ AWS API ในโปรแกรม python SDK

import boto3

client = boto3.client('rds')

response = client.describe_db_engine_versions(
    DBParameterGroupFamily='',
    DefaultOnly=True,
    Engine='mariadb',
    EngineVersion='',
    ListSupportedCharacterSets=False, #True,
)

print(response)

เมื่อเรารันโปรแกรมข้างต้นเราจะได้ผลลัพธ์ดังต่อไปนี้ -

{ 
   "ResponseMetadata": { 
      "RetryAttempts": 0,
      "HTTPStatusCode": 200,
      "RequestId": "16179fbd-9d07-425b-9b86-cc61359ce7b4",
      "HTTPHeaders": { 
         "x-amzn-requestid": "16179fbd-9d07-425b-9b86-cc61359ce7b4",
         "date": "Fri, 14 Sep 2018 06:45:52 GMT",
         "content-length": "1658",
         "content-type": "text/xml"
      }
   },
   "u'DBEngineVersions'": [ 
      { 
         "u'Engine'": "mariadb",
         "u'DBParameterGroupFamily'": "mariadb10.2",
         "u'SupportsLogExportsToCloudwatchLogs'": true,
         "u'SupportsReadReplica'": true,
         "u'DBEngineDescription'": "MariaDb Community Edition",
         "u'EngineVersion'": "10.2.12",
         "u'DBEngineVersionDescription'": "mariadb 10.2.12",
         "u'ExportableLogTypes'": [ 
            "audit",
            "error",
            "general",
            "slowquery"
         ],
         "u'ValidUpgradeTarget'": [ 
            { 
               "u'Engine'": "mariadb",
               "u'IsMajorVersionUpgrade'": false,
               "u'AutoUpgrade'": false,
               "u'Description'": "MariaDB 10.2.15",
               "u'EngineVersion'": "10.2.15"
            }
         ]
      }
   ]
}

ความปลอดภัยสำหรับ RDS MariaDB ได้รับการจัดการที่สามชั้น

ใช้ IAM

ในแนวทางนี้ผู้ใช้ IAM ควรมีนโยบายและสิทธิ์ที่เหมาะสม การให้สิทธิ์ดังกล่าวจะตัดสินโดยเจ้าของบัญชีหรือผู้ใช้ขั้นสูงที่ให้สิทธิ์เหล่านี้

ใช้ VPC

คุณใช้กลุ่มความปลอดภัย VPC หรือกลุ่มความปลอดภัย DB เพื่อตัดสินใจว่าอินสแตนซ์ EC2 ใดที่สามารถเปิดการเชื่อมต่อไปยังปลายทางและพอร์ตของอินสแตนซ์ DB การเชื่อมต่อเหล่านี้สามารถทำได้โดยใช้ SSL

การใช้การตรวจสอบฐานข้อมูล IAM

ในวิธีนี้คุณใช้บทบาท IAM และโทเค็นการตรวจสอบสิทธิ์ โทเค็นการตรวจสอบความถูกต้องจะสร้างค่าเฉพาะซึ่งเกี่ยวข้องกับบทบาท IAM ที่ใช้ในกระบวนการเข้าถึง ที่นี่มีการใช้ข้อมูลรับรองชุดเดียวกันสำหรับฐานข้อมูลเช่นเดียวกับทรัพยากร aws อื่น ๆ เช่น EC2 และ S3 เป็นต้น

การอุ่นแคชสามารถให้ประสิทธิภาพที่เพิ่มขึ้นสำหรับอินสแตนซ์ MariaDB DB ของคุณโดยบันทึกสถานะปัจจุบันของบัฟเฟอร์พูลเมื่ออินสแตนซ์ DB ปิดตัวลงจากนั้นโหลดพูลบัฟเฟอร์ซ้ำจากข้อมูลที่บันทึกไว้เมื่ออินสแตนซ์ DB เริ่มทำงาน วิธีนี้จะข้ามความต้องการพูลบัฟเฟอร์ในการ "อุ่นเครื่อง" จากการใช้ฐานข้อมูลปกติและจะโหลดพูลบัฟเฟอร์ล่วงหน้าด้วยเพจสำหรับเคียวรีทั่วไปที่รู้จักแทน

การอุ่นแคชให้ประโยชน์ด้านประสิทธิภาพเป็นหลักสำหรับอินสแตนซ์ DB ที่ใช้ที่เก็บข้อมูลมาตรฐาน

คุณสามารถสร้างเหตุการณ์เพื่อดัมพ์พูลบัฟเฟอร์โดยอัตโนมัติและในช่วงเวลาปกติ ตัวอย่างเช่นคำสั่งต่อไปนี้สร้างเหตุการณ์ที่ชื่อ periodic_buffer_pool_dump ที่ทิ้งบัฟเฟอร์พูลทุกๆชั่วโมง

CREATE EVENT periodic_buffer_pool_dump 
   ON SCHEDULE EVERY 1 HOUR 
   DO CALL mysql.rds_innodb_buffer_pool_dump_now();