功能
方便使用的受管部署
Amazon RDS for PostgreSQL 是針對需要 PostgreSQL 資料庫完整特性和功能的開發人員或企業,或希望對使用 PostgreSQL 資料庫的現有應用程式和工具進行遷移的使用者而設計的。Amazon RDS for PostgreSQL 可以讓您直接存取在自己的 Amazon RDS 資料庫執行個體上執行的熟悉 PostgreSQL 資料庫軟體,因此您的應用程式應該可以順暢地執行。
- 預先設定參數 – Amazon RDS for PostgreSQL 部署中已預先設定一組實用的參數和設定,適合您所選擇的資料庫執行個體類別使用。您可以在幾分鐘內啟動 PostgreSQL 執行個體並連接到應用程式,無需其他設定。如果您需要更多控制,可透過資料庫參數群組來達成。
- 監控和指標 – Amazon RDS 針對資料庫執行個體部署提供 Amazon CloudWatch 指標,並不收取其他費用。您可以使用 AWS 管理主控台檢視資料庫執行個體部署的關鍵運作指標,包括運算/記憶體/儲存容量使用率、I/O 活動和資料庫執行個體連線。
- 資料庫事件通知 – Amazon RDS 透過電子郵件或 SMS,針對資料庫執行個體部署提供 Amazon SNS 通知。您可以使用 AWS 管理主控台或 Amazon RDS API,訂閱超過 40 種與 Amazon RDS 部署相關的不同資料庫事件。
- 自動化軟體修補 – Amazon RDS 會確保支援部署的 PostgreSQL 軟體已安裝最新修補程式,保持在最新狀態。您可以透過資料庫引擎版本管理,控制是否修補您的資料庫執行個體,以及何時進行修補。
快速且可預期的儲存
- 一般用途 (SSD) – Amazon RDS 一般用途 (SSD) 儲存可提供 3 IOPS/每佈建 GB 的一致基準,將能力大幅提升到 3,000 IOPS。
您可以從磁帶儲存轉換到一般用途 (SSD) 儲存;執行此操作時,可用性會受到短暫的影響。
要進一步了解和開始使用 Amazon RDS 一般用途 (SSD) 儲存,請參閱 Amazon RDS User Guide 的 General Purpose (SSD) Storage 部分。
- 佈建 IOPS (SSD) – 每個資料庫執行個體最多可佈建 64 TB 儲存和 80,000 IOPS。根據您的資料庫工作負載、執行個體類型以及選擇的資料庫引擎,實際實現的 IOPS 可能與您佈建的數量不同。請參閱 Amazon RDS User Guide 的 Factors That Affect Realized IOPS 部分。
您可以從標準儲存轉換到佈建 IOPS 儲存,獲得一致的輸送量和低 I/O 延遲性。執行此操作時,可用性會受到短暫的影響。您可以在無停機時間的前提下,隨時獨立地擴展 IOPS (以 1000 為增量) 和儲存。您可以根據相關因素擴展或縮減 IOPS,例如,應用程式的季節性流量變化率等因素。
要進一步了解和開始使用 Amazon RDS 佈建 IOPS,請參閱 Amazon RDS User Guide 的 Provisioned IOPS Storage 部分。
備份與恢復
- 自動備份 – Amazon RDS 的自動備份功能預設為開啟,提供資料庫執行個體的 point-in-time 恢復功能。Amazon RDS 將備份您的資料庫和交易日誌,並且按使用者指定的保留期進行儲存。這讓您能夠將資料庫執行個體恢復到保留期內任何一秒鐘的狀態,最多可恢復到前五分鐘的狀態。自動備份保留期最長可設定為 35 天。
- 資料庫快照 – 資料庫快照是使用者啟動的資料庫執行個體備份。Amazon RDS 將存放這些完整資料庫備份,直至您明確刪除它們。您可以在需要時隨時從資料庫快照建立新資料庫執行個體。您也可以跨越 AWS 區域複製資料庫快照,以處理跨地理區域遷移或災難復原等使用案例。
按鈕擴展
- 資料庫執行個體類別 – 使用 Amazon RDS API 或在 AWS 管理主控台按幾下滑鼠,即可擴展或縮減支援部署的運算和記憶體資源。擴展操作通常可在幾分鐘內完成。
- 儲存和 IOPS – 隨著儲存需求的增長,您可以在無停機時間的前提下,隨時佈建額外的儲存。如果您使用 RDS 佈建 IOPS,也可以指定將 IOPS 速率從 1,000 IOPS 增加到 80,000 IOPS (以 1,000 IOPS 為增量),以及將儲存從 100 GB 增加到 64 TB,以擴展資料庫執行個體的輸送量。
複寫
- 異地同步備份部署 – 這是生產資料庫執行個體的部署選項,可增強資料庫可用性,也能保護最新的資料庫更新不受意外故障的影響。當您建立或將資料庫執行個體修改為以異地同步備份部署模式執行時,Amazon RDS 將在不同的可用區域 (在不同實體位置的獨立基礎設施) 自動佈建和管理一個「備用」複本。資料庫更新會在主資源和備用資源上同時進行,避免出現複寫延遲。當遇到計劃的資料庫維護、資料庫執行個體故障或可用區域故障,Amazon RDS 將自動容錯移轉到最新的備用複本,因此不用管理介入也能很快恢復資料庫操作。在容錯移轉前,您無法直接存取備用資源,它也不能用於讀取流量。進一步了解 »
- 僅供讀取複本 – 此複寫功能可以輕鬆彈性地擴展超越單一資料庫執行個體的容量限制,以處理高讀取量的資料庫工作負載。您可以在一個 AWS 區域內建立一個或多個指定來源資料庫執行個體的複本,然後從多個資料副本提供大量應用程式讀取流量服務,以這種方式提升總體的讀取輸送量。Amazon RDS 使用 PostgreSQL 的原生複寫功能,將來源資料庫執行個體的變更傳播到任何相關的僅供讀取複本中。請注意,僅供讀取複本是利用標準 PostgreSQL 複寫功能,所以可能會落後其來源資料庫執行個體。進一步了解 »
隔離和安全
Amazon RDS 可讓您使用透過 AWS Key Management Service (KMS) 管理的金鑰將 PostgreSQL 資料庫加密。在以 Amazon RDS 加密的資料庫執行個體上,存放於基礎儲存體中的靜態資料,及其進行自動備份、產生僅供讀取複本和快照時都會加密。
使用 Amazon Virtual Private Cloud (VPC),您可以將資料庫執行個體隔離在自己的虛擬網路中,並使用產業標準的加密 IPSec VPN 連接到現有 IT 基礎架構。若要進一步了解有關 VPC 中的 Amazon RDS 資訊,請參閱 Amazon RDS User Guide。此外,使用 Amazon RDS 時,您可以設定各種防火牆設定值,並控制對資料庫執行個體的網路存取。
支援的 PostgreSQL 功能
- PostGIS – PostGIS 是一個空間資料庫擴展程式,適用於 PostgreSQL 物件關聯式資料庫。它增加對地理物件的支援,可讓您以 SQL 語言擴充功能執行位置查詢 ─ PostgrepSQL 可透過擴充功能,將程序式語言載入資料庫內。PostgreSQL 包含四種語言擴充功能,以支援 Perl、pgSQL、Tcl 和 JavaScript (透過 V8 JavaScript 引擎)。
- 全文檢索搜尋字典 – PostgreSQL 支援全文檢索搜尋,具有識別自然語言文件的功能,可滿足查詢要求,而且也可以按照與查詢的相關性對結果進行排序。字典除了能夠提升搜尋品質、規範搜尋條件以及移除停用字詞外,還能改善查詢的效能。
- HStore、JSON 資料類型 – PostgreSQL 提供對 "JSON" 資料類型和兩種 JSON 函數的支援。這樣可以從資料庫伺服器直接傳回 JSON。PostgreSQL 還包含一種擴充功能,可以實作 ‘hstore’ 資料類型,將鍵/值對的集合儲存於一個 PostgreSQL 值中。
- pg_stat_statements – pg_stat_statements 擴充功能可讓您追蹤在執行個體上執行的所有 SQL 陳述式的執行統計資料,例如使用者 ID、實際執行的查詢以及消耗的總時間。
- 外來資料包裝函式 – postgres_fdw 擴充功能可讓您存取和修改其他 PostgreSQL 伺服器中儲存的資料,如同 Amazon RDS for PostgreSQL 資料庫執行個體中的資料表一樣。
- 核心 PostgreSQL 引擎功能 – 有關 PostgreSQL 核心引擎功能的詳細清單,請參閱這裡。
使用 Amazon RDS for PostgreSQL
Amazon RDS 允許您使用 AWS 管理主控台或一組簡單的 Web 服務 API 來建立、刪除和修改關聯式資料庫執行個體 (DB 執行個體)。您也可以控制執行個體的存取和安全性,並管理資料庫備份和快照。如需可用的 Amazon RDS API 完整清單,請參閱 Amazon RDS API Guide。以下為一些最常用的 API 及其功能:
- CreateDBInstance – 佈建新的資料庫執行個體、將資料庫引擎指定為 PostgreSQL、資料庫執行個體類別、儲存容量、資料庫引擎版本 (選用)、您想使用的備份保留政策,以及資料庫執行個體運行時是否使用異地同步備份部署功能。您只需要呼叫這個 API,就可以存取運行中的 PostgreSQL 資料庫,以及預先安裝的軟體和您所請求的可用資源容量。
- ModifyDBInstance – 修改執行中的資料庫執行個體的設定。這可讓您使用單一 API 呼叫來擴展資料庫執行個體的可用資源,以回應資料庫的負載,或代您變更自動備份和維護的方式,或是在資料庫執行個體或異地同步備份部署之間進行轉換。您也可以使用此 API 對資料庫執行個體的 PostgreSQL 版本升級進行選擇性控制,也就是保持與特定 PostgreSQL 版本的相容性、在生產部署之前測試新版本是否適用於您的應用程式,以及按照自己的條件和時間表執行版本升級。
- DeleteDBInstance – 刪除執行中的資料庫執行個體。您可以使用 Amazon RDS 隨時終止資料庫執行個體,只需為使用的資源付費。
- CreateDBSnapshot – 產生資料庫執行個體的快照。您可以將資料庫執行個體恢復到這些使用者建立快照的任何一點,甚至恢復到先前刪除的資料庫執行個體。
- RestoreDBInstanceToPointInTime – 從 point-in-time 備份建立新的資料庫執行個體。您可以將資料庫執行個體恢復到您指定的保留期內的任何一點,通常最多能夠恢復到五分鐘前資料庫的使用狀態。
- CreateDBInstanceReadReplica – 建立資料庫執行個體作為來源資料庫執行個體的僅供讀取複本。
遷移到 Amazon RDS for PostgreSQL
如果應用程式已依賴 PostgreSQL 資料庫,您可以將資料輕鬆匯入 Amazon RDS。通常,將資料遷移到 Amazon RDS 只需:
- 建立一個具備所需運算、儲存容量和存取控制的資料庫執行個體。
- 使用 pg_dump 建立欲匯入資料的傾印內容。
- 使用 psql,在資料庫執行個體上建立資料庫,並載入傾印內容。
- 在應用程式設定檔中更新資料庫連線字串。
執行 PostregSQL 9.3.5 及更新版本的 Amazon RDS for PostgreSQL 資料庫執行個體支援工作階段複寫角色。您也可以利用這個角色,並使用開放原始碼觸發式複寫工具,例如 Londiste,在停機時間最短的前提下,將資料匯入 Amazon RDS for PostgreSQL 資料庫執行個體。
如需將資料匯入 Amazon RDS 的詳細資訊,請參閱 Amazon RDS 文件中的 Importing Data into PostgreSQL 章節 。
按實際用量付費
每個月底,您會收到一張根據您所實際消費 Amazon RDS 資源的付款帳單。一旦您建立的資料庫執行個體可進行連接,即按該資料庫執行個體執行的小時數向您收取費用。每個資料庫執行個體將持續執行直至終止,當您發出刪除資料庫執行個體的 API 呼叫後,或在發生執行個體故障的情況下,執行個體就會終止。未滿一小時的資料庫執行個體小時數按一小時計費。除了資料庫執行個體小時數以外,您還需要為每月儲存、I/O 請求和備份付費。如果您在計費期間擴展儲存容量,則按相應比例計費。
用途和限制
使用本服務需遵守 Amazon Web Services 客戶協議 。