專利名稱:數(shù)據(jù)分配裝置和數(shù)據(jù)分配方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,具體而言,涉及一種數(shù)據(jù)分配裝置和一種數(shù)據(jù)分配方法。
背景技術(shù):
在信息系統(tǒng)應(yīng)用中,數(shù)據(jù)的分配是一項(xiàng)重要的、復(fù)雜的工作,因此,一種高效的、自動(dòng)化程度高的數(shù)據(jù)分配模型和方法具有廣闊的應(yīng)用場(chǎng)景。目前數(shù)據(jù)分配在信息系統(tǒng)中有如下幾種實(shí)現(xiàn)方式I、只支持一級(jí)分配,即數(shù)據(jù)歸集到發(fā)送方,然后從發(fā)送方分配到接收方;
2、支持多級(jí)分配,但在多級(jí)分配時(shí),需要手工指定分配的順序;雖然上述的幾種實(shí)現(xiàn)方式都能支持?jǐn)?shù)據(jù)的分配,但都存在一些不足在第一種方式中,需要手工處理一部分發(fā)送方到接收方的數(shù)據(jù)分配,工作量非常大。而第二種方式雖然支持了多級(jí)分配,但需要手工指定分配的順序,而且數(shù)據(jù)分配的效率很低。因此,需要一種新的數(shù)據(jù)分配技術(shù),能夠提高數(shù)據(jù)分配的效率和自動(dòng)化程度,便于人工操作。
發(fā)明內(nèi)容
本發(fā)明正是基于上述問(wèn)題,提出了一種數(shù)據(jù)分配技術(shù),能夠提高數(shù)據(jù)分配的效率和自動(dòng)化程度,便于人工操作。有鑒于此,本發(fā)明提出了一種數(shù)據(jù)分配裝置,包括節(jié)點(diǎn)選擇單元,用于根據(jù)預(yù)設(shè)的多個(gè)數(shù)據(jù)節(jié)點(diǎn)之間的數(shù)據(jù)收發(fā)關(guān)系,從所述多個(gè)數(shù)據(jù)節(jié)點(diǎn)中選擇僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn);數(shù)據(jù)發(fā)送單元,用于根據(jù)所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)收發(fā)關(guān)系,將所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)的數(shù)據(jù)發(fā)送至相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn);過(guò)濾單元,用于從所述多個(gè)數(shù)據(jù)節(jié)點(diǎn)中過(guò)濾掉所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)。在該技術(shù)方案中,可以從多個(gè)數(shù)據(jù)節(jié)點(diǎn)中選擇僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)作為數(shù)據(jù)發(fā)送的第一級(jí)起始點(diǎn),再?gòu)倪@些第一級(jí)起始點(diǎn)開始分配數(shù)據(jù),由于數(shù)據(jù)發(fā)送方和接收方的關(guān)系是預(yù)先設(shè)定的,所以數(shù)據(jù)可以按照預(yù)設(shè)的分配關(guān)系從第一級(jí)起始點(diǎn)分配至第一級(jí)起始點(diǎn)的接收方。完成第一級(jí)分配后,若多個(gè)數(shù)據(jù)節(jié)點(diǎn)間還存在數(shù)據(jù)收發(fā)關(guān)系,則將第一級(jí)起始點(diǎn)過(guò)濾掉,并從剩余的多個(gè)數(shù)據(jù)節(jié)點(diǎn)中選擇僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)作為數(shù)據(jù)發(fā)送的第二級(jí)起始點(diǎn),并重復(fù)上述步驟,直至多個(gè)數(shù)據(jù)節(jié)點(diǎn)間不存在數(shù)據(jù)收發(fā)關(guān)系為止,則完成了多個(gè)數(shù)據(jù)節(jié)點(diǎn)之間的數(shù)據(jù)分配。通過(guò)這種數(shù)據(jù)分配方式,能夠?qū)崿F(xiàn)自動(dòng)化的分配,使多級(jí)分配無(wú)需人工確認(rèn)分配順序,極大地提高了數(shù)據(jù)分配效率,方便用戶操作。在上述技術(shù)方案中,優(yōu)選地,所述節(jié)點(diǎn)選擇單元包括存儲(chǔ)子單元,用于按所述多個(gè)數(shù)據(jù)節(jié)點(diǎn)之間的數(shù)據(jù)收發(fā)關(guān)系,將所述多個(gè)數(shù)據(jù)節(jié)點(diǎn)中作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)以及相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn),對(duì)應(yīng)地存儲(chǔ)至第一數(shù)據(jù)表中,以及,將所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)存儲(chǔ)到第二數(shù)據(jù)表中;查詢子單元,用于根據(jù)所述第一數(shù)據(jù)表查詢到所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)。在上述技術(shù)方案中,優(yōu)選地,所述數(shù)據(jù)發(fā)送單元用于,根據(jù)所述第一數(shù)據(jù)表和所述第二數(shù)據(jù)表,將所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)的數(shù)據(jù)發(fā)送至相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn)。
在上述技術(shù)方案中,優(yōu)選地,所述過(guò)濾單元用于,從所述第一數(shù)據(jù)表中過(guò)濾掉同時(shí)存儲(chǔ)在所述第二數(shù)據(jù)表中的所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn),以及在過(guò)濾操作完成后清空所述第二數(shù)據(jù)表。在該技術(shù)方案中,數(shù)據(jù)的分配路徑可以抽象為一個(gè)有向無(wú)環(huán)圖,通過(guò)采用中間表的方式實(shí)現(xiàn)該有向圖的拓?fù)渑判?,進(jìn)而處理數(shù)據(jù)分配,可以避免將待分配數(shù)據(jù)全部加載到內(nèi)存中,從而減少內(nèi)存的消耗,并且能夠?qū)崿F(xiàn)數(shù)據(jù)分配的批量處理和批量釋放,提高了數(shù)據(jù)分配的效率。在上述任一技術(shù)方案中,優(yōu)選地,所述數(shù)據(jù)發(fā)送單元還用于,根據(jù)預(yù)設(shè)的所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)對(duì)應(yīng)的待分配數(shù)據(jù)類型和相應(yīng)的分配方法,將所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)的數(shù)據(jù)發(fā)送至相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn)。在該技術(shù)方案中,一個(gè)數(shù)據(jù)發(fā)送方有多種待分配類型,每一種待分配類型可以對(duì)應(yīng)不同的分配方法,在數(shù)據(jù)分配前,已經(jīng)設(shè)置每種待分配數(shù)據(jù)的待分配類型和相應(yīng)的分配方法,所以“數(shù)據(jù)發(fā)送方”和“待分配數(shù)據(jù)類型及分配方法”是組合關(guān)系,而“數(shù)據(jù)發(fā)送方”和“數(shù)據(jù)接受方”也是組合關(guān)系,這兩對(duì)組合關(guān)系確定了數(shù)據(jù)分配的具體路徑,由于數(shù)據(jù)發(fā)送方和數(shù)據(jù)接受方是固定的,因此可以根據(jù)待分配數(shù)據(jù)類型和相應(yīng)的分配方法確定數(shù)據(jù)分配的路徑。根據(jù)本發(fā)明的又一方面,還提出了一種數(shù)據(jù)分配方法,包括步驟202,根據(jù)預(yù)設(shè)的多個(gè)數(shù)據(jù)節(jié)點(diǎn)之間的數(shù)據(jù)收發(fā)關(guān)系,從所述多個(gè)數(shù)據(jù)節(jié)點(diǎn)中選擇僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn);步驟204,根據(jù)所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)收發(fā)關(guān)系,將所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)的數(shù)據(jù)發(fā)送至相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn);步驟206,從所述多個(gè)數(shù)據(jù)節(jié)點(diǎn)中過(guò)濾掉所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn),并返回步驟202,直至所述多個(gè)數(shù)據(jù)節(jié)點(diǎn)之間不存在數(shù)據(jù)收發(fā)關(guān)系。在該技術(shù)方案中,可以從多個(gè)數(shù)據(jù)節(jié)點(diǎn)中選擇僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)作為數(shù)據(jù)發(fā)送的第一級(jí)起始點(diǎn),再?gòu)倪@些第一級(jí)起始點(diǎn)開始分配數(shù)據(jù),由于數(shù)據(jù)發(fā)送方和接收方的關(guān)系是預(yù)先設(shè)定的,所以數(shù)據(jù)可以按照預(yù)設(shè)的分配關(guān)系從第一級(jí)起始點(diǎn)分配至第一級(jí)起始點(diǎn)的接收方。完成第一級(jí)分配后,若多個(gè)數(shù)據(jù)節(jié)點(diǎn)間還存在數(shù)據(jù)收發(fā)關(guān)系,則將第一級(jí)起始點(diǎn)過(guò)濾掉,并從剩余的多個(gè)數(shù)據(jù)節(jié)點(diǎn)中選擇僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)作為數(shù)據(jù)發(fā)送的第二級(jí)起始點(diǎn),并重復(fù)上述步驟,直至多個(gè)數(shù)據(jù)節(jié)點(diǎn)間不存在數(shù)據(jù)收發(fā)關(guān)系為止,則完成了多個(gè)數(shù)據(jù)節(jié)點(diǎn)之間的數(shù)據(jù)分配。通過(guò)這種數(shù)據(jù)分配方式,能夠?qū)崿F(xiàn)自動(dòng)化的分配,使多級(jí)分配無(wú)需人工確認(rèn)分配順序,極大地提高了數(shù)據(jù)分配效率,方便用戶操作。在上述技術(shù)方案中,優(yōu)選地,所述步驟202包括步驟2022,按所述多個(gè)數(shù)據(jù)節(jié)點(diǎn)之間的數(shù)據(jù)收發(fā)關(guān)系,將所述多個(gè)數(shù)據(jù)節(jié)點(diǎn)中作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)以及相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn),對(duì)應(yīng)地存儲(chǔ)至第一數(shù)據(jù)表中;步驟2024,根據(jù)所述第一數(shù)據(jù)表查詢到所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn),以及將所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)存儲(chǔ)到第二數(shù)據(jù)表中。在上述技術(shù)方案中,優(yōu)選地,所述步驟204包括根據(jù)所述第一數(shù)據(jù)表和所述第二數(shù)據(jù)表,將所 述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)的數(shù)據(jù)發(fā)送至相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn)。在上述技術(shù)方案中,優(yōu)選地,所述步驟206包括從所述第一數(shù)據(jù)表中過(guò)濾掉同時(shí)存儲(chǔ)在所述第二數(shù)據(jù)表中的所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn),并在過(guò)濾完成后清空所述第二數(shù)據(jù)表。在該技術(shù)方案中,數(shù)據(jù)的分配路徑可以抽象為一個(gè)有向無(wú)環(huán)圖,通過(guò)采用中間表的方式實(shí)現(xiàn)該有向圖的拓?fù)渑判颍M(jìn)而處理數(shù)據(jù)分配,可以避免將待分配數(shù)據(jù)全部加載到內(nèi)存中,從而減少內(nèi)存的消耗,并且能夠?qū)崿F(xiàn)數(shù)據(jù)分配的批量處理和批量釋放,提高了數(shù)據(jù)分配的效率。在上述任一技術(shù)方案中,優(yōu)選地,所述步驟204包括根據(jù)預(yù)設(shè)的所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)對(duì)應(yīng)的待分配數(shù)據(jù)類型和相應(yīng)的分配方法,將所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)的數(shù)據(jù)發(fā)送至相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn)。在該技術(shù)方案中,一個(gè)數(shù)據(jù)發(fā)送方有多種待分配類型,每一種待分配類型可以對(duì)應(yīng)不同的分配方法,在數(shù)據(jù)分配前,已經(jīng)設(shè)置每種待分配數(shù)據(jù)的待分配類型和相應(yīng)的分配方法,所以“數(shù)據(jù)發(fā)送方”和“待分配數(shù)據(jù)類型及分配方法”是組合關(guān)系,而“數(shù)據(jù)發(fā)送方”和“數(shù)據(jù)接受方”也是組合關(guān)系,這兩對(duì)組合關(guān)系確定了數(shù)據(jù)分配的具體路徑,由于數(shù)據(jù)發(fā)送方和數(shù)據(jù)接受方是固定的,因此可以根據(jù)待分配數(shù)據(jù)類型和相應(yīng)的分配方法確定數(shù)據(jù)分配的路徑。通過(guò)以上技術(shù)方案,能夠提高數(shù)據(jù)分配的效率和自動(dòng)化程度,便于人工操作。
圖I示出了根據(jù)本發(fā)明的實(shí)施例的數(shù)據(jù)分配裝置的框圖;圖2示出了根據(jù)本發(fā)明的實(shí)施例的數(shù)據(jù)分配方法的流程圖;圖3示出了根據(jù)本發(fā)明的實(shí)施例的存儲(chǔ)模型的示意圖;圖4A和圖4B示出了根據(jù)本發(fā)明的實(shí)施例的自動(dòng)分配算法的示意圖;圖5示出了根據(jù)本發(fā)明的實(shí)施例的中間表的示意圖;圖6示出了根據(jù)本發(fā)明的實(shí)施例的數(shù)據(jù)分配方法的具體流程圖。
具體實(shí)施例方式為了能夠更清楚地理解本發(fā)明的上述目的、特征和優(yōu)點(diǎn),下面結(jié)合附圖和具體實(shí)施方式
對(duì)本發(fā)明進(jìn)行進(jìn)一步的詳細(xì)描述。需要說(shuō)明的是,在不沖突的情況下,本申請(qǐng)的實(shí)施例及實(shí)施例中的特征可以相互組合。在下面的描述中闡述了很多具體細(xì)節(jié)以便于充分理解本發(fā)明,但是,本發(fā)明還可以采用其他不同于在此描述的其他方式來(lái)實(shí)施,因此,本發(fā)明的保護(hù)范圍并不受下面公開的具體實(shí)施例的限制。圖I示出了根據(jù)本發(fā)明的實(shí)施例的數(shù)據(jù)分配裝置的框圖。
如圖I所示,根據(jù)本發(fā)明的實(shí)施例的數(shù)據(jù)分配裝置100包括節(jié)點(diǎn)選擇單元102,用于根據(jù)預(yù)設(shè)的多個(gè)數(shù)據(jù)節(jié)點(diǎn)之間的數(shù)據(jù)收發(fā)關(guān)系,從多個(gè)數(shù)據(jù)節(jié)點(diǎn)中選擇僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn);數(shù)據(jù)發(fā)送單元104,用于根據(jù)僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)收發(fā)關(guān)系,將僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)的數(shù)據(jù)發(fā)送至相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn);過(guò)濾單元106,用于從多個(gè)數(shù)據(jù)節(jié)點(diǎn)中過(guò)濾掉僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)??梢詮亩鄠€(gè)數(shù)據(jù)節(jié)點(diǎn)中選擇僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)作為數(shù)據(jù)發(fā)送的第一級(jí)起始點(diǎn),再?gòu)倪@些第一級(jí)起始點(diǎn)開始分配數(shù)據(jù),由于數(shù)據(jù)發(fā)送方和接收方的關(guān)系是預(yù)先設(shè)定的,所以數(shù)據(jù)可以按照預(yù)設(shè)的分配關(guān)系從第一級(jí)起始點(diǎn)分配至第一級(jí)起始點(diǎn)的接收方。完成第一級(jí)分配后,若多個(gè)數(shù)據(jù)節(jié)點(diǎn)間還存在數(shù)據(jù)收發(fā)關(guān)系,則將第一級(jí)起始點(diǎn)過(guò)濾掉,并從剩余的多個(gè)數(shù)據(jù)節(jié)點(diǎn)中選擇僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)作為數(shù)據(jù)發(fā)送的第二級(jí)起始點(diǎn),并重復(fù)上述步驟,直至多個(gè)數(shù)據(jù)節(jié)點(diǎn)間不存在數(shù)據(jù)收發(fā)關(guān)系為止,則完成了多個(gè)數(shù)據(jù)節(jié)點(diǎn)之間的數(shù)據(jù)分配。
通過(guò)這種數(shù)據(jù)分配方式,能夠?qū)崿F(xiàn)自動(dòng)化的分配,使多級(jí)分配無(wú)需人工確認(rèn)分配順序,極大地提高了數(shù)據(jù)分配效率,方便用戶操作。優(yōu)選地,節(jié)點(diǎn)選擇單元102包括存儲(chǔ)子單元1022,用于按多個(gè)數(shù)據(jù)節(jié)點(diǎn)之間的數(shù)據(jù)收發(fā)關(guān)系,將多個(gè)數(shù)據(jù)節(jié)點(diǎn)中作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)以及相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn),對(duì)應(yīng)地存儲(chǔ)至第一數(shù)據(jù)表中,以及,將僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)存儲(chǔ)到第二數(shù)據(jù)表中;查詢子單元1024,用于根據(jù)第一數(shù)據(jù)表查詢到僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)。優(yōu)選地,數(shù)據(jù)發(fā)送單元104用于,根據(jù)第一數(shù)據(jù)表和第二數(shù)據(jù)表,將僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)的數(shù)據(jù)發(fā)送至相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn)。優(yōu)選地,過(guò)濾單元106用于,從第一數(shù)據(jù)表中過(guò)濾掉同時(shí)存儲(chǔ)在第二數(shù)據(jù)表中的僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn),以及在過(guò)濾操作完成后清空第二數(shù)據(jù)表。數(shù)據(jù)的分配路徑可以抽象為一個(gè)有向無(wú)環(huán)圖,通過(guò)采用中間表的方式實(shí)現(xiàn)該有向圖的拓?fù)渑判?,進(jìn)而處理數(shù)據(jù)分配,可以避免將待分配數(shù)據(jù)全部加載到內(nèi)存中,從而減少內(nèi)存的消耗,并且能夠?qū)崿F(xiàn)數(shù)據(jù)分配的批量處理和批量釋放,提高了數(shù)據(jù)分配的效率。優(yōu)選地,數(shù)據(jù)發(fā)送單元104還用于,根據(jù)預(yù)設(shè)的僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)對(duì)應(yīng)的待分配數(shù)據(jù)類型和相應(yīng)的分配方法,將僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)的數(shù)據(jù)發(fā)送至相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn)。一個(gè)數(shù)據(jù)發(fā)送方有多種待分配類型,每一種待分配類型可以對(duì)應(yīng)不同的分配方法,在數(shù)據(jù)分配前,已經(jīng)設(shè)置每種待分配數(shù)據(jù)的待分配類型和相應(yīng)的分配方法,所以“數(shù)據(jù)發(fā)送方”和“待分配數(shù)據(jù)類型及分配方法”是組合關(guān)系,而“數(shù)據(jù)發(fā)送方”和“數(shù)據(jù)接受方”也是組合關(guān)系,這兩對(duì)組合關(guān)系確定了數(shù)據(jù)分配的具體路徑,由于數(shù)據(jù)發(fā)送方和數(shù)據(jù)接受方是固定的,因此可以根據(jù)待分配數(shù)據(jù)類型和相應(yīng)的分配方法確定數(shù)據(jù)分配的路徑。圖2示出了根據(jù)本發(fā)明的實(shí)施例的數(shù)據(jù)分配方法的流程圖。如圖2所示,根據(jù)本發(fā)明的實(shí)施例的數(shù)據(jù)分配方法包括步驟202,根據(jù)預(yù)設(shè)的多個(gè)數(shù)據(jù)節(jié)點(diǎn)之間的數(shù)據(jù)收發(fā)關(guān)系,從多個(gè)數(shù)據(jù)節(jié)點(diǎn)中選擇僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn);步驟204,根據(jù)僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)收發(fā)關(guān)系,將僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)的數(shù)據(jù)發(fā)送至相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn);步驟206,從多個(gè)數(shù)據(jù)節(jié)點(diǎn)中過(guò)濾掉僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn),并返回步驟202,直至多個(gè)數(shù)據(jù)節(jié)點(diǎn)之間不存在數(shù)據(jù)收發(fā)關(guān)系。
可以從多個(gè)數(shù)據(jù)節(jié)點(diǎn)中選擇僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)作為數(shù)據(jù)發(fā)送的第一級(jí)起始點(diǎn),再?gòu)倪@些第一級(jí)起始點(diǎn)開始分配數(shù)據(jù),由于數(shù)據(jù)發(fā)送方和接收方的關(guān)系是預(yù)先設(shè)定的,所以數(shù)據(jù)可以按照預(yù)設(shè)的分配關(guān)系從第一級(jí)起始點(diǎn)分配至第一級(jí)起始點(diǎn)的接收方。完成第一級(jí)分配后,若多個(gè)數(shù)據(jù)節(jié)點(diǎn)間還存在數(shù)據(jù)收發(fā)關(guān)系,則將第一節(jié)起始點(diǎn)過(guò)濾掉,并從剩余的多個(gè)數(shù)據(jù)節(jié)點(diǎn)中選擇僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)作為數(shù)據(jù)發(fā)送的第二級(jí)起始點(diǎn),并重復(fù)上述步驟,直至多個(gè)數(shù)據(jù)節(jié)點(diǎn)間不存在數(shù)據(jù)收發(fā)關(guān)系為止,則完成了多個(gè)數(shù)據(jù)節(jié)點(diǎn)之間的數(shù)據(jù)分配。通過(guò)這種數(shù)據(jù)分配方式,能夠?qū)崿F(xiàn)自動(dòng)化的分配,使多級(jí)分配無(wú)需人工確認(rèn)分配順序,極大地提高了數(shù)據(jù)分配效率,方便用戶操作。優(yōu)選地,步驟202包括步驟2022,按多個(gè)數(shù)據(jù)節(jié)點(diǎn)之間的數(shù)據(jù)收發(fā)關(guān)系,將多個(gè)數(shù)據(jù)節(jié)點(diǎn)中作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)以及相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn),對(duì)應(yīng)地存儲(chǔ)至第一數(shù)據(jù)表中;步驟2024,根據(jù)第一數(shù)據(jù)表查詢到僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn),以及將僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)存儲(chǔ)到第二數(shù)據(jù)表中。優(yōu)選地,步驟204包括根據(jù)第一數(shù)據(jù)表和第二數(shù)據(jù)表,將僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)的數(shù)據(jù)發(fā)送至相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn)。優(yōu)選地,步驟206包括從第一數(shù)據(jù)表中過(guò)濾掉同時(shí)存儲(chǔ)在第二數(shù)據(jù)表中的僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn),并在過(guò)濾完成后清空第二數(shù)據(jù)表。數(shù)據(jù)的分配路徑可以抽象為一個(gè)有向無(wú)環(huán)圖,通過(guò)采用中間表的方式實(shí)現(xiàn)該有向圖的拓?fù)渑判?,進(jìn)而處理數(shù)據(jù)分配,可以避免將待分配數(shù)據(jù)全部加載到內(nèi)存中,從而減少內(nèi)存的消耗,并且能夠?qū)崿F(xiàn)數(shù)據(jù)分配的批量處理和批量釋放,提高了數(shù)據(jù)分配的效率。優(yōu)選地,步驟204包括根據(jù)預(yù)設(shè)的僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)對(duì)應(yīng)的待分配數(shù)據(jù)類型和相應(yīng)的分配方法,將僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)的數(shù)據(jù)發(fā)送至相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn)。在該技術(shù)方案中,一個(gè)數(shù)據(jù)發(fā)送方有多種待分配類型,每一種待分配類型可以對(duì)應(yīng)不同的分配方法,在數(shù)據(jù)分配前,已經(jīng)設(shè)置每種待分配數(shù)據(jù)的待分配類型和相應(yīng)的分配方法,所以“數(shù)據(jù)發(fā)送方”和“待分配數(shù)據(jù)類型及分配方法”是組合關(guān)系,而“數(shù)據(jù)發(fā)送方”和“數(shù)據(jù)接受方”也是組合關(guān)系,這兩對(duì)組合關(guān)系確定了數(shù)據(jù)分配的具體路徑,由于數(shù)據(jù)發(fā)送方和數(shù)據(jù)接受方是固定的,因此可以根據(jù)待分配數(shù)據(jù)類型和相應(yīng)的分配方法確定數(shù)據(jù)分配的路徑。圖3示出了根據(jù)本發(fā)明的實(shí)施例的存儲(chǔ)模型的示意圖?!?br>
如圖3所示,根據(jù)本發(fā)明的實(shí)施例的存儲(chǔ)模型中,數(shù)據(jù)發(fā)送方302和待分配數(shù)據(jù)類型及分配方法306是組合關(guān)系,一個(gè)數(shù)據(jù)發(fā)送方有多個(gè)待分配數(shù)據(jù)類型,每一種待分配數(shù)據(jù)類型又可以選擇不同的分配方法,設(shè)置非常靈活。數(shù)據(jù)發(fā)送方302和數(shù)據(jù)接收方304也是組合關(guān)系,一個(gè)數(shù)據(jù)發(fā)送方可以有多個(gè)數(shù)據(jù)接收方,每個(gè)接收方的受益權(quán)重由分配方法確定。這兩對(duì)組合關(guān)系組成了一個(gè)數(shù)據(jù)分配路徑,實(shí)現(xiàn)了多數(shù)據(jù)類型、多級(jí)次、多分配方法的分配數(shù)據(jù)存儲(chǔ)模型。圖4A和圖4B示出了根據(jù)本發(fā)明的實(shí)施例的自動(dòng)分配算法的示意圖。根據(jù)本發(fā)明的實(shí)施例的數(shù)據(jù)分配方法可以通過(guò)如圖4A和圖4B所示的分配存儲(chǔ)模
型表示。
如圖4A所示,在上文描述的數(shù)據(jù)分配方法中,分配路徑實(shí)際上是一個(gè)有向無(wú)環(huán)圖,其中,節(jié)點(diǎn)々1、81、82、83、(1、02、03、01、02、03分別是數(shù)據(jù)分配過(guò)程中的數(shù)據(jù)接受方和
/或數(shù)據(jù)發(fā)送方。根據(jù)本發(fā)明的實(shí)施例的自動(dòng)分配算法中,設(shè)以某個(gè)節(jié)點(diǎn)為終點(diǎn)的線段數(shù)目為該節(jié)點(diǎn)的入度,在分配過(guò)程中,首先查找入度為O的節(jié)點(diǎn),即Al,然后將Al加入運(yùn)算隊(duì)列,對(duì)Al的數(shù)據(jù)進(jìn)行分配,完成對(duì)Al的處理后,刪除節(jié)點(diǎn)Al和以Al為終點(diǎn)的線段,如圖4B所示,繼續(xù)查找入度為O的節(jié)點(diǎn),即81、82、83,然后將則、82、83加入運(yùn)算隊(duì)列,對(duì)BI、B2、B3的數(shù)據(jù)進(jìn)行分配,而此時(shí)已經(jīng)沒(méi)有以B2或B3為起點(diǎn)的線段了,說(shuō)明B2和B3作為數(shù)據(jù)接受方,已經(jīng)完成了數(shù)據(jù)分配,則刪除節(jié)點(diǎn)B2和B3,僅對(duì)BI的數(shù)據(jù)進(jìn)行分配,完成對(duì)BI的處理后,刪除節(jié)點(diǎn)BI和以BI為終點(diǎn)的線段,依此類推,直至剩下D1、D2、D3,即節(jié)點(diǎn)之間不存在數(shù)據(jù)收發(fā)關(guān)系,則判定完成了數(shù)據(jù)分配。圖5示出了根據(jù)本發(fā)明的實(shí)施例的中間表的示意圖。 實(shí)現(xiàn)如圖4A所示的有向圖拓?fù)渑判虻某S梅椒ㄊ鞘褂绵徑颖?,鄰接表的結(jié)構(gòu)如下所示,
權(quán)利要求
1.一種數(shù)據(jù)分配裝置,其特征在于,包括 節(jié)點(diǎn)選擇單元,用于根據(jù)預(yù)設(shè)的多個(gè)數(shù)據(jù)節(jié)點(diǎn)之間的數(shù)據(jù)收發(fā)關(guān)系,從所述多個(gè)數(shù)據(jù)節(jié)點(diǎn)中選擇僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn); 數(shù)據(jù)發(fā)送單元,用于根據(jù)所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)收發(fā)關(guān)系,將所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)的數(shù)據(jù)發(fā)送至相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn); 過(guò)濾單元,用于從所述多個(gè)數(shù)據(jù)節(jié)點(diǎn)中過(guò)濾掉所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)。
2.根據(jù)權(quán)利要求I所述的數(shù)據(jù)分配裝置,其特征在于,所述節(jié)點(diǎn)選擇單元包括 存儲(chǔ)子單元,用于按所述多個(gè)數(shù)據(jù)節(jié)點(diǎn)之間的數(shù)據(jù)收發(fā)關(guān)系,將所述多個(gè)數(shù)據(jù)節(jié)點(diǎn)中作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)以及相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn),對(duì)應(yīng)地存儲(chǔ)至第一數(shù)據(jù)表中,以及,將所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)存儲(chǔ)到第二數(shù)據(jù)表中; 查詢子單元,用于根據(jù)所述第一數(shù)據(jù)表查詢到所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)。
3.根據(jù)權(quán)利要求2所述的數(shù)據(jù)分配裝置,其特征在于,所述數(shù)據(jù)發(fā)送單元用于,根據(jù)所述第一數(shù)據(jù)表和所述第二數(shù)據(jù)表,將所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)的數(shù)據(jù)發(fā)送至相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn)。
4.根據(jù)權(quán)利要求3所述的數(shù)據(jù)分配裝置,其特征在于,所述過(guò)濾單元用于,從所述第一數(shù)據(jù)表中過(guò)濾掉同時(shí)存儲(chǔ)在所述第二數(shù)據(jù)表中的所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn),以及在過(guò)濾操作完成后清空所述第二數(shù)據(jù)表。
5.根據(jù)權(quán)利要求I至4中任一項(xiàng)所述的數(shù)據(jù)分配裝置,其特征在于,所述數(shù)據(jù)發(fā)送單元還用于,根據(jù)預(yù)設(shè)的所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)對(duì)應(yīng)的待分配數(shù)據(jù)類型和相應(yīng)的分配方法,將所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)的數(shù)據(jù)發(fā)送至相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn)。
6.一種數(shù)據(jù)分配方法,其特征在于,包括 步驟202,根據(jù)預(yù)設(shè)的多個(gè)數(shù)據(jù)節(jié)點(diǎn)之間的數(shù)據(jù)收發(fā)關(guān)系,從所述多個(gè)數(shù)據(jù)節(jié)點(diǎn)中選擇僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn); 步驟204,根據(jù)所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)收發(fā)關(guān)系,將所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)的數(shù)據(jù)發(fā)送至相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn); 步驟206,從所述多個(gè)數(shù)據(jù)節(jié)點(diǎn)中過(guò)濾掉所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn),并返回步驟202,直至所述多個(gè)數(shù)據(jù)節(jié)點(diǎn)之間不存在數(shù)據(jù)收發(fā)關(guān)系。
7.根據(jù)權(quán)利要求6所述的數(shù)據(jù)分配方法,其特征在于,所述步驟202包括 步驟2022,按所述多個(gè)數(shù)據(jù)節(jié)點(diǎn)之間的數(shù)據(jù)收發(fā)關(guān)系,將所述多個(gè)數(shù)據(jù)節(jié)點(diǎn)中作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)以及相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn),對(duì)應(yīng)地存儲(chǔ)至第一數(shù)據(jù)表中; 步驟2024,根據(jù)所述第一數(shù)據(jù)表查詢到所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn),以及將所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)存儲(chǔ)到第二數(shù)據(jù)表中。
8.根據(jù)權(quán)利要求7所述的數(shù)據(jù)分配方法,其特征在于,所述步驟204包括根據(jù)所述第一數(shù)據(jù)表和所述第二數(shù)據(jù)表,將所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)的數(shù)據(jù)發(fā)送至相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn)。
9.根據(jù)權(quán)利要求8所述的數(shù)據(jù)分配方法,其特征在于,所述步驟206包括從所述第一數(shù)據(jù)表中過(guò)濾掉同時(shí)存儲(chǔ)在所述第二數(shù)據(jù)表中的所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn),并在過(guò)濾完成后清空所述第二數(shù)據(jù)表。
10.根據(jù)權(quán)利要求6至9中任一項(xiàng)所述的數(shù)據(jù)分配方法,其特征在于,所述步驟204包括 根據(jù)預(yù)設(shè)的所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)對(duì)應(yīng)的待分配數(shù)據(jù)類型和相應(yīng)的分配方法,將所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)的數(shù)據(jù)發(fā)送至相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn)。
全文摘要
本發(fā)明提供了一種數(shù)據(jù)分配裝置,包括節(jié)點(diǎn)選擇單元,用于根據(jù)預(yù)設(shè)的多個(gè)數(shù)據(jù)節(jié)點(diǎn)之間的數(shù)據(jù)收發(fā)關(guān)系,從所述多個(gè)數(shù)據(jù)節(jié)點(diǎn)中選擇僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn);數(shù)據(jù)發(fā)送單元,用于根據(jù)所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)收發(fā)關(guān)系,將所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)的數(shù)據(jù)發(fā)送至相應(yīng)的作為接收方的數(shù)據(jù)節(jié)點(diǎn);過(guò)濾單元,用于從所述多個(gè)數(shù)據(jù)節(jié)點(diǎn)中過(guò)濾掉所述僅作為發(fā)送方的數(shù)據(jù)節(jié)點(diǎn)。本發(fā)明還提出了一種數(shù)據(jù)分配方法。通過(guò)本發(fā)明的技術(shù)方案,能夠提高數(shù)據(jù)分配的效率和自動(dòng)化程度,便于人工操作。
文檔編號(hào)G06F17/30GK102929945SQ20121037204
公開日2013年2月13日 申請(qǐng)日期2012年9月28日 優(yōu)先權(quán)日2012年9月28日
發(fā)明者趙曉輝 申請(qǐng)人:用友軟件股份有限公司