a毛片毛费观看-a毛片在线-a毛片在线观看-a毛片在线免费观看-国产成人综合洲欧美在线-国产成人综合高清在线观看

始創于2000年 股票代碼:831685
咨詢熱線:0371-60135900 注冊有禮 登錄
  • 掛牌上市企業
  • 60秒人工響應
  • 99.99%連通率
  • 7*24h人工
  • 故障100倍補償
您的位置: 網站首頁 > 幫助中心>文章內容

多IDC的數據分布設計(二)

發布時間:  2012/9/16 0:54:36

在前文《多IDC的數據分布設計(一)中介紹了多IDC數據一致性的幾種實現原理,遺憾的是,目前雖然有不少分布式產品,但幾乎都沒有開源的產品專門針對IDC來優化。本文從實踐的角度分析各種方法優缺點。

背景資料 Latency差異

Jeff Dean提到不同數據訪問方式latency差異

Numbers Everyone Should Know
L1 cache reference                           0.5 ns
Branch mispredict                            5 ns
L2 cache reference                           7 ns
Mutex lock/unlock                           25 ns
Main memory reference                      100 ns
Compress 1K bytes with Zippy             3,000 ns
Send 2K bytes over 1 Gbps network       20,000 ns
Read 1 MB sequentially from memory     250,000 ns
Round trip within same datacenter      500,000 ns
Disk seek                           10,000,000 ns
Read 1 MB sequentially from disk    20,000,000 ns
Send packet CA->Netherlands->CA    150,000,000 ns

這個數據對于我們設計多IDC數據訪問策略具有關鍵的指導作用,我們可以用這個數據來衡量數據架構來如何設計才能滿足高并發低延遲的目標。
這份數據實際上對所有網絡應用及分布式應用開發者都具有很大借鑒作用,數據需要根據訪問頻率盡量放在latency小的地方

1. 2PC/3PC/Paxos模式

在上文中提到,2PC/3PC相比Paxos有明顯的缺點,因此最好不用于生產環境,這里就不再詳述。
Paxos選擇了CAP理論中的”Consistency, Partition”, 需要犧牲availability。它可以在多個IDC之間實現強一致性復制。

Paxos缺點

  • IDC之間需要高速穩定網絡
  • 一個2f+1個節點的網絡中,需要f+1個節點完成事務才能成功。
  • Throughput低,不適合高請求量的場合。所以大部分分布式存儲產品并不直接使用Paxos算法來同步數據。

2. Dynamo模式

Dynamo論文中并未專門描述Dynamo算法是否適合多IDC場景,只有少量文字提到

In essence, the preference list of a key is constructed such that the storage nodes are spread across multiple data centers. These datacenters are connected through high speed network links. This scheme of replicating across multiple datacenters allows us to handle entire data center failures without a data outage.

從上文看到,前提條件是“high speed network links” 可能對國內的情況不太適用。假如IDC之間網絡不穩定,那會發生哪些情況呢?

Quorum 算法中,如果要考慮高可用性,則數據需要分布在多個機房。雙機房如NRW=322由于單機房故障后可能會發生3個點中2個點都在故障機房,導致出現數據不 可用的情況,所以合適的部署是NRW=533,需要3個機房。大部分請求需要2個機房節點返回才能成功,考慮到多IDC的帶寬及latency,性能自然會很差。

Quorum算法在讀寫的時候都要從quorum中選取一個coordinator,算法如下

A node handling a read or write operation is known as the
coordinator. Typically, this is the first among the top N nodes in
the preference list. If the requests are received through a load
balancer, requests to access a key may be routed to any random
node in the ring. In this scenario, the node that receives the
request will not coordinate it if the node is not in the top N of the
requested key’s preference list. Instead, that node will forward the
request to the first among the top N nodes in the preference list.

如果嚴格按照Dynamo協議,coodinator一定要在N中第一個節點,那在3個機房中將有2/3的請求需要forward到異地機房的 coordinator執行,導致latency增大。如果對coodinator選擇做優化,讓client選取preference list中前N個節點中在本地機房的一個節點作為coordinator,這樣會一定程度降低latency,但是會存在相同的key選擇不同節點作為 coordinator的概率增大,導致數據conflict的概率增大。

同時在多機房模式下,Failure detection容易產生混亂。Dynamo并沒有使用一致性的failure view來判斷節點失效。而是由每個節點獨自判斷。

Failure detection in Dynamo is used to avoid attempts to
communicate with unreachable peers during get() and put()
operations and when transferring partitions and hinted replicas.
For the purpose of avoiding failed attempts at communication, a
purely local notion of failure detection is entirely sufficient: node
A may consider node B failed if node B does not respond to node
A’s messages (even if B is responsive to node C’s messages).

