Amazon DynamoDB 是一種支援鍵值文件資料模型的無伺服器 NoSQL 資料庫服務。開發人員可使用 Amazon DynamoDB 來建置現代的無伺服器應用程式,這些應用程式可從小規模開始並在全球擴展。Amazon DynamoDB 可透過自動執行水平擴展來進行擴展,以支援幾乎任何大小的資料表。

Amazon DynamoDB 每天一致處理超過 10 萬億個請求。可用性、耐久性和容錯能力是內建功能且無法關閉,可讓您不需為這些功能架構應用程式。

Amazon DynamoDB 的設計是要執行可能使得傳統關聯式資料庫不堪負載的高效能、網際網路規模的應用程式。Amazon DynamoDB 憑藉十多年的開拓性創新投資經驗,可提供無限的可擴展性,同時提供回應不到 10 毫秒的一致效能和高達 99.999% 的可用性。

Amazon DynamoDB 的「最新消息」公告可讓您輕鬆了解新的發佈訊息,以了解持續開發的新特徵和功能。

什麼是 Amazon DynamoDB?

無伺服器效能與無限的可擴展性

鍵值和文件資料模型

Amazon DynamoDB 同時支援鍵值和文件資料模型。做為 NoSQL 資料庫,Amazon DynamoDB 具有靈活的結構描述,因此,每個項目都能有許多不同的屬性。靈活的結構描述可讓您隨業務需求變更輕鬆調整,而沒有如同在關聯式資料庫般,必須重新定義資料表結構描述的負擔。

擴展至零的無伺服器

使用 Amazon DynamoDB,不需佈建、修補或管理任何伺服器,也不需安裝、維護或操作任何軟體。Amazon DynamoDB 沒有版本 (主要版本、次要版本或修補程式),也沒有維護時段,而且 Amazon DynamoDB 提供零停機維護服務。Amazon DynamoDB 隨需定價提供依用量計費定價、擴展至零,並自動擴展資料表以根據容量進行調整,且無需管理即可維持效能。

ACID 交易

Amazon DynamoDB 適用於關鍵任務工作負載,包括針對需要複雜商業邏輯的應用程式,支援單元性、一致性、隔離性和耐用性 (ACID) 交易。Amazon DynamoDB 為交易提供原生的伺服器端支援,簡化了開發人員對資料表內或資料表間的多個項目進行協調式、全有或全無變更的體驗。

現在,Amazon DynamoDB 支援每筆交易 100 個動作,以改善開發人員的生產力。利用對於交易的支援,開發人員可以將 Amazon DynamoDB 的規模、效能和企業優勢延伸至更廣泛的一組關鍵任務工作負載。

使用全域資料表進行主動-主動式複寫

Amazon DynamoDB 全域資料表可在您選擇的 AWS 區域中,以 99.999% 的可用性對您的資料進行主動-主動式複寫。全域資料表為多重主動式,意味著您可從任何複本進行寫入和讀取,而且您全域複寫的應用程式可在選定的區域中本機存取資料,以獲得個位數毫秒的讀取與寫入效能。

此外,全域資料表可自動擴展容量,以因應您的多區域工作負載。全域資料表可改善應用程式的多區域彈性,並且應視為組織業務持續性策略的一部分。

Amazon DynamoDB Streams 做為事件導向型架構的一部分

Amazon DynamoDB Streams 是一項變更資料擷取功能。每當應用程式建立、更新或刪除資料表中的項目時,Amazon DynamoDB Streams 都會以近乎即時的速度,按時序序列記錄每個項目層級變更,因此非常適合事件導向型架構應用程式取用和處理變更。所有變更會解除複製並存放 24 小時。

此外,應用程式還可存取此日誌,並在資料項目經過近乎即時地修改之前和之後出現時檢視這些項目。Amazon DynamoDB Streams 確保每則串流記錄在串流中只出現一次,而且對於每個修改的項目,串流記錄的出現順序與項目的實際修改相同。

次要索引

與所有其他資料庫系統類似,您可從建立資料表開始,該資料表是一個項目集合。使用 Amazon DynamoDB 時,資料表中的每個項目都有其自己的主索引鍵。此外,許多應用程式還可受益於擁有一個或多個輔助索引鍵,以使用其他屬性更有效地搜尋資料。Amazon DynamoDB 提供建立全域和本機次要索引的選項,這可讓您使用次要或替代索引鍵來查詢資料表中的資料。

