Amazon RDS - Các tính năng của Oracle

Oracle là DB quan hệ rất phổ biến, có sẵn trong các dịch vụ RDS của amazon với các tính năng phiên bản doanh nghiệp của nó. Hầu hết mọi tính năng của Oracle đều có thể được tận dụng trong nền tảng RDS. Dưới đây là mô tả ngắn gọn về các tính năng chính của MYSQL trong nền tảng RDS.

Các phiên bản 11.2 và 12.1 là các phiên bản chính được hỗ trợ trong nền tảng RDS. Nếu không có phiên bản nào được đề cập trong quá trình tạo DB, nó sẽ được mặc định là phiên bản mới nhất tại thời điểm đó. Dưới đây là ví dụ về cách tải các phiên bản DB Engine được hỗ trợ bằng cách sử dụng API AWS trong chương trình python SDK.

import boto3
client = boto3.client('rds')
response = client.describe_db_engine_versions(
    DBParameterGroupFamily='oracle-ee-12.1',
    DefaultOnly=True,
    Engine='',
    EngineVersion='',
    ListSupportedCharacterSets=False, #True,
)
print(response)

Khi chúng tôi chạy chương trình trên, chúng tôi nhận được kết quả sau:

{
   "ResponseMetadata": {
      "RetryAttempts": 0,
      "HTTPStatusCode": 200,
      "RequestId": "f6805635-3e16-4014-83cd-dfdaf3f17950",
      "HTTPHeaders": {
         "x-amzn-requestid": "f6805635-3e16-4014-83cd-dfdaf3f17950",
         "date": "Fri, 14 Sep 2018 03:46:38 GMT",
         "content-length": "1455",
         "content-type": "text/xml"
      }
   },
   "u'DBEngineVersions'": [
      {
         "u'Engine'": "oracle-ee",
         "u'DBParameterGroupFamily'": "oracle-ee-12.1",
         "u'SupportsLogExportsToCloudwatchLogs'": true,
         "u'SupportsReadReplica'": false,
         "u'DefaultCharacterSet'": {
            "u'CharacterSetName'": "AL32UTF8",
            "u'CharacterSetDescription'": "Unicode 5.0 UTF-8 Universal character set"
         },
         "u'DBEngineDescription'": "Oracle Database Enterprise Edition",
         "u'EngineVersion'": "12.1.0.2.v12",
         "u'DBEngineVersionDescription'": "Oracle 12.1.0.2.v12",
         "u'ExportableLogTypes'": [
            "alert",
            "audit",
            "listener",
            "trace"
         ],
         "u'ValidUpgradeTarget'": []
      }
   ]
}

Có hai tùy chọn để sử dụng giấy phép oracle trong RDS. Chúng được Bao gồm Giấy phép và Mang theo Giấy phép Riêng của Bạn.

Mô hình bao gồm giấy phép

Trong mô hình này, Amazon giữ giấy phép cho phần mềm bạn sẽ sử dụng. Cũng chính AWS cung cấp hỗ trợ cho cả phần mềm AWS và Oracle thông qua chương trình hỗ trợ của nó. Vì vậy, người dùng không mua bất kỳ giấy phép riêng biệt nào. Định giá nền tảng bao gồm phí cấp phép mà người dùng phải trả. Hai phiên bản được hỗ trợ trong mô hình này là Standard Edition One và Standard Edition Two.

Mang theo giấy phép của riêng bạn (BYOL)

Trong mô hình này, người dùng mang theo giấy phép mà cô ấy có vào nền tảng RDS. Người dùng có trách nhiệm duy trì tính tương thích giữa giấy phép, lớp cá thể cơ sở dữ liệu và ấn bản cơ sở dữ liệu. Người dùng liên hệ trực tiếp với kênh hỗ trợ của Oracle nếu có nhu cầu. Trong mô hình này, các phiên bản được hỗ trợ là Phiên bản Doanh nghiệp (EE), Phiên bản Tiêu chuẩn (SE), Phiên bản Tiêu chuẩn Một (SE1) và Phiên bản Tiêu chuẩn Hai (SE2).

Để triển khai nhiều AZ, người dùng phải có giấy phép cho cả cá thể DB chính và cá thể DB phụ.

DB oracle liên quan đến nhiều tham số DB để được cấu hình cho các tính năng và nhu cầu hiệu suất khác nhau của cơ sở dữ liệu. Aws làm cho các tham số này hiển thị thông qua các lệnh CLI, mà người dùng có thể sử dụng để truy vấn các giá trị tham số. Dưới đây là lệnh CLI và đầu ra mẫu.

aws rds describe-engine-default-parameters --db-parameter-group-family oracle-ee-12.1
Dưới đây là một số tham số quan trọng thu được từ lệnh CLI trên.
{
    "EngineDefaults": {
        "Parameters": [
            {
                "AllowedValues": "TRUE,FALSE",
                "ParameterName": "_allow_level_without_connect_by",
                "ApplyType": "dynamic",
                "Description": "_allow_level_without_connect_by",
                "IsModifiable": true,
                "Source": "engine-default",
                "DataType": "boolean"
            },
            {
                "AllowedValues": "CHOOSE,OFF,CUBE,NESTED_LOOPS,MERGE,HASH",
                "ParameterName": "_always_semi_join",
                "ApplyType": "dynamic",
                "Description": "_always_semi_join",
                "IsModifiable": true,
                "Source": "engine-default",
                "DataType": "string"
            },
            {
                "AllowedValues": "TRUE,FALSE",
                "ParameterName": "_b_tree_bitmap_plans",
                "ApplyType": "dynamic",
                "Description": "_b_tree_bitmap_plans",
                "IsModifiable": true,
                "Source": "engine-default",
                "DataType": "boolean"
            },
    {
                "AllowedValues": "TRUE,FALSE",
                "ParameterName": "parallel_automatic_tuning",
                "ApplyType": "static",
                "Description": "enable intelligent defaults for parallel execution parameters",
                "IsModifiable": true,
                "Source": "engine-default",
                "DataType": "boolean"
            },
            {
                "AllowedValues": "ENABLE,DISABLE",
                "ParameterName": "xml_db_events",
                "ApplyType": "dynamic",
                "Description": "are XML DB events enabled",
                "IsModifiable": false,
                "Source": "engine-default",
                "DataType": "string"
            }
        ]
    }
}