鍍金池/ 問答/數(shù)據(jù)庫/ 請問分布式架構(gòu)數(shù)據(jù)庫是怎么弄的???

請問分布式架構(gòu)數(shù)據(jù)庫是怎么弄的???

最近在學(xué)習(xí)分布式架構(gòu),別的基本搞懂了,數(shù)據(jù)庫這塊是怎樣搞?
我一直用的mysql,就拿mysql來說

比如我現(xiàn)在有A,B兩個數(shù)據(jù)庫,server根據(jù)負(fù)載均衡有可能寫入A或者寫入B
疑問主要是數(shù)據(jù)庫是怎樣同步的,我知道m(xù)ysql有個主從數(shù)據(jù)庫同步的功能,但是那個及時性怎樣呢?比如某客戶端往數(shù)據(jù)庫A里面插入了1條數(shù)據(jù),然后該客戶端掉線了,重連,這時候他重做了一遍操作,恰好這次他插入到B數(shù)據(jù)庫,而這時候A,B兩個數(shù)據(jù)庫還沒來得及同步,這豈不是有2條重復(fù)數(shù)據(jù)了?

請問有經(jīng)驗的大俠說一下這一塊通常情況是怎樣搞的? 或者說我說的這種架構(gòu)是錯的,通常采用別的辦法而不是多個數(shù)據(jù)庫來分擔(dān)負(fù)載?

回答
編輯回答
墻頭草

你說的這個在MySQL里不是主從,而是雙主(因為一會兒寫A,一會兒寫B(tài)),主從的意思是寫永遠(yuǎn)都寫主,再異步同步到從。

實際項目中一般不用雙主(可靠性和可維護(hù)性不如主從),主從的應(yīng)用卻很廣泛,而且一般主從也夠了,因為主從模式已經(jīng)很好的分擔(dān)掉讀操作,大部分應(yīng)用都是寫少讀多,從我個人的經(jīng)驗,不建議使用MySQL的多主。

2017年1月14日 23:21
編輯回答
情已空

正式場合的分布式數(shù)據(jù)庫是不會隨機(jī)選擇分區(qū)存儲數(shù)據(jù)的,而是按照哈希算法存到對應(yīng)的數(shù)據(jù)庫里,例如有0-3四個數(shù)據(jù)庫,存數(shù)據(jù)的的時候按照uid % 4來存到對應(yīng)的數(shù)據(jù)庫分區(qū)去,出錯了的話重試的時候也不會變

2017年12月30日 14:42