資料抽象讓開發人員和管理員僅向前端使用者顯示必要的資料,因為他們不需要存取整個資料孤島。抽象用於軟體開發的幾個領域,而應用程式的資料層會將資料庫與使用者介面分開。目的是在基礎架構變更期間,利用更佳的可擴充性,並減少重構。
資料庫管理系統(DBMS)是一種工具,用來作為使用者與原始儲存資料之間的介面。管理員可以使用 DBMS 檢視資料庫儲存的資料、更新或插入新資料,以及執行查詢以擷取資料。管理員還可以管理資料庫項目,如儲存的程序、觸發程序、表格、索引和其他物件。DBMS 通常用於建立資料庫,並隨後進行管理。
DBMS 的範例為 MySQL MySQL 是一個關聯式資料庫,因此管理員可以使用 DBMS 檢視資料庫物件、建立表格或查詢資料。應用程式使用 DBMS 查詢資料或將資料新增至資料庫。因為 MySQL 是一個關聯式資料庫,資料儲存在表格內,每欄都會受到限制,以控制儲存的資料類型。
DBMS 的另一個範例是 MongoDB MongoDB 是 NoSQL 開源資料庫,可儲存非結構化資料。資料儲存在文件中,管理員可以在文件中儲存任何數量和類型的項目。管理員使用 MongoDB DBMS 來管理資料庫的結構,應用程式則使用它來查詢和新增資料。
資料抽象是應用程式中的邏輯功能,可將原始資料與前端分開。簡單來說,資料層會處理資料庫的連線,並從前端進行查詢。資料抽象讓前端應用程式能夠查詢資料,無論資料儲存於何處。然後,開發人員可以更換後端資料庫,而無需重構程式碼的大量區段,以連接和使用新的資料庫引擎。
舉例來說,假設您使用 MongoDB 進行開發,直到確定您需要使用的資料類型。然後您想在生產中使用 MySQL。資料抽象層處理從 MongoDB 和 MySQL 到資料庫的連線和查詢,而不會影響前端代碼庫。使用者不知道資料庫引擎的變化,但仍能取得所需的資訊。
資料抽象是一個統稱,負責管理資料的各個不同層面。當開發人員建立應用程式並與管理員合作時,摘要有三個層級:實體、邏輯和檢視。以下是這些等級的簡短說明:
抽象層可能是內嵌在應用程式中的邏輯層,但也可能位於物理上不同的資源上。多層抽象的目的在於更輕鬆地擴展單一層,而不影響其他層。多層架構也被稱為“n層架構”,管理員可以選擇為應用程式中的每個元件設定多個層。
在多層架構中擁有三個層級是常見的:簡報、資料和應用程式。以下是這些層級的簡要說明:
將資料層與前端應用程式分開,可精細擴充資源。資料層的變更也不會影響前端,因此當使用另一個資料庫引擎或資料層變更位置時,資料抽象會限制程式碼的重構。
例如,假設您的組織決定將資料庫從就地部署位置移至雲端。只有資料層需要變更,前端應用程式代碼不需要變更。如果不需要,管理員可以為資料層擴充資源,而無需為應用程式層擴充資源。
在企業應用程式中,擁有一個資料抽象層以連接至您的 DBMS,可讓您向上或向下擴展。您也可以變更基礎架構中資料層的架構,而不需對程式碼庫進行許多程式碼變更。您可以使用多個資料庫引擎,或將資料庫移至新的位置,而不需負擔太多開銷。
當您規劃資料抽象基礎架構時,請到 Pure Storage® FlashArray 進行整合式區塊式資料儲存和檔案式資料儲存。如需雲端儲存,請查看 Pure Storage 的雲端區塊式資料儲存。