您的位置是: > 建網站知識 > 網站設計 >
客服中心

網站數據庫分庫分表(分片)實施戰略圖

點擊次數:更新時間:2017-07-18 16:54 【打印】【關閉】
第一部分:實施策略
圖。數據庫分庫分表(分片)實施戰略圖
。準備階段
數據庫分庫分表(分片)之前,開發人員需要充分了解業務邏輯和數據庫系統模式。一個好的建議是繪制地圖或數據庫領域模型,對碎片的基于類的劃分,直觀簡便,可以確保開發商始終保持清晰的思路。為了選擇數據庫,應根據項目本身選擇圖或域模型圖。如果項目是采用數據驅動的開發,團隊數據庫圖作為企業通信的基礎,它自然會選擇數據庫圖,如果項目使用的是領域驅動的發展模式,并建立一個良好的域或映射模型,然后場模型無疑是最好的選擇。就我個人而言,我更喜歡使用領域模型圖,因為分割更基于業務的分析和判斷,和領域模型無疑是更清晰、更直觀。
。分析
階段。垂直分割
垂直分割的原理是基于業務是密切相關的,表是密切相關的,如在同一模塊表。隨著數據庫圖或域模型圖已制備的結合,仿照在車道概念的活動圖、泳道代表碎片,所有的桌子都分成不同的車道。以下分析表明,會議將證明這種方法。當然,你也可以直接用鉛筆圈在印刷的圖或模型圖,這都取決于你自己的喜好。
。水平分割
垂直分割需要的數量和生長的碎片在表中的數據進一步分析以確定是否水平分割是必要的。
如果表分為產品線中的緩慢增長的數據可以在一個足夠長的時間可以由一個單一的數據庫進行,則不需要進行水平分割,所有的表存在相同的碎片,所有的表關系將得到最大限度的保留,同時確保編寫的自由是不容易受加入組,以和其他字的限制。
,如果表分為大大量的數據,快速增長,為進一步橫向分割的需要。進一步橫向分割的話:
。將業務邏輯和表之間的關系,目前的碎片分割成多個小碎片,在正常情況下,這些小碎片都只包含一個主表(哈希表的表)和一些相關的或間接的關聯表。一個碎片的情況下,一個主表,和多個表是水平分割的必然結果。這樣的碎片數量將迅速增加。如果每個碎片都代表一個單獨的數據庫,所以對數據庫的管理和維護會很麻煩,但這些小碎片通常只有兩個或三個表,建立一個新的圖書館,利用率不高,因此,水平分割完成后,一個“反向合并”,即:業務是類似的,具有類似的增長率數據(在同一量級的主表數據)兩個或兩個以上的碎片到同一數據庫,它們在邏輯上獨立的碎片,與他們的主表,主表和對自己身份的基礎上,不同的只是他們的哈希取模(即節點數)必須是一致的。在這種方式中,每個節點數據庫表的數量相對平均。
畢竟。形式分為適當的碎片,在碎片之間的關聯表必須在編寫,間斷加入,集團跨碎片的和秩序將被禁止,需要協調和在應用層面解決這些問題。
特別想指出:分割的水平,和碎片的顆粒大小是小于通常只有一個單一的尺寸垂直切割,垂直的碎片將被分成一個或多個主表作為協會的中心或多個子表碎片間接相關,顆粒大小的碎片和領域驅動的“收斂”的概念可以說是完全不謀而合,更一致的設計,主要表每個碎片是在根的聚合!
。實施階段
如果在決策表庫開始發展的項目,是嚴格按照設計方案可以促進分析。如果是在架構演進的實施中,除了建設基礎設施(切分邏輯實現的話題將在下一篇文章中討論),還需要通過過濾原始分析,修改受影響,濟南網站建設
 

?

底部線條

7x24小時服務熱線:400-088-0531???13515318674360網站安全檢測平臺

友情鏈接:
街机捕鱼下分版