而最近非常流行的Cassandra基本上可以看作是開源的Dynamo clone, 它在Facebook Inbox Search項目中部署在150臺節點上,并且分布在美國東西海岸的數據中心。

The system(Facebook Inbox Search) currently stores about 50+TB of data on a 150 node cluster, which is spread out between east and west coast data centers.

雖然在它的JIRA中有一個提案 CASSANDRA-492 是講”Data Center Quorum”,但是整體看來Cassandra并沒有特別的針對對IDC的優化,它的paper[5]中提到

Data center failures happen due to power outages, cooling
failures, network failures, and natural disasters. Cassandra
is configured such that each row is replicated across multiple
data centers. In essence, the preference list of a key is con-
structed such that the storage nodes are spread across mul-
tiple datacenters. These datacenters are connected through
high speed network links. This scheme of replicating across
multiple datacenters allows us to handle entire data center
failures without any outage.

跟Dynamo中的描述幾乎是相同的。

3. PNUTS模式

PNUTS模式是目前最看好的多IDC數據同步方式。它的算法大部分是為多IDC設計。

PNUTS主要為Web應用設計,而不是離線數據分析(相比于Hadoop/HBase)。

  • Yahoo!的數據基本都是用戶相關數據,典型的以用戶的username為key的key value數據。
  • 統計數據訪問的特征發現85%的用戶修改數據經常來源自相同的IDC。

根據以上的數據特征,Yahoo!的PNUTS實現算法是

  • 記錄級別的master, 每一條記錄選擇一個IDC作為master,所有修改都需要通過master進行。即使同一個表(tablet)中不同的記錄master不同。
  • master上的數據通過Yahoo! Message Broker(YMB)異步消息將數據復制到其他IDC。
  • master選擇具有靈活的策略,可以根據最新修改的來源動態變更master IDC, 比如一個IDC收到用戶修改請求,但是master不在本地需要轉發到遠程master修改,當遠程修改超過3次則將本地的IDC設成master。
  • 每條記錄每次修改都有一個版本號(per-record timeline consisitency),master及YMB可以保證復制時候的順序。

Yahoo!的PNUTS實際可理解為master-master模式。
一致性:由于記錄都需通過master修改,master再復制到其他IDC, 因此可達到所有IDC數據具有最終一致性。
可用性

  • 由于所有IDC都有每條記錄的本地數據,應用可以根據策略返回本地cache或最新版本。
  • 本地修改只要commit到YMB即可認為修改成功。
  • 任一IDC發生故障不影響訪問。

論文中提到的其他優點

hosted, notifications, flexible schemas, ordered records, secondary indexes, lowish latency, strong consistency on a single record, scalability, high write rates, reliability, and range queries over a small set of records.

總之,PNUTS可以很好的適合geographic replication模式。

  • 記錄publish到本地YMB則認為成功,免除Dynamo方式需要等待多個Data Center返回的latency。
  • 如果發生master在異地則需要將請求forward到異地,但是由于存在master轉移的策略,需要forward的情況比較少。

極端情況,當record的master不可用時候,實現上似乎有些可疑之處,讀者可自行思考。

Under normal operation, if the master copy of a record fails, our system has protocols to fail over to another replica. However, if there are major outages, e.g. the entire region that had the master copy for a record becomes unreachable, updates cannot continue at another replica without potentially violating record-timeline consistency. We will allow applications to indicate, per-table, whether they want updates to continue in the presence of major outages, potentially branching the record timeline. If so, we will provide automatic conflict resolution and notifications thereof. The application will also be able to choose from several conflict resolution policies: e.g., discarding one branch, or merging updates from branches, etc.

初步結論

低帶寬網絡
PNUTS record-level mastering模式最佳。
高帶寬低延遲網絡
(1Gbps, Latency < 50ms)
1. 用Dynamo Quorum, vector clock算法實現最終一致性
2. 用Paxos實現強一致性

后記

本文從開始準備到發布時間較長,由于在多IDC數據訪問方面目前業界并無統一的成熟方案,相關資料和文獻也相對較少,而且對這方面有興趣且有相應環境的人不多,短時間要提出自己成熟獨立的見解也具有一定難度,本文僅包含一些不成熟的想法的整理,由于自己對文中的觀點深度也不是滿意,所以一直沒有最終完稿發布。但考慮到最近工作較忙,暫時沒有精力繼續深入研究,所以希望公開文章拋磚引玉,同時也歡迎對這方面課題有興趣者進一步交流探討。

Resource

  1. Ryan Barrett, Transactions Across Datacenters
  2. Jeff Dean, Designs, Lessons and Advice from Building Large Distributed Systems (PDF)
  3. PNUTS: Yahoo!’s Hosted Data Serving Platform (PDF)
  4. Thoughts on Yahoo’s PNUTS distributed database
  5. Cassandra – A Decentralized Structured Storage System (PDF)
  6. Yahoo!的分布式數據平臺PNUTS簡介及感悟
