在大型系統(tǒng)中,數(shù)據(jù)分布設(shè)計(jì)非常重要,整理數(shù)據(jù)分布設(shè)計(jì)的6中常見策略,僅供參考:
獨(dú)立Schema :當(dāng)一個(gè)大系統(tǒng)由相關(guān)的多個(gè)小系統(tǒng)組成,且不同小系統(tǒng)具有互不相同的數(shù)據(jù)庫Schema定義。獨(dú)立模式可管理性高,通信開銷小。
集中 :一個(gè)大系統(tǒng)必須支持來自不同地方的訪問,或者該系統(tǒng)由多個(gè)不同的小系統(tǒng)組成,而數(shù)據(jù)進(jìn)行集中化,統(tǒng)一格式存儲。可管理性、數(shù)據(jù)一致性高。
分區(qū) :分為水平分析與垂直分區(qū),當(dāng)系統(tǒng)為“地域分布廣泛的用戶”提供“相同服務(wù)”時(shí),常常使用水平分區(qū)策略。垂直分區(qū)為字段分隔,一般較少使用。采用分區(qū)方式,可伸縮性好。
復(fù)制 :在整個(gè)分布式系統(tǒng)中,保存多個(gè)副本、并且以某種機(jī)制保持多個(gè)數(shù)據(jù)副本之間的數(shù)據(jù)一致性。復(fù)制方式可有效提升數(shù)據(jù)可靠性。
子集 :“子集”是“復(fù)制”的特殊方式,就是某節(jié)點(diǎn)因功能或非功能考慮而保持全體數(shù)據(jù)的一個(gè)相對固定的子集。
重組 :不同數(shù)據(jù)節(jié)點(diǎn)因要支持的功能不同,而以不同的schema保持?jǐn)?shù)據(jù)---但本質(zhì)上數(shù)據(jù)時(shí)同源的。重組以“重新組織”的格式進(jìn)行傳遞和保持。
6中策略總結(jié)可以使用如下圖表示:
在應(yīng)用過程中,應(yīng)當(dāng)靈活使用各種策略,策略應(yīng)用的一般化原則如下所示:
總結(jié) :在應(yīng)用過程中,根據(jù)實(shí)際應(yīng)用進(jìn)行分析,選擇合適的數(shù)據(jù)分布策略,也可以組合使用,合適的數(shù)據(jù)分布策略將使系統(tǒng)的穩(wěn)定性及功能滿足新大大提高,可以使用如下過程確定數(shù)據(jù)分布策略:
在表格中列出6種不同的數(shù)據(jù)分布策略,如下表所示:
| 名稱 | 對嗎 | 好嗎 | 總分 |
| 獨(dú)立 | 是/否 | 0~100分 | |
| ... |
|
根據(jù)系統(tǒng)應(yīng)用特點(diǎn),通過以上分析,去除不適用的策略,根據(jù)總分確定所采用的數(shù)據(jù)分布策略,在有些地方也可以使用組合策略。
軟件架構(gòu)設(shè)計(jì)【三】-系統(tǒng)架構(gòu)中的數(shù)據(jù)分布設(shè)計(jì)
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

