Amazon RDS - funkcje Oracle

Oracle jest bardzo popularną relacyjną bazą danych, która jest dostępna w usługach Amazon RDS z funkcjami wersji dla przedsiębiorstw. Prawie każda funkcja Oracle może być wykorzystana na platformie RDS. Poniżej znajduje się krótki opis głównych funkcji MYSQL na platformie RDS.

Wersje 11.2 i 12.1 to główne wersje obsługiwane na platformie RDS. Jeśli podczas tworzenia bazy danych nie jest wymieniona żadna wersja, domyślnie jest to najnowsza wersja w danym momencie. Poniżej znajduje się przykład, jak uzyskać obsługiwane wersje silnika DB przy użyciu interfejsu API AWS w programie 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)

Po uruchomieniu powyższego programu otrzymujemy następujące dane wyjściowe -

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

Istnieją dwie opcje korzystania z licencji Oracle w RDS. Są objęte licencją i przynieś własną licencję.

Model z licencją

W tym modelu Amazon posiada licencję na oprogramowanie, którego będziesz używać. Również sam AWS zapewnia wsparcie dla oprogramowania AWS i Oracle poprzez swój program wsparcia. Dlatego użytkownik nie kupuje żadnej oddzielnej licencji. Ceny platformy obejmują opłaty za licencje, które płaci użytkownik. Dwie obsługiwane wersje tego modelu to Standard Edition One i Standard Edition Two.

Przynieś własną licencję (BYOL)

W tym modelu użytkownik wnosi posiadaną licencję na platformę RDS. Za zgodność licencji, klasy instancji bazy danych i edycji bazy danych odpowiada użytkownik. W razie potrzeby użytkownik kontaktuje się bezpośrednio z kanałem wsparcia Oracle. W tym modelu obsługiwane wersje to Enterprise Edition (EE), Standard Edition (SE), Standard Edition One (SE1) i Standard Edition Two (SE2).

W przypadku wdrożenia z wieloma AZ użytkownik powinien mieć licencję zarówno na główną instancję bazy danych, jak i drugą instancję bazy danych.

Oracle DB obejmuje wiele parametrów bazy danych do skonfigurowania pod kątem różnych funkcji i potrzeb związanych z wydajnością bazy danych. Aws sprawia, że ​​te parametry są widoczne za pomocą poleceń interfejsu wiersza polecenia, których użytkownik może użyć do zapytania o wartości parametrów. Poniżej znajduje się polecenie CLI i przykładowe dane wyjściowe.

aws rds describe-engine-default-parameters --db-parameter-group-family oracle-ee-12.1
Poniżej znajduje się kilka ważnych parametrów uzyskanych w wyniku powyższego polecenia CLI.
{
    "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"
            }
        ]
    }
}