如需與 Amazon Timestream for LiveAnalytics 類似的功能,請考慮使用 Amazon Timestream for InfluxDB。它提供簡化的資料擷取和單一位數毫秒查詢回應時間,以進行即時分析。在這裡進一步了解。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
InfluxDB 僅供讀取複本叢集的 Amazon Timestream 概觀
下列各節討論 Timestream for InfluxDB 僅供讀取複本叢集:
僅供讀取複本的使用案例
在各種情況下,使用僅供讀取複本叢集可能很有意義,包括下列項目:
擴展超越單一資料庫執行個體的運算或 I/O 容量,以處理高讀取量的資料庫工作負載。您可以將此多餘讀取流量指向到一或多個僅供讀取複本。
在主要寫入器執行個體無法使用時提供讀取流量。在某些情況下,您的主要資料庫執行個體可能無法接受 I/O 請求,例如,因為備份或排程維護的 I/O 暫停。在這些情況下,您可以將讀取流量導向僅供讀取複本。針對此使用案例,請記住,僅供讀取複本上的資料可能為「過時」,因為主要資料庫執行個體無法使用。此外,請記住,您需要關閉自動容錯移轉,這些案例才能運作。
商業報告或資料倉儲案例,您可能希望針對僅供讀取複本執行商業報告查詢,而非針對生產資料庫執行個體。
實作災難復原。如果主要資料庫執行個體失敗,您可以將僅供讀取複本提升為主要資料庫,做為災難復原解決方案。
對於可用性比耐用性更重要的案例,容錯移轉速度更快。由於僅供讀取複本使用非同步複寫,因此在容錯移轉之前,主要寫入器執行個體遞交的某些資料可能未複寫。不過,對於執行時間至關重要的應用程式,此取捨是可接受的。根據您的工作負載特性,容錯移轉至僅供讀取複本可能比容錯移轉至使用同步複寫的待命資料庫執行個體快得多,因為複本執行個體已在執行中,不需要啟動引擎。這在每分鐘計數的使用案例中特別有用。
僅供讀取複本的運作方式
若要建立僅供讀取複本叢集,Amazon Timestream for InfluxDB 會使用 InfluxData 的授權僅供讀取複本附加元件。附加元件訂閱是透過 AWS Marketplace,直接從 Amazon Timestream 管理主控台啟用。如需詳細資訊,請參閱透過 讀取複本授權 AWS Marketplace。
僅供讀取複本會以標準資料庫執行個體計費,費率與叢集中每個節點所使用的資料庫執行個體類型相同,再加上 InfluxData 授權附加元件的成本。附加元件的成本會透過 以執行個體小時計費 AWS Marketplace。在相同 AWS 區域內的來源資料庫執行個體與僅供讀取複本之間複寫資料時,不會向您收取資料傳輸費用。
建立並設定僅供讀取複本叢集並開始接受寫入後,每當主要資料庫執行個體發生變更時,Amazon Timestream for InfluxDB 會使用非同步複寫方法來更新僅供讀取複本。
僅供讀取複本做為專用資料庫執行個體運作,只接受唯讀連線。應用程式可以像連接到任何其他資料庫執行個體一樣的方式連接到僅供讀取複本,提供無縫且熟悉的體驗。Amazon Timestream for InfluxDB 會自動將所有資料從主要資料庫執行個體複寫至僅供讀取複本,以確保資料一致性和準確性。請注意,更新會在叢集層級完成,並同時套用至主要和複本。
Timestream for InfluxDB 僅供讀取複本的特性
| 功能或行為 | InfluxDB 的 Timestream |
|---|---|
| 什麼是複寫方法? | 邏輯複寫。 |
| 能將複本變成可寫入嗎? | 否,InfluxDB 僅供讀取複本的 Timestream 設計為唯讀且無法寫入。雖然在容錯移轉的情況下,僅供讀取複本可以提升為主要複本,因此在任何給定時間都接受寫入,但 Timestream for InfluxDB 僅供讀取複本叢集中只能有一個寫入器資料庫執行個體。這可確保資料一致性,並防止來自多個可寫入執行個體的衝突。僅供讀取複本的角色是提供資料的備援唯讀複本,而且會自動拒絕寫入請求以維護資料完整性。 |
| 能否在複本上執行備份? | 是,您可以使用內建引擎功能,使用 Influx CLI 建立備份。 |
| 能否使用平行複寫? | 否,InfluxDB 的 Timestream 具有單一處理程序處理複寫。 |
僅供讀取複本執行個體和儲存體類型
系統會使用與主要資料庫執行個體相同的執行個體和儲存類型建立僅供讀取複本。組態的任何變更都必須在叢集層級進行,並將套用至叢集中的所有執行個體。Timestream for InfluxDB 資料庫執行個體可用的所有執行個體和儲存組態,都適用於 Timestream for InfluxDB 僅供讀取複本叢集。
執行個體類型
| 執行個體類別 | vCPU | 記憶體 (GiB) | 儲存體類型 | 網路頻寬 (Gbps) |
|---|---|---|---|---|
| db.influx.medium | 1 | 8 | 包含流入 IOPS | 10 |
| db.influx.large | 2 | 16 | 包含流入 IOPS | 10 |
| db.influx.xlarge | 4 | 32 | 包含流入 IOPS | 10 |
| db.influx.2xlarge | 8 | 64 | 包含流入 IOPS | 10 |
| db.influx.4xlarge | 16 | 128 | 包含流入 IOPS | 10 |
| db.influx.8xlarge | 32 | 256 | 包含流入 IOPS | 12 |
| db.influx.12xlarge | 48 | 384 | 包含流入 IOPS | 20 |
| db.influx.16xlarge | 64 | 512 | 包含流入 IOPS | 25 |
| db.influx.24xlarge | 96 | 768 | 包含流入 IOPS | 40 |
儲存選項
| InfluxDB 資料庫叢集儲存的 Timestream | 來源資料庫執行個體儲存體配置 | 包含的 IOPS |
|---|---|---|
| 包含流入 IO (3K) | 20 GiB 到 16 TiB | 3,000 IOPS |
| 包含流入 IO (12K) | 400 GiB 到 16 TiB | 12,000 IOPS |
| 包含流入 IO (16K) | 400 GiB 到 16 TiB | 16,000 IOPS |
刪除複本時的考量
如果您不再需要僅供讀取複本,您可以透過呼叫 delete-db-cluster API 明確刪除叢集。在下列範例中,將每個使用者輸入預留位置取代為您自己的資訊。請記住,您目前無法從叢集中移除單一節點。
aws timestream-influxdb delete-db-cluster \ --regionregion\ --endpointendpoint\ --db-cluster-idcluster-id