国产精品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ù)的處理方法、裝置及數(shù)據(jù)處理系統(tǒng)的制作方法

      文檔序號(hào):6581289閱讀:176來源:國知局
      專利名稱:一種行集數(shù)據(jù)的處理方法、裝置及數(shù)據(jù)處理系統(tǒng)的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明屬于數(shù)據(jù)處理技術(shù)領(lǐng)域,尤其涉及一種行集數(shù)據(jù)的處理方法、裝置及數(shù)據(jù)
      處理系統(tǒng)。
      背景技術(shù)
      在現(xiàn)有技術(shù)中,為了實(shí)現(xiàn)復(fù)雜的多步驟的數(shù)據(jù)處理,一般會(huì)有多個(gè)任務(wù)節(jié)點(diǎn),每個(gè)任務(wù)節(jié)點(diǎn)都有不同的處理邏輯和算法,數(shù)據(jù)處理時(shí)由第一個(gè)任務(wù)節(jié)點(diǎn)開始,處理完數(shù)據(jù)后,將數(shù)據(jù)輸出到第二個(gè)任務(wù)節(jié)點(diǎn),以此類推, 一直到最后一個(gè)任務(wù)節(jié)點(diǎn),如果有異常,會(huì)直接輸出到異常任務(wù)節(jié)點(diǎn),并結(jié)束任務(wù)。 上述的數(shù)據(jù)處理方式中,有且只有一個(gè)起始任務(wù)節(jié)點(diǎn)和一個(gè)終止任務(wù)節(jié)點(diǎn),非起點(diǎn)的處理任務(wù)有且只有一個(gè)前繼任務(wù),非結(jié)束點(diǎn)的任務(wù)有且只有一個(gè)后繼任務(wù),這樣的處理方法在定義上比較簡單,流程比較清楚,但響應(yīng)速度較慢,必須等到所有節(jié)點(diǎn)任務(wù)執(zhí)行完畢后才會(huì)有數(shù)據(jù)輸出。另外,為了提高執(zhí)行速度,需要分配大塊的連續(xù)內(nèi)存,來裝載每個(gè)任務(wù)節(jié)點(diǎn)處理數(shù)據(jù)的輸入/輸出。

      發(fā)明內(nèi)容
      本發(fā)明實(shí)施例的目的在于提供一種行集數(shù)據(jù)的處理方法,旨在解決現(xiàn)有技術(shù)中存在的數(shù)據(jù)處理的響應(yīng)速度慢、且需占用大塊的連續(xù)內(nèi)存的問題。 本發(fā)明是這樣實(shí)現(xiàn)的,一種行集數(shù)據(jù)的處理方法,所述方法包括以下步驟
      將待處理的行集數(shù)據(jù)傳入起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū); 從所述輸入緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至中轉(zhuǎn)緩沖區(qū); 當(dāng)存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至下一個(gè)中轉(zhuǎn)緩沖區(qū),以此類推; 當(dāng)不存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至終止任務(wù)節(jié)點(diǎn)的輸出緩沖區(qū);
      將終止任務(wù)節(jié)點(diǎn)輸出緩沖區(qū)的數(shù)據(jù)輸出。 本發(fā)明實(shí)施例的另一 目的在于提供一種行集數(shù)據(jù)的處理裝置,所述裝置包括 輸入緩沖區(qū),作為起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū); 多個(gè)中轉(zhuǎn)緩沖區(qū),作為每個(gè)中繼任務(wù)節(jié)點(diǎn)的中轉(zhuǎn)緩沖區(qū); 輸出緩沖區(qū),作為終止任務(wù)節(jié)點(diǎn)的輸出緩沖區(qū); 數(shù)據(jù)傳輸模塊,用于將待處理的行集數(shù)據(jù)傳入起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū);
      多個(gè)處理線程,用于從所述輸入緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至中轉(zhuǎn)緩沖區(qū);當(dāng)存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至下一個(gè)中轉(zhuǎn)緩沖區(qū),以此類推;當(dāng)不存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至終止任務(wù)節(jié)點(diǎn)的輸出緩沖區(qū); 數(shù)據(jù)輸出模塊,用于將終止任務(wù)節(jié)點(diǎn)輸出緩沖區(qū)的數(shù)據(jù)輸出。 本發(fā)明實(shí)施例的另一目的在于提供一種包括上面所述的行集數(shù)據(jù)的處理裝置的數(shù)據(jù)處理系統(tǒng)。 在本發(fā)明實(shí)施例中,采用流水線式處理行集數(shù)據(jù),以單數(shù)據(jù)行作為處理單位,每一行數(shù)據(jù)處理完畢,立即輸出到中繼任務(wù)節(jié)點(diǎn),不必等待所有數(shù)據(jù)行處理完畢,提高了數(shù)據(jù)處理的響應(yīng)速度,只需要申請(qǐng)更小的內(nèi)存塊,對(duì)系統(tǒng)內(nèi)存的要求更低、使用率更高;提高了數(shù)據(jù)的處理量,使得處理系統(tǒng)具有更好的伸縮性,從而通過擴(kuò)充CPU和其它硬件來加快處理的速度,具有很好的擴(kuò)展性。


      圖1是本發(fā)明第一實(shí)施例提供的行集數(shù)據(jù)的處理方法的實(shí)現(xiàn)流程示意圖。 圖2是本發(fā)明第二實(shí)施例提供的行集數(shù)據(jù)的處理方法的實(shí)現(xiàn)流程示意圖。 圖3是本發(fā)明第三實(shí)施例提供的行集數(shù)據(jù)的處理方法的實(shí)現(xiàn)流程示意圖。 圖4是本發(fā)明第四實(shí)施例提供的行集數(shù)據(jù)的處理方法的實(shí)現(xiàn)流程示意圖。 圖5是本發(fā)明第五實(shí)施例提供的行集數(shù)據(jù)的處理方法的實(shí)現(xiàn)流程示意圖。 圖6是本發(fā)明第六實(shí)施例提供的行集數(shù)據(jù)的處理裝置的結(jié)構(gòu)示意圖。 圖7是本發(fā)明第七實(shí)施例提供的行集數(shù)據(jù)的處理裝置的結(jié)構(gòu)示意圖。 圖8是本發(fā)明第八實(shí)施例提供的行集數(shù)據(jù)的處理裝置的結(jié)構(gòu)示意圖。 圖9是本發(fā)明第九實(shí)施例提供的行集數(shù)據(jù)的處理裝置的結(jié)構(gòu)示意圖。
      具體實(shí)施例方式
      為了使本發(fā)明所要解決的技術(shù)問題、技術(shù)方案及有益效果更加清楚明白,以下結(jié)
      合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。 在本發(fā)明中,采用流水線式處理行集數(shù)據(jù),以單數(shù)據(jù)行作為處理單位,每一行數(shù)據(jù)處理完畢,立即輸出到中繼任務(wù)節(jié)點(diǎn),不必等待所有數(shù)據(jù)行處理完畢,提高了數(shù)據(jù)處理的響應(yīng)速度,只需要申請(qǐng)更小的內(nèi)存塊。 本發(fā)明提供了一種行集數(shù)據(jù)的處理方法、裝置及數(shù)據(jù)處理系統(tǒng) 所述方法包括將待處理的行集數(shù)據(jù)傳入起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū);從所述輸入緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至中轉(zhuǎn)緩沖區(qū);當(dāng)存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至下一個(gè)中轉(zhuǎn)緩沖區(qū),以此類推;當(dāng)不存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至終止任務(wù)節(jié)點(diǎn)的輸出緩沖區(qū);將終止任務(wù)節(jié)點(diǎn)輸出緩沖區(qū)的數(shù)據(jù)輸出。 所述裝置包括數(shù)據(jù)傳輸模塊,用于將待處理的行集數(shù)據(jù)傳入起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū);多個(gè)處理線程,用于從所述輸入緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至中轉(zhuǎn)緩沖區(qū);當(dāng)存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至下一個(gè)中轉(zhuǎn)緩沖區(qū),以此類推;當(dāng)不存在下一個(gè)中繼任務(wù)
      4節(jié)點(diǎn)時(shí),從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至終止任務(wù)節(jié)點(diǎn)的輸出緩沖區(qū);數(shù)據(jù)輸出模塊,用于將終止任務(wù)節(jié)點(diǎn)輸出緩沖區(qū)的數(shù)據(jù)輸出。
      所述數(shù)據(jù)處理系統(tǒng)包括上面所述的行集數(shù)據(jù)的處理裝置。 在本發(fā)明實(shí)施例中,其中,行集數(shù)據(jù)是指具有相同數(shù)據(jù)結(jié)構(gòu)對(duì)稱的多行記錄,例如關(guān)系數(shù)據(jù)庫的表記錄。 其中,數(shù)據(jù)處理是對(duì)輸入數(shù)據(jù),按特定的邏輯和算法進(jìn)行運(yùn)算處理,輸出符合要求的數(shù)據(jù)。 其中,一個(gè)任務(wù)節(jié)點(diǎn)可以定義一個(gè)或多個(gè)供用戶執(zhí)行的任務(wù)。
      實(shí)施例一 請(qǐng)參閱圖l,為本發(fā)明第一實(shí)施例提供的行集數(shù)據(jù)的處理方法,其包括以下步驟
      在步驟S101中,將待處理的行集數(shù)據(jù)傳入起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū);
      在步驟S102中,從所述輸入緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至中轉(zhuǎn)緩沖區(qū); 在步驟S103中,當(dāng)存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至下一個(gè)中轉(zhuǎn)緩沖區(qū),以此類推; 在步驟S104中,當(dāng)不存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至終止任務(wù)節(jié)點(diǎn)的輸出緩沖區(qū);
      在步驟S105中,將終止任務(wù)節(jié)點(diǎn)輸出緩沖區(qū)的數(shù)據(jù)輸出。
      實(shí)施例二 請(qǐng)參閱圖2,為本發(fā)明第二實(shí)施例提供的行集數(shù)據(jù)的處理方法,其包括以下步驟
      在步驟S201中,為數(shù)據(jù)處理任務(wù)流中的所有任務(wù)節(jié)點(diǎn)均開啟一個(gè)處理線程;
      在步驟S202中,將待處理的行集數(shù)據(jù)傳入起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū);
      在步驟S203中,所述處理線程從所述輸入緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至中轉(zhuǎn)緩沖區(qū); 在步驟S204中,當(dāng)存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),所述處理線程從當(dāng)前中轉(zhuǎn)緩沖區(qū)
      中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至下一個(gè)中轉(zhuǎn)緩沖區(qū),以此類推; 在步驟S205中,當(dāng)不存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),所述處理線程從當(dāng)前中轉(zhuǎn)緩沖
      區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至終止任務(wù)節(jié)點(diǎn)的輸出緩沖區(qū); 在步驟S206中,將終止任務(wù)節(jié)點(diǎn)輸出緩沖區(qū)的數(shù)據(jù)輸出。 實(shí)施例三 請(qǐng)參閱圖3,為本發(fā)明第三實(shí)施例提供的行集數(shù)據(jù)的處理方法,其包括以下步驟
      在步驟S301中,設(shè)置起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū);設(shè)置每個(gè)中繼任務(wù)節(jié)點(diǎn)的中轉(zhuǎn)緩沖區(qū);設(shè)置終止任務(wù)節(jié)點(diǎn)的輸出緩沖區(qū);為數(shù)據(jù)處理任務(wù)流中的所有任務(wù)節(jié)點(diǎn)均開啟一個(gè)處理線程; 在步驟S302中,將待處理的行集數(shù)據(jù)傳入起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū); 在步驟S303中,所述處理線程從所述輸入緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處
      理完的數(shù)據(jù)傳輸至中轉(zhuǎn)緩沖區(qū); 在步驟S304中,當(dāng)存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),所述處理線程從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至下一個(gè)中轉(zhuǎn)緩沖區(qū),以此類推;
      在步驟S305中,當(dāng)不存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),所述處理線程從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至終止任務(wù)節(jié)點(diǎn)的輸出緩沖區(qū);
      在步驟S306中,將終止任務(wù)節(jié)點(diǎn)輸出緩沖區(qū)的數(shù)據(jù)輸出。
      實(shí)施例四 請(qǐng)參閱圖4,為本發(fā)明第四實(shí)施例提供的行集數(shù)據(jù)的處理方法,其包括以下步驟
      在步驟S401中,將待處理的行集數(shù)據(jù)傳入起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū);
      在步驟S402中,從所述輸入緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,當(dāng)處理完一行數(shù)據(jù)后,將其從起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū)中清除,并將處理完的數(shù)據(jù)傳輸至中轉(zhuǎn)緩沖區(qū);
      在步驟S403中,當(dāng)存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至下一個(gè)中轉(zhuǎn)緩沖區(qū),以此類推; 在步驟S404中,當(dāng)不存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至終止任務(wù)節(jié)點(diǎn)的輸出緩沖區(qū);
      在步驟S405中,將終止任務(wù)節(jié)點(diǎn)輸出緩沖區(qū)的數(shù)據(jù)輸出。
      實(shí)施例五 請(qǐng)參閱圖5,為本發(fā)明第五實(shí)施例提供的行集數(shù)據(jù)的處理方法,其包括以下步驟
      在步驟S501中,將待處理的行集數(shù)據(jù)傳入起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū);
      在步驟S502中,從所述輸入緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至中轉(zhuǎn)緩沖區(qū); 在步驟S503中,當(dāng)存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至下一個(gè)中轉(zhuǎn)緩沖區(qū),以此類推; 在步驟S504中,當(dāng)不存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至終止任務(wù)節(jié)點(diǎn)的輸出緩沖區(qū);
      在步驟S505中,將終止任務(wù)節(jié)點(diǎn)輸出緩沖區(qū)的數(shù)據(jù)輸出; 在步驟S506中,當(dāng)終止任務(wù)節(jié)點(diǎn)標(biāo)識(shí)為完成時(shí),關(guān)閉所有任務(wù)節(jié)點(diǎn)的處理線程,釋放內(nèi)存。 在本發(fā)明實(shí)施例中,當(dāng)起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū)為空時(shí),會(huì)自動(dòng)置完成標(biāo)識(shí),而當(dāng)中繼任務(wù)節(jié)點(diǎn)的中轉(zhuǎn)緩沖區(qū)為空時(shí),會(huì)將其中轉(zhuǎn)緩沖區(qū)置完成標(biāo)識(shí),并結(jié)束該任務(wù)節(jié)點(diǎn)的任務(wù),這樣,以此類推,當(dāng)行集數(shù)據(jù)不斷被推送時(shí),所有處理線程會(huì)被結(jié)束掉。
      實(shí)施例六 請(qǐng)參閱圖6,為本發(fā)明第六實(shí)施例提供的行集數(shù)據(jù)的處理裝置,為了便于說明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。所述行集數(shù)據(jù)的處理裝置包括數(shù)據(jù)傳輸模塊100、多個(gè)處理線程101、以及數(shù)據(jù)輸出模塊103。所述行集數(shù)據(jù)的處理裝置可以是內(nèi)置于數(shù)據(jù)處理系統(tǒng)中的軟件單元、硬件單元或者是軟硬件結(jié)合的單元。 其中,輸入緩沖區(qū),作為起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū);多個(gè)中轉(zhuǎn)緩沖區(qū),作為每個(gè)中繼任務(wù)節(jié)點(diǎn)的中轉(zhuǎn)緩沖區(qū);輸出緩沖區(qū),作為終止任務(wù)節(jié)點(diǎn)的輸出緩沖區(qū)。
      數(shù)據(jù)傳輸模塊100將待處理的行集數(shù)據(jù)傳入起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū);多個(gè)處理線程101從所述輸入緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至中轉(zhuǎn)緩沖區(qū);當(dāng)存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),多個(gè)處理線程101從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至下一個(gè)中轉(zhuǎn)緩沖區(qū),以此類推;當(dāng)不存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),多個(gè)處理線程101從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù) 傳輸至終止任務(wù)節(jié)點(diǎn)的輸出緩沖區(qū);數(shù)據(jù)輸出模塊103將終止任務(wù)節(jié)點(diǎn)輸出緩沖區(qū)的數(shù)據(jù) 輸出。 實(shí)施例七 請(qǐng)參閱圖7,為本發(fā)明第七實(shí)施例提供的行集數(shù)據(jù)的處理裝置,與第六實(shí)施例相 比,第七實(shí)施例多了處理線程開啟模塊1001。 處理線程開啟模塊1001,用于為數(shù)據(jù)處理任務(wù)流中的所有任務(wù)節(jié)點(diǎn)均開啟一個(gè)處 理線程101。數(shù)據(jù)傳輸模塊100將待處理的行集數(shù)據(jù)傳入起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū);多 個(gè)處理線程101從所述輸入緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至中轉(zhuǎn) 緩沖區(qū);當(dāng)存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),多個(gè)處理線程101從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出 數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至下一個(gè)中轉(zhuǎn)緩沖區(qū),以此類推;當(dāng)不存在下一個(gè)中繼 任務(wù)節(jié)點(diǎn)時(shí),多個(gè)處理線程101從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的 數(shù)據(jù)傳輸至終止任務(wù)節(jié)點(diǎn)的輸出緩沖區(qū);數(shù)據(jù)輸出模塊103將終止任務(wù)節(jié)點(diǎn)輸出緩沖區(qū)的 數(shù)據(jù)輸出。
      實(shí)施例八 請(qǐng)參閱圖8,為本發(fā)明第八實(shí)施例提供的行集數(shù)據(jù)的處理裝置,與第六實(shí)施例相 比,第八實(shí)施例多了數(shù)據(jù)清除模塊1002。 數(shù)據(jù)傳輸模塊100將待處理的行集數(shù)據(jù)傳入起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū);多個(gè)處 理線程101從所述輸入緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至中轉(zhuǎn)緩沖 區(qū);當(dāng)處理完一行數(shù)據(jù)后,數(shù)據(jù)清除模塊1002將其從起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū)中清除; 當(dāng)存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),多個(gè)處理線程101從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行 處理,將處理完的數(shù)據(jù)傳輸至下一個(gè)中轉(zhuǎn)緩沖區(qū),以此類推;當(dāng)不存在下一個(gè)中繼任務(wù)節(jié)點(diǎn) 時(shí),多個(gè)處理線程101從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸 至終止任務(wù)節(jié)點(diǎn)的輸出緩沖區(qū);數(shù)據(jù)輸出模塊103將終止任務(wù)節(jié)點(diǎn)輸出緩沖區(qū)的數(shù)據(jù)輸 出。
      實(shí)施例九 請(qǐng)參閱圖9,為本發(fā)明第九實(shí)施例提供的行集數(shù)據(jù)的處理裝置,與第六實(shí)施例相 比,第八實(shí)施例多了內(nèi)存釋放模塊1003。 數(shù)據(jù)傳輸模塊100將待處理的行集數(shù)據(jù)傳入起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū);多個(gè)處 理線程101從所述輸入緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至中轉(zhuǎn)緩沖 區(qū);當(dāng)存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),多個(gè)處理線程101從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù) 進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至下一個(gè)中轉(zhuǎn)緩沖區(qū),以此類推;當(dāng)不存在下一個(gè)中繼任務(wù) 節(jié)點(diǎn)時(shí),多個(gè)處理線程101從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù) 傳輸至終止任務(wù)節(jié)點(diǎn)的輸出緩沖區(qū);數(shù)據(jù)輸出模塊103將終止任務(wù)節(jié)點(diǎn)輸出緩沖區(qū)的數(shù)據(jù) 輸出;當(dāng)終止任務(wù)節(jié)點(diǎn)標(biāo)識(shí)為完成時(shí),內(nèi)存釋放模塊1003關(guān)閉所有任務(wù)節(jié)點(diǎn)的處理線程, 釋放內(nèi)存。 由上可知,本發(fā)明實(shí)施例采用流水線式處理行集數(shù)據(jù),以單數(shù)據(jù)行作為處理單位, 每一行數(shù)據(jù)處理完畢,立即輸出到中繼任務(wù)節(jié)點(diǎn),不必等待所有數(shù)據(jù)行處理完畢,其帶來的 有益效果如下
      1 :在終止任務(wù)節(jié)點(diǎn)很快則會(huì)得到部分輸出的行數(shù)據(jù),提高了數(shù)據(jù)處理的響應(yīng)速度。 2 :由于數(shù)據(jù)處理過程中只涉及行數(shù)據(jù),只需要申請(qǐng)更小的內(nèi)存塊,對(duì)系統(tǒng)內(nèi)存的 要求更低、使用率更高。 3 :在處理處理時(shí),分配的內(nèi)存不需要是大塊內(nèi)存,處理完成的數(shù)據(jù)行在往后輸出 后,立即釋放內(nèi)存,也不會(huì)占用更多的內(nèi)存。 4:由于數(shù)據(jù)是行式的,可以將任務(wù)節(jié)點(diǎn)拆分成多個(gè)任務(wù),每個(gè)任務(wù)的輸出后繼可
      以是多個(gè)拆分形成的任務(wù)節(jié)點(diǎn),每個(gè)任務(wù)也可以有多個(gè)前繼拆分形成的任務(wù)節(jié)點(diǎn),這樣,就
      可以將處理的壓力分散到多個(gè)任務(wù)節(jié)點(diǎn),提高了數(shù)據(jù)的處理量,使得處理系統(tǒng)具有更好的
      伸縮性,從而通過擴(kuò)充CPU和其它硬件來加快處理的速度,具有很好的擴(kuò)展性。 本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分步驟是可以
      通過程序來指令相關(guān)的硬件來完成,所述的程序可以在存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)
      中,所述的存儲(chǔ)介質(zhì),如R0M/RAM、磁盤、光盤等。 以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精 神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
      8
      權(quán)利要求
      一種行集數(shù)據(jù)的處理方法,其特征在于,所述方法包括以下步驟將待處理的行集數(shù)據(jù)傳入起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū);從所述輸入緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至中轉(zhuǎn)緩沖區(qū);當(dāng)存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至下一個(gè)中轉(zhuǎn)緩沖區(qū),以此類推;當(dāng)不存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至終止任務(wù)節(jié)點(diǎn)的輸出緩沖區(qū);將終止任務(wù)節(jié)點(diǎn)輸出緩沖區(qū)的數(shù)據(jù)輸出。
      2. 如權(quán)利要求1所述的方法,其特征在于,所述方法還包括以下步驟 為數(shù)據(jù)處理任務(wù)流中的所有任務(wù)節(jié)點(diǎn)均開啟一個(gè)處理線程。
      3. 如權(quán)利要求1所述的方法,其特征在于,所述方法還包括以下步驟 設(shè)置起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū); 設(shè)置每個(gè)中繼任務(wù)節(jié)點(diǎn)的中轉(zhuǎn)緩沖區(qū);設(shè)置終止任務(wù)節(jié)點(diǎn)的輸出緩沖區(qū)。
      4. 如權(quán)利要求1所述的方法,其特征在于,所述方法還包括以下步驟 當(dāng)處理完一行數(shù)據(jù)后,將其從起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū)中清除。
      5. 如權(quán)利要求2所述的方法,其特征在于,所述方法還包括以下步驟 當(dāng)終止任務(wù)節(jié)點(diǎn)標(biāo)識(shí)為完成時(shí),關(guān)閉所有任務(wù)節(jié)點(diǎn)的處理線程,釋放內(nèi)存。
      6. —種行集數(shù)據(jù)的處理裝置,其特征在于,所述裝置包括 輸入緩沖區(qū),作為起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū); 多個(gè)中轉(zhuǎn)緩沖區(qū),作為每個(gè)中繼任務(wù)節(jié)點(diǎn)的中轉(zhuǎn)緩沖區(qū); 輸出緩沖區(qū),作為終止任務(wù)節(jié)點(diǎn)的輸出緩沖區(qū);數(shù)據(jù)傳輸模塊,用于將待處理的行集數(shù)據(jù)傳入起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū); 多個(gè)處理線程,用于從所述輸入緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳 輸至中轉(zhuǎn)緩沖區(qū);當(dāng)存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行 處理,將處理完的數(shù)據(jù)傳輸至下一個(gè)中轉(zhuǎn)緩沖區(qū),以此類推;當(dāng)不存在下一個(gè)中繼任務(wù)節(jié)點(diǎn) 時(shí),從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至終止任務(wù)節(jié)點(diǎn)的 輸出緩沖區(qū);數(shù)據(jù)輸出模塊,用于將終止任務(wù)節(jié)點(diǎn)輸出緩沖區(qū)的數(shù)據(jù)輸出。
      7. 如權(quán)利要求6所述的裝置,其特征在于,所述裝置還包括處理線程開啟模塊,用于為數(shù)據(jù)處理任務(wù)流中的所有任務(wù)節(jié)點(diǎn)均開啟一個(gè)處理線程。
      8. 如權(quán)利要求6所述的裝置,其特征在于,所述裝置還包括數(shù)據(jù)清除模塊,用于當(dāng)處理完一行數(shù)據(jù)后,將其從起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū)中清除。
      9. 如權(quán)利要求7所述的裝置,其特征在于,所述裝置還包括內(nèi)存釋放模塊,用于當(dāng)終止任務(wù)節(jié)點(diǎn)標(biāo)識(shí)為完成時(shí),關(guān)閉所有任務(wù)節(jié)點(diǎn)的處理線程,釋 放內(nèi)存。
      10. —種包括權(quán)利要求6至9任一項(xiàng)所述的行集數(shù)據(jù)的處理裝置的數(shù)據(jù)處理系統(tǒng)。
      全文摘要
      本發(fā)明適用于數(shù)據(jù)處理技術(shù)領(lǐng)域,提供了一種行集數(shù)據(jù)的處理方法、裝置及數(shù)據(jù)處理系統(tǒng)。所述方法包括以下步驟將待處理的行集數(shù)據(jù)傳入起始任務(wù)節(jié)點(diǎn)的輸入緩沖區(qū);從所述輸入緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至中轉(zhuǎn)緩沖區(qū);當(dāng)存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至下一個(gè)中轉(zhuǎn)緩沖區(qū),以此類推;當(dāng)不存在下一個(gè)中繼任務(wù)節(jié)點(diǎn)時(shí),從當(dāng)前中轉(zhuǎn)緩沖區(qū)中逐行取出數(shù)據(jù)進(jìn)行處理,將處理完的數(shù)據(jù)傳輸至終止任務(wù)節(jié)點(diǎn)的輸出緩沖區(qū);將終止任務(wù)節(jié)點(diǎn)輸出緩沖區(qū)的數(shù)據(jù)輸出。本發(fā)明提高了數(shù)據(jù)處理的響應(yīng)速度、且處理數(shù)據(jù)時(shí)無需占用更多內(nèi)存。
      文檔編號(hào)G06F9/46GK101714099SQ200910189019
      公開日2010年5月26日 申請(qǐng)日期2009年12月16日 優(yōu)先權(quán)日2009年12月16日
      發(fā)明者鄭學(xué)明 申請(qǐng)人:金蝶軟件(中國)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1