Amazon RDS - PostgreSQL Özellikleri
PostgreSQL, güvenilirlik, özellik sağlamlığı ve performans açısından güçlü bir itibar kazanmış güçlü, açık kaynaklı bir nesne ilişkisel veritabanı sistemidir. AWS RDS, PostgreSQL'in çeşitli sürümlerini çalıştırır. Zaman içinde geri yüklemeyi ve yedeklemeleri, DB anlık görüntülerinin oluşturulmasını ve bir multi-AZ ortamında çalıştırılmasını destekler.
9.3 ila 10.4 arasındaki sürümler, 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 kullanarak desteklenen tüm 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='',
DefaultOnly=True,
Engine='postgres',
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": "c85cd49f-2c16-44b4-9890-cb233651f962",
"HTTPHeaders": {
"x-amzn-requestid": "c85cd49f-2c16-44b4-9890-cb233651f962",
"date": "Fri, 14 Sep 2018 07:31:34 GMT",
"content-length": "995",
"content-type": "text/xml"
}
},
"u'DBEngineVersions'": [
{
"u'Engine'": "postgres",
"u'DBParameterGroupFamily'": "postgres10",
"u'SupportsLogExportsToCloudwatchLogs'": false,
"u'SupportsReadReplica'": true,
"u'DBEngineDescription'": "PostgreSQL",
"u'EngineVersion'": "10.4",
"u'DBEngineVersionDescription'": "PostgreSQL 10.4-R1",
"u'ValidUpgradeTarget'": []
}
]
}
PostgreSQL topluluğu sürekli olarak yeni sürümler ve yeni uzantılar yayınlar. Aws RDS tarafından tam olarak desteklenmeden önce yeni PostgreSQL sürümlerini ve uzantılarını deneyebilirsiniz. Bunu yapmak için, Veritabanı Önizleme Ortamında yeni bir DB örneği oluşturabilirsiniz.
Veritabanı Önizleme Ortamındaki DB eşgörünümleri, bir üretim ortamındaki DB eşgörünümlerine benzer. Ancak, birkaç önemli faktörü aklınızda bulundurun:
Siz onları oluşturduktan 60 gün sonra, tüm yedeklemeler ve anlık görüntülerle birlikte tüm DB bulut sunucuları silinir.
Yalnızca Amazon VPC hizmetine dayalı bir sanal özel bulutta (VPC) bir DB örneği oluşturabilirsiniz.
Yalnızca M4, T2 ve R4 bulut sunucusu tipleri oluşturabilirsiniz. RDS örnek sınıfları hakkında daha fazla bilgi için,
DB bulut sunucularıyla AWS Support'tan yardım alamazsınız. Sorularınızı RDS Veritabanı Önizleme Ortamı Forumuna gönderebilirsiniz.
Yalnızca Genel Amaçlı SSD ve Tedarik Edilmiş IOPS SSD depolamayı kullanabilirsiniz.
Bir DB örneğinin anlık görüntüsünü bir üretim ortamına kopyalayamazsınız.
Aşağıda açıklandığı gibi bazı Amazon RDS özellikleri önizleme ortamında kullanılamaz.
Mantıksal çoğaltma, veri nesnelerini ve değişikliklerini çoğaltma kimliklerine (genellikle birincil anahtar) dayalı olarak çoğaltma yöntemidir. Mantıksal çoğaltma, bir yayıncı düğümündeki bir veya daha fazla yayına abone olan bir veya daha fazla aboneye sahip bir yayınlama ve abone olma modelini kullanır. Aboneler, abone oldukları yayınlardan veri çeker ve daha sonra, basamaklı çoğaltmaya veya daha karmaşık yapılandırmalara izin vermek için verileri yeniden yayınlayabilir. Aşağıdaki işlemler için kullanılır.
Tek bir veritabanındaki veya bir veritabanının bir alt kümesindeki artımlı değişiklikleri, meydana geldiklerinde abonelere gönderme.
Birden fazla veritabanını tek bir veritabanında birleştirmek (örneğin analitik amaçlar için).
PostgreSQL'in farklı ana sürümleri arasında çoğaltma.
Farklı platformlardaki PostgreSQL örnekleri arasında çoğaltma (örneğin Linux'tan Windows'a)
Farklı kullanıcı gruplarına çoğaltılmış verilere erişim sağlama.
Veritabanının bir alt kümesini birden çok veritabanı arasında paylaşma.
PostgreSQL için Amazon RDS için mantıksal çoğaltmayı etkinleştirmek için
AWS kullanıcı hesabı, Amazon RDS üzerindeki PostgreSQL veritabanı için mantıksal çoğaltma gerçekleştirmek için rds_superuser rolünü gerektirir.
Rds.logical_replication parametresini 1 olarak ayarlayın.
Abone örneğinin (replika) bağlanmasına izin vermek için yayıncı örneğinin (üretim) güvenlik grubunun gelen kurallarını değiştirin. Bu genellikle abonenin IP adresini güvenlik grubuna dahil ederek yapılır.