精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

分析探討微服務遷移如何影響數據庫管理和分解數據庫的步驟

如意 ? 來源:TechTarget中國 ? 作者:鄒錚 ? 2020-10-12 14:43 ? 次閱讀

在從單體式架構遷移到微服務架構時,數據庫通常是事后想法。有些人認為遷移僅涉及應用邏輯的重組,而底層數據保持不變。但是,這種做法可能會導致單體式服務和微服務的尷尬混合:分布式單體服務。

微服務模型使基礎架構和數據存儲發生深刻變化。在微服務模型中,從傳統應用程序中拉出服務,并為其提供獨立性,在這種情況下,團隊也必須考慮其基礎數據庫,并將其分解為特定于服務的數據源。

讓我們看一下微服務遷移如何影響數據庫管理,并探討分解數據庫的步驟。

按服務模式的數據庫

在微服務架構中,大型數據湖需要轉型為分布式數據庫,以匹配特定服務。這樣做可在只需要訪問原始數據庫特定部分的各個服務間創建必要的關注點分離。這也可幫助管理自己服務集的團隊維持所需的獨立控制。

根據Praful Todkar建議的模型,分解單體數據庫需要與其所支持的服務同時進行-有時稱為按服務模式的數據庫。這應該是逐步的過程,并要求團隊:

從單體中分離出單個服務,并將流量路由到它;

分離相同數據庫中的表,并將其與該服務匹配;

在該表旁邊創建新的較小的數據庫,并將流量路由到它;

從原始數據庫中刪除先前的數據和架構。

分離服務和表

在微服務遷移期間,重組整個數據庫有點像在駕駛汽車的同時更換輪胎。這樣做可能會導致各種故障,并增加丟失數據或破壞功能的機會。

正確的做法是,從小處著手,在舊架構與新微服務間進行邏輯分離。當你選擇要從單體中移除的服務后,創建一個新數據表(或多個表),其中僅包含新服務所需的數據。

在此步驟中,明確的路由規則至關重要。首先團隊需要將流量從單體應用程序重新路由到新的微服務。然后,他們必須將舊的單體數據庫的部分轉移到表中,這最終將構成新數據庫的框架。所有這些都需要現代的聯網功能,例如由Istio等工具實現的服務網格方法。

當將分離的表轉換為新的分布式數據庫時,奇偶校驗也至關重要。請確保新舊數據庫中的數據已完全同步。在確認數據奇偶校驗后,從以前的數據庫中刪除表和舊數據。

使用模式是便于管理,但不能過于依靠

模式是元數據集,用來描述數據庫內數據的結構。有些團隊更喜歡按模式整理數據,為每個服務創建獨有的數據庫模式,而不是整個數據庫。這種方法有著無可爭議的好處,因為要管理的數據庫更少,并且它們之間的統一性更高。

但是,這種做法非常接近單體式數據湖模型,而我們正試圖遠離這種模型。如果有選擇的話,即使看起來客觀上適得其反,開發人員和架構師也會傾向于熟悉的方法。他們會做出妥協并遵循按服務模式做法。但是請記住:只要有可能,最好為每個服務都設置專用數據庫,而不要依賴總體架構。

微服務最好的部分是,它使你可以將專用數據庫分配給某些服務,而將共享數據庫用于其他服務。該決定通常取決于服務的重要性及其處理的數據類型。團隊結構也在這里發揮作用。有些服務要求管理它們的團隊具有嚴格的自治權,而其他服務最好在多個團隊之間共享。

為微服務選擇最佳數據庫 通常,單體是構建大型關系數據庫上。當遷移到微服務時,為新架構選擇數據庫是重大決定。

現在有很多數據庫選項,包括:

鍵值數據庫

文檔存儲數據庫

圖形數據庫

基于列的數據庫

每種類型的數據庫模型都適合特定類型的數據管理需求。例如,鍵值數據庫和列式數據庫最適合結構化數據,圖形適合半結構化數據,而文檔存儲則最適合非結構化數據。

請記住,每種數據庫類型的讀寫速度都不同,圍繞不同數據庫的供應商工具也不同。在選擇任何一種數據庫類型或工具集前,請使用樣本數據運行測試。例如,對于需要實時性能的服務,將需要具有強大內存性能的數據庫。

盡管企業正在遷移到微服務,但是關系數據庫不會很快消失。出于各種原因,很多應用程序的某些部件在傳統架構中運行時性能最佳,并且將依賴于舊的單體數據庫來運行。好消息是微服務支持這種數據庫管理的多類型模型。因此,不要僅僅因為其他服務正在遷移到微服務,而試圖將應用程序的每個部分從單體中移出。
責編AJX

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 數據庫
    +關注

    關注

    7

    文章

    3707

    瀏覽量

    64020
  • 分布式
    +關注

    關注

    1

    文章

    821

    瀏覽量

    74394
  • 微服務
    +關注

    關注

    0

    文章

    126

    瀏覽量

    7301