全域次要索引也稱為稀疏索引。除了為您提供資料存取方式的最大靈活性之外,您還能夠以較低的成本、優異的效能來佈建較低的寫入輸送量

安全性與可靠性

Amazon DynamoDB 利用加密並持續備份您的資料來進行保護,以協助保護您的資料。

精細的存取控制

使用 Amazon DynamoDB 時,無需使用者名稱或密碼。Amazon DynamoDB 使用 AWS Identity and Access Management (IAM) 進行身分驗證、建立和存取資源。您可根據該使用者的身分,指定 IAM 政策以資源為基礎的政策和條件,以進行精細存取、限制對資料表中特定項目和屬性的讀取或寫入存取。這可讓客戶在程式碼層級強制執行安全政策。

靜態加密

Amazon DynamoDB 預設會加密所有客戶靜態資料。靜態加密會使用 AWS Key Management Service (KMS) 中存放的加密金鑰來增強資料的安全性。 除了 AWS 資料庫加密 SDK 之外,您還可以執行屬性層級加密,進一步對表格中的資料強制執行精細的存取控制。Amazon DynamoDB 可讓您透過靜態加密,建立符合嚴格加密合規和法規要求,而且對安全性要求甚高的應用程式。

加密金鑰可保護您的資料,防止未經授權存取基礎儲存,進而提供額外的資料保護層。 您可以指定 Amazon DynamoDB 是否應使用 AWS 擁有的金鑰 (預設加密類型)、AWS 受管金鑰,或客戶受管金鑰來加密使用者資料。使用 AWS 擁有的 KMS 金鑰進行的預設加密可免費提供。

時間點復原

時間點復原 (PITR) 有助於保護您的 Amazon DynamoDB 資料表免遭意外寫入或刪除操作。PITR 提供 Amazon DynamoDB 資料表資料的持續備份,而您可以將該資料表的資料還原至任何時間點,最長達過去35 天中的某個秒。

PITR 不會使用佈建的容量,也不會影響應用程式的效能或可用性。啟用 PITR 或起始備份和還原操作非常簡單,只要在 AWS 管理主控台按一下或使用單一 API 呼叫即可。

隨需備份與還原

隨需備份和還原可讓您完整備份 Amazon DynamoDB 表格的資料以進行資料封存,協助您符合公司與政府的法規要求。您可以備份資料量從幾 MB 到數百 TB 不等的表格,不會對生產應用程式的效能或可用性造成影響。透過 AWS Backup 整合,您還可以複製跨帳戶和跨區域的隨需備份、對備份標記成本分配,以及將備份轉移至冷儲存。

私有網路連線能力

Amazon DynamoDB 支援 Gateway Virtual Private Cloud (VPC) 端點和介面 VPC 端點,用於 VPC 內或內部部署資料中心的連線。您可透過使用 AWS PrivateLink 啟用的介面 VPC 端點,設定從內部部署應用程式到 DynamoDB 的私有網路連線。這讓客戶能夠簡化與 DynamoDB 的私有連線並確保合規。

經濟實惠

讀取/寫入容量模式

Amazon DynamoDB 為每個資料表提供容量模式:隨需和佈建。

  •  針對較無法預測的工作負載,您無法確定是否會有高使用率,那麼,隨需容量模式可為您處理容量的管理,而您只需要對使用的部分付費。
  • 使用佈建容量模式的資料表需要您設定讀取與寫入容量。當您確定所指定的佈建容量會有相當高的使用量,則佈建容量模式會較具成本效益。 

隨需模式

針對使用隨需容量模式的資料表,當工作負載急速增加或下降至任何先前達到的流量層級時,Amazon DynamoDB 會快速容納它。如果工作負載的流量層級達到新的尖峰,Amazon DynamoDB 會快速調整以容納工作負載。您可以對新的和現有資料表使用隨需容量模式,而且可以繼續使用現有的 Amazon DynamoDB API,不需變更程式碼。

標準不常存取 (標準 – IA) 資料表類別

