NoSQL 資料庫用於儲存非結構化資料。非結構化資料是不符合限制的資訊。NoSQL 資料庫以非關聯性格式儲存資料,這表示您不需要將資料放入預先定義的欄中。當開發人員不知道來源的資料結構時,通常會使用 NoSQL 資料庫,這樣他們就能在無關聯式資料庫限制的情況下將資料儲存在 NoSQL 資料庫中。舉例來說,開發人員可以將其儲存在 JSON 文件中,而不是將資料儲存在欄位中。
非結構化格式有其本身的類型,例如文件、鍵值、圖形和欄系列。您選擇的 NoSQL 供應商會將資料儲存成其中一種格式,但它們都擴展到能夠處理大量資料的企業級儲存孤島。視 NoSQL 供應商而定,查詢使用與標準 SQL 資料庫不同的查詢語法。
AWS 生態系統中有數個 NoSQL 資料庫可用,因此我們將介紹幾個常見的資料庫,以協助您為專案選擇合適的解決方案。
AWS NoSQL 資料庫概覽
Amazon Web Services (AWS) 有數個 NoSQL 資料庫供您選擇。研究每個供應商以及資料庫提供的內容很重要,以確保它適合您的業務專案,包括開源應用程式。我們納入了數個 AWS NoSQL 資料庫,它們具有優缺點。
Amazon DynamoDB
Amazon DynamoDB 是雲端式無伺服器資料庫。在無伺服器環境中,資料庫程式和硬體完全在雲端運行。這表示您的企業不需要管理虛擬機器、專用伺服器,或任何就地部署混合式環境的設定。它對開源應用程式有益。
開發人員使用 API 將查詢傳送至無伺服器 DynamoDB 資料庫。然後,資料庫會傳送 JSON 回應給開發人員的應用程式。管理員可以動態自動橫向擴充資料庫,也就是隨著負載增加而新增伺服器。當您的應用程式必須儲存大量資料,且您懷疑應用程式的用戶群和資料儲存需求將迅速增加時,請使用 DynamoDB。
Amazon DocumentDB
對於熟悉 MongoDB 的開發人員而言,Amazon DocumentDB 與 MongoDB 架構相似,並經過建模。Amazon DocumentDB 在虛擬雲端中運行,因此它能與環境中的其他伺服器透過資料抽象進行分離。例如,您可以將 Amazon DocumentDB 用於一個面向公眾的應用程式,在這種應用中,您需要一個非軍事區(DMZ)來保護網路流量。Amazon DocumentDB 是此架構的好資源。
Amazon DocumentDB 將資料儲存為 JSON 物件,讓開發人員更容易剖析。開發人員可以使用從來源收集的原始 JSON 物件,而無需重新格式化資料,即可插入資料庫。運算能力與儲存設備分離,因此管理員可以在不增加運算能力的情況下擴充儲存設備,從而節省成本。
Amazon Neptune
Amazon Neptune NoSQL 資料庫使用圖表結構。圖表資料庫將資料儲存在節點中,然後在每個節點之間建立關聯,以查詢並連結在一起。社群媒體應用程式使用圖表資料庫。每個檔案的評論都可以連結到各種資料點,以確定您的專案是否以某種方式與其他人連結,包括興趣類別。
擁有龐大全球資料庫的企業可以利用 Amazon Neptune。也有利於人工智慧(AI)和生成 AI(GenAI)應用程式。Amazon 宣稱 Neptune 每秒可以處理超過 100,000 筆查詢,並擴展至每叢集 128TiB。
Amazon Keyspaces
如同 Amazon Neptune,Amazon Keyspaces 也是一個圖表資料庫。使用 IoT 資料收集或從各種來源收集大量資料的企業,可以受益於 Amazon Keyspaces。舉例來說,收集IoT資料來監控機械的製造商,可以使用 Amazon Keyspaces 來更快速地儲存、分析及擷取資料。遊戲產業也使用 Amazon Keyspaces 來收集玩家資料,並管理對玩家輸入做出快速回應所需的應用程式。
時間序列資料通常儲存在 Amazon Keyspaces 資料庫中,而這類資料則用於即時應用程式。每個 AWS 資料庫解決方案都能提供快速的回應時間,但 Amazon Keyspaces 的回應時間在幾毫秒內是最低的。它也隨著運算能力的必要性與儲存容量的需求而擴展。
比較 AWS NoSQL 資料庫
所有 AWS NoSQL 資料庫都支援大型資料儲存,但關鍵差異在於資料儲存的方式。DynamoDB 和 DocumentDB 等文件資料庫以 JSON 格式儲存資訊。文件資料庫對於大多數熟悉關聯式資料庫的開發人員來說是最直覺的資料庫。當您擁有大量相關資料時,圖表資料庫是有利的,而 Amazon Keyspaces 資料庫最適合即時應用程式。
所有四個 AWS 資料庫都支援擴充並在雲端中運行,但無伺服器 DynamoDB 需要的職員管理開銷較少。AWS 還支援儲存敏感資料和合規法規的資料庫所需的安全性和監控。
結論
建立應用程式通常需要資料庫,而 AWS 擁有能滿足任何大規模企業儲存需求的解決方案。因為企業在雲端中運行,所以他們知道他們的資料庫將具有高可用性,而且幾乎不會延遲,前提是您的企業部署了足夠的資源來處理查詢和儲存。Pure Storage 的雲端區塊式資料儲存功能可儲存任何企業應用程式,並支援本文提到的 AWS 資料庫。