
資料中心架構
在資料中心架構中,資料被集中儲存,並被其他元件頻繁訪問和修改。這種架構風格的主要目的是實現資料的完整性。資料中心架構由不同的元件組成,這些元件透過共享的資料儲存庫進行通訊。元件訪問共享的資料結構,並且相對獨立,因為它們僅透過資料儲存庫進行互動。
資料中心架構最著名的例子是資料庫架構,其中使用資料定義協議建立了通用的資料庫模式——例如,關係資料庫管理系統 (RDBMS) 中的一組相關表,包含欄位和資料型別。
資料中心架構的另一個例子是 Web 架構,它具有通用的資料模式(即 Web 的元結構),並遵循超媒體資料模型,並且程序透過使用共享的基於 Web 的資料服務進行通訊。

元件型別
有兩種型別的元件:
一個中心資料結構或資料儲存或資料儲存庫,負責提供永久資料儲存。它代表當前狀態。
一個資料訪問器或一組獨立的元件,它們操作中心資料儲存庫,執行計算,並可能將結果放回儲存庫。
資料訪問器之間的互動或通訊僅透過資料儲存庫進行。資料是客戶端之間唯一通訊的方式。控制流將架構分為兩類:
- 儲存庫架構風格
- 黑板架構風格
儲存庫架構風格
在儲存庫架構風格中,資料儲存庫是被動的,而資料儲存庫的客戶端(軟體元件或代理)是活動的,它們控制邏輯流。參與的元件檢查資料儲存庫是否有更改。
客戶端向系統傳送請求以執行操作(例如插入資料)。
計算過程是獨立的,並由傳入請求觸發。
如果事務輸入流中的事務型別觸發要執行的程序的選擇,則它是傳統的資料庫或儲存庫架構,或被動儲存庫。
這種方法廣泛應用於 DBMS、圖書館資訊系統、CORBA 中的介面儲存庫、編譯器和 CASE(計算機輔助軟體工程)環境。

優點
提供資料完整性、備份和恢復功能。
提供可擴充套件性和代理的可重用性,因為它們之間沒有直接通訊。
減少軟體元件之間瞬態資料的開銷。
缺點
它更容易發生故障,並且可能發生資料複製或重複。
資料儲存庫的資料結構及其代理之間存在高度依賴關係。
資料結構的更改會嚴重影響客戶端。
資料的演變很困難且成本高昂。
在網路上移動分散式資料的成本。
黑板架構風格
在黑板架構風格中,資料儲存庫是活動的,而它的客戶端是被動的。因此,邏輯流由資料儲存庫中的當前資料狀態決定。它有一個黑板元件,充當中心資料儲存庫,並且不同的計算元素構建和作用於內部表示。
許多獨立於公共資料結構上操作的元件儲存在黑板上。
在這種風格中,元件僅透過黑板進行互動。資料儲存庫在資料儲存庫發生更改時向客戶端發出警報。
解決方案的當前狀態儲存在黑板上,並且處理由黑板的狀態觸發。
系統在資料發生更改時向客戶端傳送稱為觸發器和資料的通知。
這種方法存在於某些 AI 應用程式和複雜應用程式中,例如語音識別、影像識別、安全系統和業務資源管理系統等。
如果中心資料結構的當前狀態是選擇要執行的程序的主要觸發器,則儲存庫可以是黑板,並且此共享資料來源是活動代理。
與傳統資料庫系統的主要區別在於,黑板架構中計算元素的呼叫由黑板的當前狀態觸發,而不是由外部輸入觸發。
黑板模型的組成部分
黑板模型通常由三個主要部分組成:
知識源 (KS)
知識源,也稱為偵聽器或訂閱者,是不同的獨立單元。它們解決問題的一部分並聚合部分結果。知識源之間的互動僅透過黑板進行。
黑板資料結構
問題解決狀態資料被組織成一個依賴於應用程式的層次結構。知識源對黑板進行更改,從而逐步導致問題的解決。
控制
控制管理任務並檢查工作狀態。

優點
提供可擴充套件性,這使得新增或更新知識源變得容易。
提供併發性,允許所有知識源並行工作,因為它們彼此獨立。
支援假設的實驗。
支援知識源代理的可重用性。
缺點
黑板的結構更改可能會對所有代理產生重大影響,因為黑板和知識源之間存在緊密的依賴關係。
可能難以確定何時終止推理,因為只期望近似解。
多個代理同步方面的問題。
系統設計和測試中的主要挑戰。