收藏 人收藏

    評論

    相關推薦

    數據庫管理

    如題:用labview操作access數據庫做公司測試流程管控。因測試數據量大,數據生成多,現在accdb文件已經有50M了,現在發現數據庫在本地操作都很快,但是放在遠端
    發表于 11-08 16:58

    數據庫使用教程下載

    創建數據庫是實施數據庫應用系統的第一步,創建合理結構的數據庫需要合理的規劃與設計、需要了解數據庫物理存儲結構與邏輯結構。數據庫是表的集合,
    發表于 05-09 11:08 ?0次下載

    數據庫復制的設計和管理

    【摘 要】 介紹數據庫復制在分布式數據庫系統中的應用、設計和管理,給出了設計步驟和設計時考慮的因素。對設計和應用中出現的沖突問題進行了分析
    發表于 05-11 19:35 ?750次閱讀

    Informix數據庫管理

    Informix數據庫管理: 一、Informix數據庫的安裝
    發表于 08-01 15:29 ?1252次閱讀

    數據庫SQL語句電子教程

    電子發燒友為您提供了數據庫SQL語句電子教程,幫助您了解數據庫 SQL語句 ,學習讀懂數據庫SQL語句,達到會寫數據庫SQL語句,通過具體的分析
    發表于 07-14 17:09 ?0次下載

    如何為微服務選擇數據庫

    你的微服務架構需要多種數據模型。你是應該選擇混合持久化呢還是多模型數據庫? 在過去的十年,大規模的分布式系統呈現爆炸式增長。這一趨勢促使在數據庫領域產生了一股巨大的創造力,這在軟件業的
    發表于 11-23 10:55 ?1683次閱讀

    數據庫引擎是什么

    數據庫引擎是用于存儲、處理和保護數據的核心服務。利用數據庫引擎可控制訪問權限并快速處理事務,從而滿足企業內大多數需要處理大量數據的應用程序的
    的頭像 發表于 02-24 14:43 ?1.1w次閱讀
    <b class='flag-5'>數據庫</b>引擎是什么

    數據庫教程之數據庫的創建與管理詳細資料免費下載

    本文檔的主要內容詳細介紹的是數據庫教程之數據庫的創建與管理詳細資料免費下載。內容包括了:SQL Server數據庫概述, 創建數據庫,修改
    發表于 10-19 10:41 ?18次下載
    <b class='flag-5'>數據庫</b>教程之<b class='flag-5'>數據庫</b>的創建與<b class='flag-5'>管理</b>詳細資料免費下載

    數據庫教程之如何進行數據庫設計

    本文檔的主要內容詳細介紹的是數據庫教程之如何進行數據庫設計內容包括了:1 數據庫設計概述 ,2 數據庫需求分析 ,3
    發表于 10-19 10:41 ?21次下載
    <b class='flag-5'>數據庫</b>教程之如何進行<b class='flag-5'>數據庫</b>設計

    數據庫管理系統的功能

    本視頻主要詳細介紹了數據庫管理系統的功能,分別是數據定義、數據操作、數據庫的運行管理
    的頭像 發表于 02-22 15:52 ?5768次閱讀

    數據庫數據恢復】MongoDB數據庫數據恢復案例

    需求,需要對MongoDB數據庫內的文件進行遷移,在MongoDB服務開啟的狀態下用戶將數據庫文件復制到其他分區,將MongoDB數據庫之前
    的頭像 發表于 01-05 13:50 ?848次閱讀
    【<b class='flag-5'>數據庫</b><b class='flag-5'>數據</b>恢復】MongoDB<b class='flag-5'>數據庫</b><b class='flag-5'>數據</b>恢復案例

    數據庫建立|數據庫創建的方法?

    數據庫是一個存儲關鍵數據的文件系統。利用數據庫管理系統建立每個人的數據庫可以更好地提供安全。 數據庫
    的頭像 發表于 07-14 11:15 ?1065次閱讀

    數據庫和普通數據庫區別?|PetaExpress云端數據庫

    和持久性有四個特點。 云數據庫和普通數據庫相比都具備哪些優勢? 1)安全穩定 云端數據庫服務,能夠幫助用戶將危險的操作收縮起來,避免數據庫
    的頭像 發表于 08-01 17:13 ?921次閱讀

    MySQL數據庫管理與應用

    MySQL數據庫管理與應用 MySQL是一種廣泛使用的關系型數據庫管理系統,被認為是最流行和最常見的開源數據庫之一。它可以被用于多種不同的應
    的頭像 發表于 08-28 17:15 ?848次閱讀

    數據庫應用及其特點 數據庫數據的基本特點

    管理的一項重要應用,其優點不僅可以提高工作效率,還可以保證數據的安全性和可靠性。本文將詳細介紹數據庫應用及其特點,同時探討數據庫
    的頭像 發表于 08-28 17:22 ?2530次閱讀