針對不常存取的資料,您可以使用 Amazon DynamoDB 標準 – IA 資料表類別,這有助於將 Amazon DynamoDB 成本降低高達 60%。標準 – IA 資料表專為長期儲存不常存取的資料而設計了較低的儲存成本,例如應用程式日誌、歷史遊戲資料、舊社交媒體貼文等等。其具有與 Amazon DynamoDB 標準資料表相同的可用性、耐久性和效能,這對於大多數工作負載來說是預設且最具成本效益的選項。

自動擴展以改善成本效益

針對使用佈建容量的資料表,Amazon DynamoDB 會根據您之前設定的容量來提供輸送量和儲存的自動擴展,方法是監控應用程式的效能使用量。

  • 如果應用程式流量成長,Amazon DynamoDB 會增加輸送量來容納負載。
  • 如果您的應用程式流量縮減,Amazon DynamoDB 會縮減規模,使得您對未使用的容量付較少的費用。

預留容量

相較於 Amazon DynamoDB 標準資料表單一區域讀取和寫入容量聯合的佈建容量,預留容量可讓您選擇預留一年或三年期的資料庫容量,以換取大幅折扣。如果您的應用程式具有可預測的讀取和寫入輸送量,您可以考慮使用預留容量,這樣相較於標準佈建容量費率,一年期最高可節省 54%,三年期最高可節省 77%。

免費方案

Amazon DynamoDB 面向尋求以無風險方式體驗 Amazon DynamoDB 功能的任何人,提供慷慨的免費方案

與 AWS 服務整合

透過選擇 Amazon DynamoDB,您可受益於與其他 AWS 服務的廣泛整合,例如搭配 AWS Backup 的資料保護。

運用 Amazon DynamoDB Accelerator 實現毫秒級延遲

Amazon DynamoDB Accelerator (DAX) 是一種可與 Amazon DynamoDB 相容的快取服務,能讓您使用全受管的記憶體快取,針對任何規模的資料表提供快速讀取效能。您可使用 DAX 將 Amazon DynamoDB 表的讀取效能增進高達 10 倍 (將讀取所需時間從毫秒縮短至微秒),即使是針對每秒數百萬次的要求亦可輕鬆處理。進一步了解 DAX 功能DAX 定價

從 Amazon Simple Storage Service (S3) 大量匯入/匯出

從 S3 大量匯入/匯出可協助您從資料中取得更大價值,無需撰寫程式碼即可將 Amazon DynamoDB 資料表從一個應用程式、帳戶或區域移動、轉換和複製到另一個。大量匯入/匯出不會使用資料表的讀取或寫入容量,因此,您無需規劃或佈建額外的容量。大量匯入/匯出程序由 Amazon DynamoDB 完全管理。

從 S3 大量匯入可讓您使用支援的格式 (包括 CSV、Amazon DynamoDB JSON 和 Amazon Ion),匯入從 MB 到 TB 任意規模的資料。 相較於使用佈建容量的用戶端型寫入,使用從 S3 大量匯入時,客戶最多可節省 66% 的費用

透過大量匯出至 S3,您可在過去 35 天內的任意時間點 (每秒精細度),從啟用時間點復原 (PITR) 的資料表匯出資料。將資料從 Amazon DynamoDB 匯出至 Amazon S3 之後,您可以使用其他 AWS 服務 (例如 Amazon Athena、Amazon SageMaker 等) 來分析您的資料並擷取可行的洞察。

藉助 Kinesis Data Streams for Amazon DynamoDB 打造的進階串流應用程式

Amazon Kinesis Data Streams for Amazon DynamoDB 可擷取 Amazon DynamoDB 資料表中的項目層級變更,以便支援即時儀表板、產生指標,以及將資料傳遞至資料湖。Kinesis Data Streams 可讓建立各種進階串流應用程式,例如即時日誌彙總、即時商業分析和 IoT 資料擷取。

透過 Kinesis Data Streams,您還可以使用 Amazon Kinesis Data Firehose 將 Amazon DynamoDB 資料自動傳遞至其他 AWS 服務,例如 Amazon S3、Amazon OpenSearch Service 和 Amazon Redshift。

使用觸發程序變更追蹤

Amazon DynamoDB 與 AWS Lambda 整合以提供觸發程序。使用觸發程序,您可以在偵測到 Amazon DynamoDB 表的項目層級變更時,自動執行自訂函數。您可以利用觸發器建置事件驅動型應用程式,該應用程式會對 Amazon DynamoDB 資料表中的資料修改做出反應。Lambda 函數可以執行您指定的任何動作,例如傳送通知或啟動工作流程。

