前言
會想使用複寫主要是 sap <-> bpm 的 zit001 很浪費時間和伺服器效能,而且資料又不夠即時->
zit001 的運作方式是先在 sap 上撰寫 abap code ,把所需的資料(採購單內容、物料文件內容等等)從 sapprd01 -> bpmsvr
然後用變數呼叫的方式排程執行
變數依頻率區分三種:高、中、低;高是每小時執行一次
這樣的作法很笨.. 而且又沒效率,唯一的好處(對AI公司來講)就是 abap code 那邊可以申請費用
至於本機存取速度很快的優勢.. 就被抵消掉了 (因為資料是一小時前的)
運用 sql server 本來就內建的複寫功能有幾個好處:
- 設定好後就不用理它
- 只要頻寬足夠,基本上資料是幾乎一致的,只有數秒的誤差
- 複寫的核心理念是 "資料最終會保持一致",主要是效能考量
- 運用複寫功能可以讓 ms sql 做到某種程度的 cluster ,接近 oracle 的 RAC 功能 (爬文看到但沒有深入測試)
說明
- 主要是在 sap server 上的 sql server 新增功能
- 運用複寫將特性值 table 同步到網站的資料庫去
- 單向同步
前置作業
- 新增複寫功能後,SQL SERVER AGENT 要先重新啟動
- 注意用來連線的帳號,是否具有權限
- 新增一個複寫用的 windows 帳號,
\sqlreplica,hostname如下: - sbsdb
- sapdev01
- sapprd01
- 具本機管理者權限
- 將來會設定此帳號不可登入,僅能做為服務使用 (透過windows 本機安全性原則)
- 新增一個複寫用的 sql 帳號,然後使用 windows 認證登入
- Mapping
- Server Role
- Status
- Mapping
- 新增一個複寫用的 windows 帳號,
- 建立本機複寫用資料匣,名稱 sqlreplica
- sqlreplica資料匣開共用
- 權限為 sqlreplica (full control)
設定參考這一篇
複寫設定,步驟簡化如下
沒有留言:
張貼留言