Sql-Server
SQL Server 複製能否用於銷售點 (POS)?
我們正在尋找一種能夠同步我們 POS 數據庫的解決方案。
該場景說我們在每台機器上安裝了 3 個 POS,並安裝了 SQL Server Express。
我們希望這些數據庫始終保持同步。假設 POS A 出現故障,它會在啟動後立即重新同步。此外,當 POS A 關閉時,POS B 和 C 應該仍然工作並繼續同步它們的數據。
SQL Server 複製是正確的解決方案嗎?如果是,什麼類型的複制?
更新
- 沒有中央數據庫
- 3/4 個節點/POS 已關閉,剩餘的 POS 仍將工作
- 如果 POS 線上,將恢復數據庫
- 幾乎我們都認為像 MongoDb 副本集
- 數據庫應盡可能更新
您有 3 種類型的複制:
- 快照
- 事務性的
- 走
參考連結 -選擇適當的複制類型
根據微軟的說法,這些很容易分為兩大類:
- 伺服器到伺服器
- 伺服器到客戶端
在銷售點 (POS) 的場景中。由於它的伺服器到客戶端類別和方案,建議您使用合併複製。
參考連結 -合併複製
合併複製與事務複製一樣,通常從發布數據庫對象和數據的快照開始。使用觸發器跟踪在發布者和訂閱者處進行的後續數據更改和架構修改。訂閱者在連接到網路時與發布者同步,並在發布者和訂閱者之間交換自上次同步以來發生變化的所有行。
參考連結 -消費者銷售點 (POS) 應用程序
POS 應用程序通常具有以下特徵,適當的複制解決方案必須解決這些特徵:
- 大多數數據是在遠端站點輸入和更新的。
- 遠端使用者必須能夠獨立進行更新,而無需連接到中央站點。
- 在遠端站點更新的數據不會在任何其他站點更新;因此通常不會發生衝突。
- 一些數據只能在中心站點更新;例如,產品描述表中的數據。
- 使用者在預定時間(例如工作日結束)同步數據。
- 應用程序必須控制遠端站點可以保持不同步的時間。
- 一些表需要過濾,以便每個儲存接收一個或多個表的不同數據。例如,每個商店只接收其庫存產品的資訊。
- 應用程序可能需要在數據同步時執行自定義業務邏輯。
- 應用程序可能需要通過 Internet 而不是通過專用連接同步數據。
希望有幫助!