国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種分布式數(shù)據(jù)流處理方法及裝置的制造方法_2

      文檔序號(hào):8265919閱讀:來源:國(guó)知局
      種分布式數(shù)據(jù)流處理裝置,包括:
      [0051]接收模塊,用于接收第一節(jié)點(diǎn)發(fā)送的包含設(shè)定鍵值的狀態(tài)信息遷出指示,并將所述狀態(tài)信息遷出指示傳輸至發(fā)送模塊;
      [0052]發(fā)送模塊,用于根據(jù)所述接收模塊接收的狀態(tài)信息遷出指示,確定本地生成的所述鍵值對(duì)應(yīng)的數(shù)據(jù)流的第一狀態(tài)信息,并將確定的所述第一狀態(tài)信息發(fā)送給管理各工作節(jié)點(diǎn)的協(xié)調(diào)器。
      [0053]第六方面,提供一種分布式數(shù)據(jù)流處理裝置,包括:
      [0054]接收模塊,用于接收第一節(jié)點(diǎn)發(fā)送的包含設(shè)定鍵值的狀態(tài)信息遷入指示,并將所述狀態(tài)信息遷入指示傳輸至獲取模塊;
      [0055]獲取模塊,用于根據(jù)所述接收模塊接收的狀態(tài)信息遷入指示,從管理各工作節(jié)點(diǎn)的協(xié)調(diào)器中獲取所述第二節(jié)點(diǎn)發(fā)送到協(xié)調(diào)器中的所述鍵值對(duì)應(yīng)的數(shù)據(jù)流的第一狀態(tài)信息,并將獲取的所述第一狀態(tài)信息與本地生成的對(duì)應(yīng)所述鍵值的數(shù)據(jù)流的第二狀態(tài)信息進(jìn)行
      I=I TT O
      [0056]采用上述第一方面提供的分布式數(shù)據(jù)流處理方法,第一節(jié)點(diǎn)可以在確定下游的第二節(jié)點(diǎn)滿足設(shè)定的負(fù)載遷移條件后,將第二節(jié)點(diǎn)負(fù)責(zé)處理的鍵值對(duì)應(yīng)的數(shù)據(jù)流遷移至當(dāng)前累計(jì)負(fù)載較小的第三節(jié)點(diǎn)進(jìn)行處理,并指示第二節(jié)點(diǎn)和第三節(jié)點(diǎn)進(jìn)行狀態(tài)信息同步,從而可以針對(duì)同一鍵值的數(shù)據(jù)流進(jìn)行負(fù)載均衡處理。
      【附圖說明】
      [0057]圖1為本發(fā)明實(shí)施例一進(jìn)行分布式數(shù)據(jù)流處理的方法流程圖;
      [0058]圖2為本發(fā)明實(shí)施例二進(jìn)行分布式數(shù)據(jù)流處理的方法流程圖;
      [0059]圖3為本發(fā)明實(shí)施例三進(jìn)行分布式數(shù)據(jù)流處理的方法流程圖;
      [0060]圖4為本發(fā)明實(shí)施例的分布式系統(tǒng)中各工作節(jié)點(diǎn)及每個(gè)工作節(jié)點(diǎn)的功能單元分布示意圖;
      [0061]圖5為本發(fā)明實(shí)施例中第一節(jié)點(diǎn)進(jìn)行負(fù)載遷移的方法流程圖;
      [0062]圖6為本發(fā)明實(shí)施例中工作節(jié)點(diǎn)間進(jìn)行狀態(tài)信息同步的示意圖;
      [0063]圖7為與圖6相對(duì)應(yīng)的本發(fā)明實(shí)施例中進(jìn)行狀態(tài)信息同步的方法流程圖;
      [0064]圖8本發(fā)明實(shí)施例的分布式系統(tǒng)中工作節(jié)點(diǎn)進(jìn)行過載反饋的示意圖;
      [0065]圖9為與圖8相對(duì)應(yīng)的本發(fā)明實(shí)施例的分布式系統(tǒng)中工作節(jié)點(diǎn)進(jìn)行過載反饋的方法流程圖;
      [0066]圖10為本發(fā)明實(shí)施例一提供的分布式數(shù)據(jù)流處理裝置示意圖;
      [0067]圖11為本發(fā)明實(shí)施例二提供的分布式數(shù)據(jù)流處理裝置示意圖;
      [0068]圖12為本發(fā)明實(shí)施例三提供的分布式數(shù)據(jù)流處理裝置示意圖;
      [0069]圖13為本發(fā)明實(shí)施例四提供的分布式數(shù)據(jù)流處理裝置示意圖;
      [0070]圖14為本發(fā)明實(shí)施例五提供的分布式數(shù)據(jù)流處理裝置示意圖;
      [0071]圖15為本發(fā)明實(shí)施例六提供的分布式數(shù)據(jù)流處理裝置示意圖。
      【具體實(shí)施方式】
      [0072]下面結(jié)合說明書附圖對(duì)本發(fā)明實(shí)施例作進(jìn)一步詳細(xì)描述。
      [0073]如圖1所示,為本發(fā)明實(shí)施例一進(jìn)行分布式數(shù)據(jù)流處理的方法流程圖,包括以下步驟:
      [0074]SlOl:第一節(jié)點(diǎn)根據(jù)需要分配給下一跳工作節(jié)點(diǎn)的數(shù)據(jù)流的鍵值,確定第二節(jié)點(diǎn)為處理所述鍵值對(duì)應(yīng)的數(shù)據(jù)流的下一跳工作節(jié)點(diǎn);
      [0075]S102:所述第一節(jié)點(diǎn)在確定所述第二節(jié)點(diǎn)滿足設(shè)定的負(fù)載遷移條件后,將所述需要分配給下一跳工作節(jié)點(diǎn)的數(shù)據(jù)流從所述第二節(jié)點(diǎn)遷移至第三節(jié)點(diǎn)進(jìn)行處理,并指示所述第二節(jié)點(diǎn)和第三節(jié)點(diǎn)同步所述鍵值對(duì)應(yīng)的數(shù)據(jù)流的狀態(tài)信息;
      [0076]其中,所述第二節(jié)點(diǎn)和第三節(jié)點(diǎn)屬于所述第一節(jié)點(diǎn)的下一跳工作節(jié)點(diǎn)集合,所述第三節(jié)點(diǎn)的累計(jì)負(fù)載小于所述第二節(jié)點(diǎn)的累計(jì)負(fù)載。
      [0077]采用上述方法,第一節(jié)點(diǎn)可以在確定下游的第二節(jié)點(diǎn)滿足設(shè)定的負(fù)載遷移條件后,將第二節(jié)點(diǎn)負(fù)責(zé)處理的鍵值對(duì)應(yīng)的數(shù)據(jù)流遷移至當(dāng)前累計(jì)負(fù)載較小的第三節(jié)點(diǎn)進(jìn)行處理,并指示第二節(jié)點(diǎn)和第三節(jié)點(diǎn)進(jìn)行狀態(tài)信息同步,從而可以針對(duì)同一鍵值的數(shù)據(jù)流進(jìn)行負(fù)載均衡處理。
      [0078]可選地,所述第三節(jié)點(diǎn)為當(dāng)前所述第一節(jié)點(diǎn)的下一跳工作節(jié)點(diǎn)集合中具有最小累計(jì)負(fù)載的工作節(jié)點(diǎn)。
      [0079]可選地,所述方法還包括:
      [0080]第一節(jié)點(diǎn)根據(jù)需要分配給下一跳工作節(jié)點(diǎn)的數(shù)據(jù)流的鍵值,在確定當(dāng)前不存在處理該鍵值對(duì)應(yīng)的數(shù)據(jù)流的下一跳工作節(jié)點(diǎn)時(shí),將所述需要分配給下一跳工作節(jié)點(diǎn)的數(shù)據(jù)流分配給當(dāng)前所述第一節(jié)點(diǎn)的下一跳工作節(jié)點(diǎn)集合中具有最小累計(jì)負(fù)載的工作節(jié)點(diǎn)進(jìn)行處理。
      [0081]在具體實(shí)施過程中,第一節(jié)點(diǎn)分配給下一跳工作節(jié)點(diǎn)的數(shù)據(jù)流可以是本地生成的初始數(shù)據(jù)流,也可以是轉(zhuǎn)發(fā)的其它工作節(jié)點(diǎn)生成的數(shù)據(jù)流;第一節(jié)點(diǎn)根據(jù)需要分配給下一跳工作節(jié)點(diǎn)的數(shù)據(jù)流的鍵值,判斷該鍵值對(duì)應(yīng)的數(shù)據(jù)流是否已經(jīng)被分配到某個(gè)下一跳工作節(jié)點(diǎn),若確定該鍵值對(duì)應(yīng)的數(shù)據(jù)流已經(jīng)被分配到第二節(jié)點(diǎn),則判斷第二節(jié)點(diǎn)是否已滿足負(fù)載遷移條件,若滿足,則將該鍵值對(duì)應(yīng)的數(shù)據(jù)流遷移至當(dāng)前累計(jì)負(fù)載比第一節(jié)點(diǎn)的累計(jì)負(fù)載小的第三節(jié)點(diǎn)進(jìn)行處理,這里的第三節(jié)點(diǎn)具體可以是當(dāng)前第一節(jié)點(diǎn)的所有下一跳工作節(jié)點(diǎn)中具有最小累計(jì)負(fù)載的工作節(jié)點(diǎn);若不滿足,則繼續(xù)將該鍵值對(duì)應(yīng)的數(shù)據(jù)流分配給第二節(jié)點(diǎn)進(jìn)行處理;若該鍵值對(duì)應(yīng)的數(shù)據(jù)流還沒有被分配到任何一個(gè)下一跳工作節(jié)點(diǎn),則將該數(shù)據(jù)流分配給當(dāng)前具有最小累計(jì)負(fù)載的工作節(jié)點(diǎn)進(jìn)行處理;其中,每個(gè)鍵值對(duì)應(yīng)的數(shù)據(jù)流可以稱為一個(gè)數(shù)據(jù)項(xiàng)目。
      [0082]可選地,所述設(shè)定的負(fù)載遷移條件包括以下條件中的一種或多種:
      [0083]第一個(gè)條件:所述第二節(jié)點(diǎn)的累計(jì)負(fù)載超過設(shè)定閾值;
      [0084]第二個(gè)條件:所述第二節(jié)點(diǎn)的累計(jì)負(fù)載與第三節(jié)點(diǎn)的累計(jì)負(fù)載的比值和/或差值超過設(shè)定閾值;
      [0085]除此,負(fù)載遷移條件除包括上述兩個(gè)條件中的一個(gè)或兩個(gè)之外,還可以包括:
      [0086]第三個(gè)條件:當(dāng)前時(shí)間與所述第一節(jié)點(diǎn)最近一次進(jìn)行數(shù)據(jù)流遷移處理的時(shí)間的時(shí)間間隔不小于設(shè)定閾值。
      [0087]本發(fā)明實(shí)施例中,可以在以上第一個(gè)和/或第二個(gè)條件滿足時(shí),將所述鍵值對(duì)應(yīng)的數(shù)據(jù)流從所述第二節(jié)點(diǎn)遷移至當(dāng)前具有最小累計(jì)負(fù)載的第三節(jié)點(diǎn)進(jìn)行處理;在具體實(shí)施中,為了兼顧系統(tǒng)開銷,可以在以上第一個(gè)和/或第二個(gè)條件滿足時(shí),查看當(dāng)前時(shí)間與所述第一節(jié)點(diǎn)最近一次進(jìn)行數(shù)據(jù)流遷移處理的時(shí)間的時(shí)間間隔是否小于設(shè)定閾值,若達(dá)到或超過設(shè)定閾值,再將所述鍵值對(duì)應(yīng)的數(shù)據(jù)流從所述第二節(jié)點(diǎn)遷移至當(dāng)前具有最小累計(jì)負(fù)載的第三節(jié)點(diǎn)進(jìn)行處理。
      [0088]上述第二節(jié)點(diǎn)及第三節(jié)點(diǎn)的累計(jì)負(fù)載可根據(jù)以下公式進(jìn)行計(jì)算:
      [0089]可選地,所述第一節(jié)點(diǎn)根據(jù)以下公式確定設(shè)定時(shí)間段內(nèi)所述第一節(jié)點(diǎn)的任意一個(gè)下一跳工作節(jié)點(diǎn)的累計(jì)負(fù)載W:
      [0090]W=cXW' +(l-c)Xy;
      [0091]其中,y為所述第一節(jié)點(diǎn)在所述設(shè)定時(shí)間段內(nèi)分配給所述任意一個(gè)下一跳工作節(jié)點(diǎn)的負(fù)載,r為所述任意一個(gè)下一跳工作節(jié)點(diǎn)在所述設(shè)定時(shí)間段的前一個(gè)時(shí)間段結(jié)束時(shí)的累計(jì)負(fù)載,c為常數(shù),且O < c < I。
      [0092]比如,針對(duì)上述第二節(jié)點(diǎn),上述公式中,y為第一節(jié)點(diǎn)在設(shè)定時(shí)間段內(nèi)分配給第二節(jié)點(diǎn)的負(fù)載,該負(fù)載可以包括一個(gè)鍵值對(duì)應(yīng)的數(shù)據(jù)流,也可以包括多個(gè)鍵值對(duì)應(yīng)的數(shù)據(jù)流;針對(duì)其中任意一個(gè)鍵值,也即任意一個(gè)數(shù)據(jù)項(xiàng)目,假設(shè)在該設(shè)定時(shí)間段開始時(shí)該數(shù)據(jù)項(xiàng)目對(duì)應(yīng)的負(fù)載為W,在該設(shè)定時(shí)間段內(nèi),該數(shù)據(jù)項(xiàng)目新增的負(fù)載為V,則在該設(shè)定時(shí)間段結(jié)束時(shí),將該數(shù)據(jù)項(xiàng)目對(duì)應(yīng)的負(fù)載更新為W = cXw' +(1-C) Xv。
      [0093]可選地,所述第一節(jié)點(diǎn)指示所述第二節(jié)點(diǎn)和第三節(jié)點(diǎn)同步所述鍵值對(duì)應(yīng)的數(shù)據(jù)流的狀態(tài)信息,包括:
      [0094]所述第一節(jié)點(diǎn)向所述第二節(jié)點(diǎn)發(fā)送包含所述鍵值的狀態(tài)信息遷出指示,以及,向所述第三節(jié)點(diǎn)發(fā)送包含所述鍵值的狀態(tài)信息遷入指示;
      [0095]其中,所述狀態(tài)信息遷出指示用于指示所述第二節(jié)點(diǎn)將本地生成的所述鍵值對(duì)應(yīng)的數(shù)據(jù)流的第一狀態(tài)信息發(fā)送給管理各工作節(jié)點(diǎn)的協(xié)調(diào)器;所述狀態(tài)信息遷入指示用于指示所述第三節(jié)點(diǎn)從管理各工作節(jié)點(diǎn)的協(xié)調(diào)器中獲取所述鍵值對(duì)應(yīng)的數(shù)據(jù)流的第一狀態(tài)信息,并將獲取的所述第一狀態(tài)信息與本地生成的對(duì)應(yīng)所述鍵值的數(shù)據(jù)流的第二狀態(tài)信息進(jìn)行合并。
      [0096]在具體實(shí)施過程中,第一節(jié)點(diǎn)在將第二節(jié)點(diǎn)當(dāng)前處理的所述鍵值對(duì)應(yīng)的數(shù)據(jù)流,也即數(shù)據(jù)項(xiàng)目,遷移至第三節(jié)點(diǎn)進(jìn)行處理的同時(shí),需要針對(duì)該數(shù)據(jù)項(xiàng)目,同步第一節(jié)點(diǎn)和第三節(jié)點(diǎn)間的狀態(tài)信息;具體地,本發(fā)明實(shí)施例中采用管理各工作節(jié)點(diǎn)的協(xié)調(diào)器作為兩節(jié)點(diǎn)間狀態(tài)信息同步的中轉(zhuǎn)站,第二節(jié)點(diǎn)將之前存儲(chǔ)的該數(shù)據(jù)項(xiàng)目的第一狀態(tài)信息發(fā)送給協(xié)調(diào)器,以使第三節(jié)點(diǎn)可以從該協(xié)調(diào)器獲取該第一狀態(tài)信息,第三節(jié)點(diǎn)在獲取該第一狀態(tài)信息后,可以將該第一狀態(tài)信息與第三節(jié)點(diǎn)新生成的對(duì)應(yīng)該數(shù)據(jù)項(xiàng)目的第二狀態(tài)信息進(jìn)行合并,如此完成了對(duì)遷移的數(shù)據(jù)項(xiàng)目的狀態(tài)信息同步。在具體實(shí)施中,第一節(jié)點(diǎn)可以向第二節(jié)點(diǎn)和第三節(jié)點(diǎn)分別發(fā)送狀態(tài)信息遷出指示和狀態(tài)信息遷入指示,該指示可以顯式指示第二節(jié)點(diǎn)和第三節(jié)點(diǎn)進(jìn)行狀態(tài)信息同步,也可以隱式指示第二節(jié)點(diǎn)和第三節(jié)點(diǎn)進(jìn)行狀態(tài)信息同步,比如,第一節(jié)點(diǎn)可以直接通知第二節(jié)點(diǎn)將設(shè)定鍵值對(duì)應(yīng)的數(shù)據(jù)流的第一狀態(tài)信息遷出,并發(fā)送給協(xié)調(diào)器,也可以通知第二節(jié)點(diǎn)所述第一節(jié)點(diǎn)已經(jīng)將所述鍵值對(duì)應(yīng)的數(shù)據(jù)流從該第二節(jié)點(diǎn)遷移到了其它工作節(jié)點(diǎn)進(jìn)行處理,第二節(jié)點(diǎn)在接收到該通知后,根據(jù)各工作節(jié)點(diǎn)間的預(yù)先約定,將本地生成的該鍵值對(duì)應(yīng)的數(shù)據(jù)流的第一狀態(tài)信息發(fā)送至協(xié)調(diào)器;相應(yīng)地,第一節(jié)點(diǎn)可以直接通知第三節(jié)點(diǎn)從協(xié)調(diào)器遷入設(shè)定鍵值對(duì)應(yīng)的數(shù)據(jù)流的第一狀態(tài)信息,并將該第一狀態(tài)信息與第三節(jié)點(diǎn)新生成的第二狀態(tài)信息合并,也可以通知第三節(jié)點(diǎn)所述第一節(jié)點(diǎn)已經(jīng)將所述鍵值對(duì)應(yīng)的數(shù)據(jù)流從其它工作節(jié)點(diǎn)遷移到了第三節(jié)點(diǎn)進(jìn)行處理,第三節(jié)點(diǎn)在接收到該通知后,根據(jù)各工作節(jié)點(diǎn)間的預(yù)先約定,從協(xié)調(diào)器獲取所述第一狀態(tài)信息,并將所述第一狀態(tài)信息與本地生成的該鍵值對(duì)應(yīng)的數(shù)據(jù)流的第二狀態(tài)信息
      當(dāng)前第2頁(yè)1 2 3 4 5 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1