億恩-天使(QQ:530997) 電話 037160135991 服務器租用,托管歡迎咨詢。

本文出自:億恩科技【www.ibaoshan.net】

服務器租用/服務器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質保障!--億恩科技[ENKJ.COM]

  • 您可能在找
  • 億恩北京公司:
  • 經營性ICP/ISP證:京B2-20150015
  • 億恩鄭州公司:
  • 經營性ICP/ISP/IDC證:豫B1.B2-20060070
  • 億恩南昌公司:
  • 經營性ICP/ISP證:贛B2-20080012
  • 服務器/云主機 24小時售后服務電話:0371-60135900
  • 虛擬主機/智能建站 24小時售后服務電話:0371-60135900
  • 專注服務器托管17年
    掃掃關注-微信公眾號
    0371-60135900
    Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權所有  地址:鄭州市高新區翠竹街1號總部企業基地億恩大廈  法律顧問:河南亞太人律師事務所郝建鋒、杜慧月律師   京公網安備41019702002023號
      0
     
     
     
     

    0371-60135900
    7*24小時客服服務熱線

     
     
    在线观看免费A∨网站| 久久夜色精品国产噜噜噜亚洲AV | 成年女人18级毛片毛片免费| 少女たちよ在线观看动漫在线观看| 国产无人区二卡三卡四卡不见星空 | 精品成人一区二区三区四区| 中日韩人妻中文字幕视频在线| 日本熟妇极品FREE| 国产女人好紧好爽| 一区三区四区产品乱码| 人妻少妇无码专视频在线| 国产精品成人一区二区三区| 亚洲欧美精品SUV| 久久久精品人妻一区亚美研究所 | 亚洲无人区码一码二码三码的含义| 欧美裸体XXXX极品少妇| 公园小树中老年交易图片| 亚洲AV永久无码精品无码一区二区 | 极品教师高清免费观看| 美女扒开屁股让男人桶GIF动态 | 亚洲一线产区二线产区区别在 | 动漫人物桶动漫人物免费观看网站 | 无码夫の前で人妻を侵犯| 精品无码一区二区三区亚洲桃色 | 成人爽A毛片在线视频淮北| 吸头AXYGEN日本| 久久久久无码专区亚洲AV| А√天堂资源地址在线下载| 性高朝久久久久久久久久| 乱人伦人妻中文字幕无码| 成人午夜视频一区二区无码| 野花香高清在线观看视频播放免费 | 福利一区福利二区| 亚洲乱码精品久久久久..| 色狠狠一区二区三区香蕉| 精品久久久久久无码人妻VR| CHINESE猛攻打桩大学生| 午夜A级理论片在线播放717| 蜜臀成人片免费视频在线观看| 公交车上拨开丁字裤进入| 中字年轻漂亮的儿媳BD| 我和公GONG在厨房日本电影| 老司机久久一区二区三区| 丰满少妇大叫太大太粗 | 欧美黑人巨大video粗暴| 国产精品久免费的黄网站| 亚洲一卡2卡3卡4卡精品分类| 四虎影库最新地址| 久久免费观看午夜成人网站| 大BBW大BBW超大BBW| 亚洲女同成AV人片在线观看| 少妇厨房愉情理9仑片视频| 精品无码久久久久久午夜 | 色欲久久九色一区二区三区 | 日本久久久WWW成人免费毛片丨| 国内自产少妇自拍区免费| 18禁又污又黄又爽的网站不卡| 窝窝人体色WWW聚色窝| 欧美视频在线观看一区二区三区 | 激情五月综合 香亚洲| JAVAPARSER教师HD| 亚洲AV无码专区日韩乱码不卡| 日韩午夜理论片 中文字幕| 久久精品国产亚洲ΑV忘忧草| 成人在线高清不卡免费视频| 13小男生GAY自慰脱裤子| 亚洲丰满性熟妇ⅩXXOOO太阳| 人妻少妇无码精品视频区| 久久免费观看午夜成人网站| 国产一区二区三区好的精华液| CHINESE叫床国语VIDE| 亚洲中文字幕AV无码专区| 小婷又紧又嫩又窄又多水| 日韩一区二区三区AV| 久久久噜噜噜久噜久久| 国产亚洲成AV人片在线观黄桃| JEALOUSVUE日本人护士| 亚洲の无码国产の无码影院| 人妻激情偷乱一区二区三区AV| 久久一日本道色综合久久| 狠狠色噜噜狠狠狠8888在| 差差漫画页面在线阅读弹窗在线看| 中国老太太X×××XHD| 无码国产偷倩在线播放老年人| 人人人澡人人人妻人人人精品| 精品影片在线观看的网站| 丰满爆乳BBWBBWBBW| A级毛片毛片免费观的看久| 亚洲成AV人片天堂网| 天堂无码人妻精品一区二区三区| 美女张开腿黄网站免费| 精品国产一区二区三区无码| 国产欧美亚洲日韩图片| 国产99在线 | 免费| 波多野结衣50连登视频| 亚洲一区二区三区成人片在线观看| 亚洲 中文字幕在线播| 人妻体内射精一区二区| 精品乱码一卡2卡三卡4卡二卡| 国产女人高潮抽搐叫床视频| 国产AV午夜精品一区二区入口| 51福利国产在线观看午夜天堂| 亚洲AV中文无码乱人伦| 无码AV动漫精品专区| 色老久久精品偷偷鲁| 人妻丰满熟妇ΑⅤ无码区| 男生白内裤自慰GV白袜男同| 好硬好大好爽18禁免费看男男| 粗大的内捧猛烈进出动态图| 在线播放人成视频观看| 亚洲人成色7777在线观看不卡| 亚洲AV午夜成人片精品| 午夜人妻免费视频| 天堂А√在线地址资源| 色诱视频在线观看| 日本丰满熟妇×××××乱| 欧洲精品不卡1卡2卡三卡| 久久久久亚洲AV无码专区首页网| 激情综合一区二区迷情校园| 国产午夜精华无码网站| 国产精品爽爽VA在线观看无码| SQUIRT VIDEO喷水抽| 2020久久天天躁狠狠躁夜夜| 中国少妇的BBWWBBWW| 一区二区三区无码在线观看| 亚洲熟女乱综合一区二区| 无遮挡国产高潮视频免费观看| 熟妇人妻中文字幕| 欧美成人一区在线| 久久精品国产精品亚洲蜜月| 激情无码白丝人妻又大又粗| 国内精品久久久久影院一蜜桃| 动性配人ⅩXXXX配| 波多野结衣TORRENT| Z Z〇Z〇另类女人ZOZ〇| 岳丰满多毛的大隂户| 亚洲最大的成人网站| 亚洲婷婷五月综合狠狠爱| 亚洲精品无码AⅤ片桃花岛| 无码国产玉足脚交久久2020| 熟妇人妻无码一区二区三区| 十八禁啪啪污污网站免费下载| 少妇丰满爆乳被呻吟进入 | XXXX性BBBB欧美| AV乱码AV免费AⅤ成人| 51无人区码一码二码三码免费| 中文字幕亚洲乱码熟女一区二区| 亚洲高清专区日韩精品| 投诉12345最狠的办法| 前夫6天要了我25次| 欧美香蕉爽爽人人爽| 欧美黑人又粗又大又爽免费| 欧美FREESEX呦交| 欧美精欧美乱码一二三四区| 欧美精品成人久久AV爱乃娜美| 欧美精品多人P群无码| 欧美极品少妇XXXXⅩ喷水| 女性の乳頭を凸起しています| 久久久久久亚洲AV无码蜜芽| 国产一区二区三区水蜜桃| 国产亚洲成AV片在线观看蜜桃| 国产在线超清日本一本| 好大的奶好爽浪蹄子| 狠狠躁天天躁日日躁欧美| 激情内射人妻1区2区3区| 精品国产综合区久久久久久| 精品无人区无码乱码毛片国产| 久久精品熟女亚州AV麻豆| 久久天天躁狠狠躁夜夜2020| 久久亚洲色WWW成人图片| 老太太BGMBGMBGM11| 蜜桃AV人片在线观看| 女人被男人吃奶到高潮| 欧美日韩无套内射另类| 人妻少妇精品视频aaa| 日韩欧美亚洲每日更新在线| 日日噜狠狠噜天天噜AV | 无码专区 丝袜美腿 制服师生| 色妞精品AV一区二区三区| 少妇泬出白浆18P试看| 天天躁夜夜躁狠狠夜夜| 无码人妻丝袜在线视频| 双人床上做剧烈运动可以吗| 玩两个丰满老熟女久久网| 无人区一码二码三码四码| 亚洲AV无码一区二区三区大黄瓜| 亚洲乱码日产精品B| 一本一道AV无码中文字幕﹣百度 | 无码人妻在线视频| 亚洲AV日韩AV无码大全| 无码不卡AV东京热毛片| 午夜免费无码福利视频网址| 亚洲AV无码专区在线观看成人 | 五十路丰满熟女av名单大全| 亚洲AV无码国产精品久久| 午夜精品四季AV日日骚| 亚洲AV无码成人精品区伊人小说| 亚洲精品无码你懂的| 永久黄网站色视频免费观看APP| 夜夜添无码一区二区三区|