使用 Amazon Redshift 存取聯合資料時的限制及考量 - Amazon Redshift

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 Amazon Redshift 存取聯合資料時的限制及考量

某些 Amazon Redshift 功能不支援存取聯合資料。您可以在下面找到相關的限制和考量。

以下是搭配 Amazon Redshift 使用聯合查詢時的限制及考量:

  • 聯合查詢支援讀取外部資料來源。您無法在外部資料來源中寫入或建立資料庫物件。

  • 在某些情況下,您可能會存取 Aurora 於其他AWS區域比 Amazon Redshift。在這些案例中,通常會因為跨 AWS 區域傳輸資料而產生網路延遲和帳單費用。我們建議使用 Aurora 全域資料庫與相同AWS區域作為您的 Amazon Redshift 叢集。Aurora 全域資料庫使用專用的基礎設施來進行跨越任意兩個AWS典型延遲小於 1 秒的區域。

  • 請考慮存取 Amazon RDS 或 Aurora 的成本。例如,使用此功能存取極光時,Aurora 會根據 IOPS 計費。

  • 聯合查詢不會啟用從 RDS 或 Aurora 存取卓越亞馬遜 Redshift。

  • 聯合查詢僅在AWS同時提供 Amazon Redshift 和亞馬遜 RDS 或 Aurora 的區域。

  • 聯合查詢目前不支援 ALTER SCHEMA。若要變更結構描述,請使用 DROP 再使用 CREATE EXTERNAL SCHEMA

  • 聯合查詢不會使用並行擴展。

  • 聯合查詢目前不支援通過 PostgreSQL 外部資料包裝器進行存取。

  • 對 RDS MySQL 或 Aurora MySQL 的聯合查詢支持讀提交級別的事務隔離。

  • 如果未指定,Amazon Redshift 將連接到端口 3306 上的 RDS MySQL 或 Aurora MySQL。在 MySQL 的外部架構之前確認 MySQL 端口號。

  • 從 MySQL 獲取時間戳和日期數據類型時,零值被視為 NULL。

以下是使用 PostgreSQL 資料庫的聯合查詢時交易的考量:

  • 如果查詢由聯合資料表組成,則領導者節點會在遠端資料庫上啟動 READ ONLY REPEATABLE READ 交易。在 Amazon Redshift 交易期間會一直保留此交易。

  • 領導者節點透過呼叫 pg_export_snapshot 來建立遠端資料庫的快照,並對受影響的表進行讀取鎖定。

  • 運算節點會啟動交易,並使用在領導者節點上建立的快照,向遠端資料庫發出查詢。

卓越 Amazon Redshift 的外部結構描述可以參考外部 RDS PostgreSQL 或 Aurora PostgreSQL 中的資料庫。當其這樣做時,適用下列限制:

  • 建立參考 Aurora 的外部結構描述時,Aurora PostgreSQL 資料庫的版本必須是 9.6 或更新版本。

  • 建立參考 Amazon RDS 的外部結構描述時,Amazon RDS PostgreSQL 資料庫的版本必須是 9.6 或更新版本。

卓越亞馬遜 Redshift 外部結構描述可以參考外部 RDS MySQL 或 Aurora MySQL 中的資料庫。當其這樣做時,適用下列限制:

  • 建立參考 Aurora 的外部結構描述時,Aurora MySQL 資料庫的版本必須是 5.6 或更新版本。

  • 建立參考 Amazon RDS 的外部結構描述時,RDS MySQL 資料庫的版本必須是 5.6 或更新版本。