什麼是鍵值資料庫?

鍵值資料庫定義

鍵值資料庫是一種非關聯式資料庫,使用簡單的鍵值方法存放資料。鍵值資料庫將資料存放為鍵值組集合,而其中的鍵做為唯一識別碼。鍵和值不限種類,從簡單物件到複雜的複合物件皆可。鍵值資料庫具備高度可分割性,允許其他類型資料庫無法達到的大規模橫向擴展。 例如,如果現有分割區用完容量,且需要更多儲存空間,則 Amazon DynamoDB 會分配其他分割區給表格。

下圖顯示 DynamoDB 中存放為鍵值組的資料範例。

顯示 DynamoDB 中存放為鍵值組的資料範例圖

使用案例

工作階段存放區

工作階段導向的應用程式 (例如 Web 應用程式) 會在使用者登入時啟動工作階段,並且在使用者登出或工作階段逾時之前處於作用中狀態。在這段期間,應用程式會將所有與工作階段相關的資料存放在主記憶體或資料庫中。工作階段資料可包括使用者描述檔資訊、訊息、個人化資料和主題、建議、有針對性的促銷和折扣。每一個使用者工作階段都會有唯一的識別符。除了主索引鍵之外,永遠不會查詢工作階段資料,因此快速鍵值存放區更適合工作階段資料。通常,鍵值資料庫的每頁開銷會比關聯式資料庫來得少。

購物車

在假日購物季節,電子商務網站可能在幾秒鐘內收到數十億筆的訂單。鍵值資料庫可以處理大量資料的擴展和極大量的狀態變更,而透過分散式處理和儲存,為數百萬同時上線的使用者提供服務。鍵值資料庫還具有內建冗餘,可以處理儲存節點的遺失。

熱門的鍵值資料庫

Amazon DynamoDB

Amazon DynamoDB 是非關聯式資料庫,無論任何規模均能提供可靠效能。它是全受管、多區域、多主機的資料庫,可提供穩定的小於 10 毫秒延遲,還包括內建安全性、備份和還原以及記憶體內快取。在 DynamoDB 中,一個項目包括一個主索引鍵或複合鍵,以及數量不限的屬性。與單一項目相關聯的屬性數量沒有明確限制,但項目的總大小 (包括所有屬性名稱和屬性值) 不可以超過 400 KB。 表格是資料項目的集合,如同關聯式資料庫中的表格是行的集合。每個表格可以有無限數量的資料項目。

利用這個逐步教學,可以在 10 分鐘內啟動和執行 DynamoDB。進一步了解 DynamoDB,並立即開始使用

Amazon DynamoDB 入門

Apache Cassandra

Apache Cassandra 是一種常用的高效能非關聯式資料庫。目前維護現場部署 Cassandra 的 AWS 客戶,可能希望利用在 Amazon EC2 上執行 Cassandra 時所帶來可擴展性、可靠性、安全性和經濟效益。

EC2 和 Amazon Elastic Block Store (Amazon EBS) 在 AWS 雲端提供安全、可調整大小的運算容量和儲存空間。結合後,您可以根據需要來部署 Cassandra 並擴展容量。由於可能的部署拓撲數量,選擇與使用案例最合適的策略,有時候也很重要。利用在 Amazon EC2 上執行 Apache Cassandra 的最佳實務,在 AWS 雲端中部署 Apache Cassandra。

DataStax Enterprise (DSE) 是採用 Apache Cassandra 技術之雲端應用程式的永遠啟用資料平台。DSE 旨在處理跨多節點的大數據工作負載,不會有單一故障點。DSE 會在同質節點之間採用點對點分散式系統來解決故障問題,其中資料會分散到在叢集中的所有節點。DSE 提供的進階功能旨在加速您建立無人能及的智慧型雲端應用程式的能力。DSE 每個節點內的整合包含功能強大的索引、搜尋、分析和圖形功能,這些是將 Cassandra 與 Apache Solr、Apache Spark 和 DSE Graph 相結合之後所得到的功能。您可以寫入一次資料,然後使用各種工作負載或存取模式存取資料,所有都從一個緊密結合的解決方案即可完成。 

利用 AWS DataStax Enterprise 快速入門 (另提供 PDF 格式) 在 AWS 雲端部署 DSE 叢集。