国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

MySQL:開源數據庫Sharding技術[圖]_MySQL

來源:懂視網 責編:小采 時間:2020-11-09 17:48:07
文檔

MySQL:開源數據庫Sharding技術[圖]_MySQL

MySQL:開源數據庫Sharding技術[圖]_MySQL:從 Shard 到 Sharding Shard 這個詞英文的意思是碎片,而作為數據庫相關的技術用語,似乎最早見于大型多人在線角色扮演游戲(MMORPG)中。Sharding 姑且稱之為分片。 Sharding 不是一門新技術,而是一個相對簡樸的軟件理念。如您所知,MySQL 5
推薦度:
導讀MySQL:開源數據庫Sharding技術[圖]_MySQL:從 Shard 到 Sharding Shard 這個詞英文的意思是碎片,而作為數據庫相關的技術用語,似乎最早見于大型多人在線角色扮演游戲(MMORPG)中。Sharding 姑且稱之為分片。 Sharding 不是一門新技術,而是一個相對簡樸的軟件理念。如您所知,MySQL 5

  從 Shard 到 Sharding

  "Shard" 這個詞英文的意思是"碎片",而作為數據庫相關的技術用語,似乎最早見于大型多人在線角色扮演游戲(MMORPG)中。"Sharding" 姑且稱之為"分片"。

  Sharding 不是一門新技術,而是一個相對簡樸的軟件理念。如您所知,MySQL 5 之后才有了數據表分區功能,那么在此之前,很多 MySQL 的潛在用戶都對 MySQL 的擴展性有所顧慮,而是否具備分區功能就成了衡量一個數據庫可擴展性與否的一個關鍵指標(當然不是唯一指標)。數據庫擴展性是一個永恒的話題,MySQL 的推廣者經常會被問到:如在單一數據庫上處理應用數據捉襟見肘而需要進行分區化之類的處理,是如何辦到的呢? 答案是:Sharding。

  Sharding 不是一個某個特定數據庫軟件附屬的功能,而是在具體技術細節之上的抽象處理,是水平擴展(Scale Out,亦或橫向擴展、向外擴展)的解決方案,其主要目的是為突破單節點數據庫服務器的 I/O 能力限制,解決數據庫擴展性問題。

  事關數據庫擴展性

  說起數據庫擴展性,這是個非常大的話題。目前的商業數據都有自己的擴展性解決方案,在過去相對來說比較成熟,但是隨著互聯網的高速發展,不可避免的會帶來一些計算模式上的演變,這樣很多主流商業系統也難免暴露出一些不足之處。比如 Oracle 的 RAC 是采用共享存儲機制,對于 I/O 密集型的應用,瓶頸很容易落在存儲上,這樣的機制決定后續擴容只能是 Scale Up(向上擴展) 類型,對于硬件成本、開發人員的要求、維護成本都相對比較高。

  Sharding 基本上是針對開源數據庫的擴展性解決方案,很少有聽說商業數據庫進行 Sharding 的。目前業界的趨勢基本上是擁抱 Scale Out,逐漸從 Scale Up 中解放出來。

  Sharding 的應用場景

  任何技術都是在合適的場合下能發揮應有的作用。 Sharding 也一樣。聯機游戲、IM、BSP 都是比較適合 Sharding 的應用場景。其共性是抽象出來的數據對象之間的關聯數據很小。比如IM ,每個用戶如果抽象成一個數據對象,完全可以獨立存儲在任何一個地方,數據對象是 Share Nothing 的;再比如 Blog 服務提供商的站點內容,基本為用戶生成內容(UGC),完全可以把不同的用戶隔離到不同的存儲集合,而對用戶來說是透明的。

  這個 "Share Nothing" 是從數據庫集群中借用的概念,舉例來說,有些類型的數據粒度之間就不是 "Share Nothing" 的,比如類似交易記錄的歷史表信息,如果一條記錄中既包含賣家信息與買家信息,如果隨著時間推移,買、賣家會分別與其它用戶繼續進行交易,這樣不可避免的兩個買賣家的信息會分布到不同的 Sharding DB 上,而這時如果針對買賣家查詢,就會跨越更多的 Sharding ,開銷就會比較大。

  Sharding 并不是數據庫擴展方案的銀彈,也有其不適合的場景,比如處理事務型的應用就會非常復雜。對于跨不同DB的事務,很難保證完整性,得不償失。所以,采用什么樣的 Sharding 形式,不是生搬硬套的。

  Sharding與數據庫分區(Partition)的區別

  有的時候,Sharding 也被近似等同于水平分區(Horizontal Partitioning),網上很多地方也用 水平分區來指代 Sharding,但我個人認為二者之間實際上還是有區別的。的確,Sharding 的思想是從分區的思想而來,但數據庫分區基本上是數據對象級別的處理,比如表和索引的分區,每個子數據集上能夠有不同的物理存儲屬性,還是單個數據庫范圍內的操作,而 Sharding 是能夠跨數據庫,甚至跨越物理機器的。(見對比表格)

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

MySQL:開源數據庫Sharding技術[圖]_MySQL

MySQL:開源數據庫Sharding技術[圖]_MySQL:從 Shard 到 Sharding Shard 這個詞英文的意思是碎片,而作為數據庫相關的技術用語,似乎最早見于大型多人在線角色扮演游戲(MMORPG)中。Sharding 姑且稱之為分片。 Sharding 不是一門新技術,而是一個相對簡樸的軟件理念。如您所知,MySQL 5
推薦度:
標簽: 數據庫 技術 開源
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 国产精品久久久久久永久牛牛 | 欧美视频精品 | 国产精品视频免费视频 | 99精品欧美一区二区三区综合在线 | 国产中文在线观看 | 欧美在线免费观看 | 国模冰冰炮交图150 国模吧国模吧一二区 | 国产亚洲欧美另类一区二区三区 | 亚洲1页 | 一区不卡在线观看 | 九九九九热精品免费视频 | 亚洲欧美日韩中文字幕在线不卡 | 美日韩中文字幕 | 日产精品久久久一区二区 | 九九啪 | 国产精品毛片在线直播完整版 | 国产精品一页 | 欧美日韩亚洲区久久综合 | 四虎影视最新地址 | 欧美理论电影在线观看 | 精品久久久久久久久中文字幕 | 国产精品欧美亚洲韩国日本不卡 | 在线精品国产一区二区 | 国产精品1区2区3区 国产精品1234区 | 欧美一区精品二区三区 | 国产区精品福利在线社区 | 国产色综合久久无码有码 | 欧美αv日韩αv另类综合 | 久久久久久久99久久久毒国产 | 激情自拍网 | 欧美三级在线 | 精品欧美日韩一区二区三区 | 国产精品免费视频播放 | 98成人网 | 精品国产一区二区三区久久久狼 | 欧美成人禁片在线www | 99视频都是精品热在线播放 | 欧美日韩一二三区 | 香蕉久久ac一区二区三区 | 亚洲区精品久久一区二区三区 | 日韩欧美在线综合网 |