心有多大舞臺便有多大

          Embrace changes, pursue excellence, share niceness.

          mysql cluster構架

          今天下了一份mysql cluster architecture overview,大致了解下mysql的cluster功能
          1.mysql cluster現(xiàn)在主要是解決ha(高可用性)的問題,并不是完全的支持ha,load balance的cluster.
          2.mysql cluster構架是建立在share nothing的基礎上的,這也應該是cluster發(fā)展的趨勢吧,否則,要使用共享磁盤的話,代價太昂貴了.
          3.mysql cluster只適用于mysql的ndb storage,mysql的存儲引擎很多,不同的引擎適用于不同的業(yè)務,以后還得花些時間研究下這些引擎的特征
          4.mysql cluster體系把一組計算機節(jié)點分為三大類,分別是sql節(jié)點,storage存儲節(jié)點,mgmt管理節(jié)點.
          5.存儲節(jié)點:mysql cluster在各存儲節(jié)點之間復制數(shù)據(jù),這樣當任意一個存儲節(jié)點發(fā)生意外的時候,始終有另外的存儲節(jié)點上存儲有相同的數(shù)據(jù).如果節(jié)點多于兩個的話,這個復制的性能不知道是否會降低?因為還不知道它的復制原理,也不能妄下結論.數(shù)據(jù)庫事務是由存儲節(jié)點來保證的,任一個事務產生的數(shù)據(jù)變化會同時反映到所有存儲節(jié)點中;當在一個事務執(zhí)行的時候,由于其中一個存儲節(jié)點失敗,那么會導致整個事務的回退.
          6.管理節(jié)點:一般在一個mysql cluster體系中只需要一個管理節(jié)點.它僅用于cluster的啟動及cluster的系統(tǒng)參數(shù)配置,因此,存儲節(jié)點是可以在沒有管理節(jié)點的情況下正常運行的.(恩,可以節(jié)省一臺機器^_^,其實是不可以的,因為sql節(jié)點和存儲節(jié)點在啟動的時候需要連接到管理節(jié)點讀取cluster的配置信息,但是在sql節(jié)點和存儲節(jié)點啟動完成后,管理節(jié)點是可以停止的)
          7.sql節(jié)點:就是mysqld服務器了.應用程序通過sql節(jié)點訪問存儲節(jié)點中的數(shù)據(jù).在mysql cluster體系中,任意一個sql節(jié)點都是連接到所有的存儲節(jié)點的.所以當任意一個存儲節(jié)點發(fā)生意外的時候,sql節(jié)點都可以把請求轉移到另一個存儲節(jié)點執(zhí)行
          8.mysql cluster的sql節(jié)點,存儲節(jié)點可以動態(tài)增加,減少,這可以管理節(jié)點配置
          9.存儲節(jié)點的故障檢測:mysql cluster通過兩種方式來檢測故障,
          一是通訊丟失,可以通過tcp,共享內存等方式在各存儲節(jié)點之間通訊來偵測節(jié)點是否正常這種方式是最快的故障檢測方式,
          二是心跳失敗,通訊丟失的檢測方法在某些特殊情況下無效,例如磁盤故障等問題.所有的存儲節(jié)點通過組成一個環(huán)路,每個節(jié)點向下一個節(jié)點發(fā)送心跳信號,如果下一個節(jié)點沒有收到心跳信號,則認為上一個存儲節(jié)點故障,并依次向下下個節(jié)點廣播此故障信息

          posted on 2008-02-22 11:02 pony 閱讀(1184) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           
          主站蜘蛛池模板: 和林格尔县| 元谋县| 武安市| 定结县| 商洛市| 湛江市| 梨树县| 镇雄县| 文水县| 北安市| 广南县| 亚东县| 阳高县| 松阳县| 巴彦淖尔市| 平塘县| 大方县| 灵台县| 南皮县| 永年县| 正镶白旗| 华安县| 建德市| 綦江县| 贵州省| 措勤县| 长岛县| 安康市| 富阳市| 罗平县| 都昌县| 海南省| 繁昌县| 昌吉市| 荥阳市| 秦安县| 友谊县| 漯河市| 芒康县| 望奎县| 苍溪县|