Amazon RDS - Oracle Özellikleri

Oracle, kurumsal sürüm özellikleriyle amazon RDS servislerinde bulunan çok popüler bir İlişkisel DB'dir. Oracle'ın neredeyse her özelliği RDS platformunda kullanılabilir. Aşağıda, RDS platformundaki MYSQL'lerin temel özellikleri hakkında kısa bir açıklama bulunmaktadır.

11.2 ve 12.1 sürümleri, RDS platformunda desteklenen ana sürümlerdir. Veritabanı oluşturma sırasında herhangi bir sürümden bahsedilmezse, o andaki en son sürüme varsayılan olarak atanır. Aşağıda, bir python SDK programında AWS API kullanılarak desteklenen DB Engine sürümlerinin nasıl alınacağına dair bir örnek verilmiştir.

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)

Yukarıdaki programı çalıştırdığımızda aşağıdaki çıktıyı elde ederiz -

{
   "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'": []
      }
   ]
}

RDS'de oracle lisanslarını kullanmak için iki seçenek vardır. Lisans Dahildir ve Kendi Lisansınızı Getirir.

Lisans Dahil Model

Bu modelde Amazon, kullanacağınız yazılımın lisansına sahiptir. Ayrıca AWS, destek programı aracılığıyla hem AWS hem de Oracle yazılımı için destek sağlar. Dolayısıyla kullanıcı ayrı bir lisans satın almaz. Platform fiyatlandırması, kullanıcının ödediği lisanslama maliyeti ücretlerini içerir. Bu modelde desteklenen iki sürüm, Standart Sürüm Bir ve Standart Sürüm İki'dir.

Kendi Lisansınızı Getirin (BYOL)

Bu modelde kullanıcı, sahip olduğu lisansı RDS platformuna getirir. Lisans, veritabanı örnek sınıfı ve veritabanı sürümü arasındaki uyumluluğu korumak kullanıcının sorumluluğundadır. Kullanıcı, herhangi bir ihtiyaç için doğrudan Oracle destek kanalına başvurur. Bu modelde desteklenen sürümler, Enterprise Edition (EE), Standard Edition (SE), Standard Edition One (SE1) ve Standard Edition Two (SE2) 'dir.

Çoklu AZ dağıtımı için, kullanıcının hem birincil DB örneği hem de ikincil DB örneği için lisansa sahip olması gerekir.

Oracle DB, veritabanının çeşitli özellikleri ve performans gereksinimleri için yapılandırılacak birçok DB parametresi içerir. Aws, bu parametreleri kullanıcının parametre değerlerini sorgulamak için kullanabileceği CLI komutları aracılığıyla görünür hale getirir. Aşağıda CLI komutu ve örnek çıktı bulunmaktadır.

aws rds describe-engine-default-parameters --db-parameter-group-family oracle-ee-12.1
Yukarıda CLI komutunun bir sonucu olarak elde edilen bazı önemli parametreler aşağıdadır.
{
    "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"
            }
        ]
    }
}