使用 Amazon Cloudwatch 監控和診斷系統效能

為了輕鬆監控資料庫效能,Amazon DynamoDB 已與 Amazon CloudWatch 整合,這樣可收集和處理原始資料庫效能資料。您可以使用 Amazon CloudWatch,為您的 Amazon DynamoDB 資料庫建立指標和警示的自訂檢視和儀表板。預設會提供此監控功能且免費使用。此外,您還可以建立警示,以便依據指標效能自動傳送給您。

Amazon CloudWatch Contributor Insights 可協助您快速識別對資料庫和應用程式效能造成影響的人員或內容。此功能可讓您更輕鬆地在發生操作事件時,更迅速地隔離、診斷及化解問題。

常見問答集

Amazon DynamoDB 的用途是什麼?

Amazon DynamoDB 是一個 NoSQL 資料庫,可用於執行任何規模的高效能應用程式。當您的應用程式需要較高讀/寫輸送量,跨多區域不到 10 毫秒的回應效能和無限可擴展性時,這是無可比擬的。如果您的應用程式需要水平擴展並能夠縮減規模至零,Amazon DynamoDB 可提供全自動化和全受管體驗。

Amazon DynamoDB 的優勢是什麼?

Amazon DynamoDB 的獨特優勢包括︰它是久經驗證的全受管、可擴展至零的無伺服器資料庫,可提供回應不到 10 毫秒的效能和高達 99.999% 的可用性。憑藉其大規模且一致的效能,Amazon DynamoDB 還提供內建的安全性、耐久性和可靠性,可滿足最嚴苛要求的全域應用程式所需。

憑藉其易用性和無限的可擴展性,Amazon DynamoDB 通常適用於尋求一致、快速效能與無限可擴展性的新型現代應用程式,以及已建立的網際網路規模應用程式。

使用 Amazon DynamoDB 有哪些主要優勢?

Amazon DynamoDB 是一項全受管、無伺服器 NoSQL 資料庫,提供無限的可擴展性、主動-主動資料複寫以實現多區域彈性,以及經證實不到 10 毫秒的一致回應時間,可滿足最嚴苛要求的應用程式所需。您可以輕鬆地開始使用 Amazon DynamoDB,而且非常簡單易用。

Amazon DynamoDB 是否無伺服器?

是,Amazon DynamoDB 無伺服器。您不必管理伺服器,省去了基礎設施管理工作,例如容量佈建和修補。此外,Amazon DynamoDB 並沒有版本和升級,而且提供零停機維護。

Amazon DynamoDB ACID 是否合規?

是,Amazon DynamoDB Transactions 在單一 AWS 帳戶和區域的一個或多個資料表符合 ACID 標準。因此,您可以在建置應用程式時使用 Amazon DynamoDB,在單一邏輯業務操作中需要對多個項目協調插入、刪除或更新操作。

Amazon DynamoDB 是否具有僅供讀取複本?

Amazon DynamoDB 會自動橫向擴展以容納任意數量的讀取流量,因此不需要僅供讀取複本 (通常是關聯式資料庫概念)。

Amazon DynamoDB 是否會自動擴展?

是,Amazon DynamoDB 會依據您的應用程式需求自動水平擴展。Amazon DynamoDB 能夠自動擴展和擴展為零,因此非常適合許多應用程式。

Amazon DynamoDB 的速度有多快?

Amazon DynamoDB 的回應時間不到 10 毫秒,而且可以為要求最嚴苛的應用程式持續提供此效能。舉例來說,在 2022 年 Amazon Prime Day,Amazon DynamoDB 以不到 10 毫秒的回應效能,可靠地處理了數萬億次 API 呼叫,每秒處理 1.052 億個請求。

如何設定 Amazon DynamoDB?

Amazon DynamoDB 專為開發人員打造,因為它無伺服器,因此使用我們的技術文件可以非常輕鬆地完成設定。

網頁影像
瀏覽定價頁面

探索 Amazon DynamoDB 的定價選項。

進一步了解 
帳戶註冊影像
註冊免費帳戶

立即存取 AWS 免費方案。 

註冊 
工具箱影像
開始在主控台進行建置

開始在 AWS 管理主控台使用 Amazon DynamoDB 進行建置。

登入