亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種跨數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接方法及系統(tǒng)的制作方法

文檔序號(hào):6539740閱讀:235來(lái)源:國(guó)知局
一種跨數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接方法及系統(tǒng)的制作方法
【專(zhuān)利摘要】本發(fā)明提供了一種跨HDFS的數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接方法,該方法包括:協(xié)調(diào)節(jié)點(diǎn)接收到數(shù)據(jù)聯(lián)接操作請(qǐng)求后,從配置文件中獲取元數(shù)據(jù)節(jié)點(diǎn)的IP地址,逐個(gè)與配置文件中的元數(shù)據(jù)節(jié)點(diǎn)建立連接,當(dāng)查詢(xún)到當(dāng)前元數(shù)據(jù)節(jié)點(diǎn)中有被請(qǐng)求表時(shí),獲取該被請(qǐng)求元數(shù)據(jù)節(jié)點(diǎn)的元數(shù)據(jù)信息;被請(qǐng)求節(jié)點(diǎn)根據(jù)被請(qǐng)求的數(shù)據(jù)的信息來(lái)對(duì)本節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行過(guò)濾,篩選出本節(jié)點(diǎn)被請(qǐng)求的數(shù)據(jù),向協(xié)調(diào)節(jié)點(diǎn)發(fā)送本節(jié)點(diǎn)所保存的結(jié)果集的大?。粎f(xié)調(diào)節(jié)點(diǎn)通知小結(jié)果集節(jié)點(diǎn)將本節(jié)點(diǎn)保存的結(jié)果集發(fā)送給所有大結(jié)果集節(jié)點(diǎn);所有大結(jié)果集節(jié)點(diǎn)將本節(jié)點(diǎn)的結(jié)果集與所有小結(jié)果集節(jié)點(diǎn)發(fā)來(lái)的結(jié)果集進(jìn)行哈希連接得到結(jié)果記錄;協(xié)調(diào)節(jié)點(diǎn)匯聚結(jié)果記錄。通過(guò)該方法及系統(tǒng),能夠?qū)崿F(xiàn)跨數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接。
【專(zhuān)利說(shuō)明】 一種跨數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接方法及系統(tǒng)

【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)【技術(shù)領(lǐng)域】,尤其涉及一種跨數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接方法及系統(tǒng)。

【背景技術(shù)】
[0002]當(dāng)面臨大數(shù)據(jù)應(yīng)用需求時(shí),在單機(jī)性能面臨瓶頸,關(guān)系數(shù)據(jù)庫(kù)集群系統(tǒng)已不能滿(mǎn)足大數(shù)據(jù)應(yīng)用需求的情況下,利用分布式存儲(chǔ)系統(tǒng)保存數(shù)據(jù)并采用基于SQL語(yǔ)言標(biāo)準(zhǔn)用戶(hù)接口已成為解決大規(guī)模結(jié)構(gòu)化數(shù)據(jù)檢索問(wèn)題的有效方法?,F(xiàn)有技術(shù),通常采用HDFS(HadoopDistributedFile System,Hadoop分布式文件系統(tǒng))存儲(chǔ)數(shù)據(jù)文件,并通過(guò)維護(hù)一份元數(shù)據(jù)將HDFS文件及其內(nèi)容映射為表結(jié)構(gòu)。現(xiàn)有技術(shù)中的應(yīng)用場(chǎng)景均面向同一個(gè)數(shù)據(jù)中心,即面向一套分布式文件系統(tǒng),然而,很多應(yīng)用場(chǎng)景要求系統(tǒng)對(duì)分布在不同數(shù)據(jù)中心的兩表或多表進(jìn)行聯(lián)接操作,即對(duì)分布在不同HDFS的數(shù)據(jù)中心的數(shù)據(jù)表進(jìn)行聯(lián)接,現(xiàn)有技術(shù)中不能實(shí)現(xiàn)跨HDFS的數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接。


【發(fā)明內(nèi)容】

[0003]本發(fā)明提供了一種跨數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接方法及系統(tǒng),能夠?qū)崿F(xiàn)跨HDFS的數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接。
[0004]一方面,本發(fā)明提供了一種跨HDFS的數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接方法,所述方法包括:
[0005]協(xié)調(diào)節(jié)點(diǎn)接收到數(shù)據(jù)聯(lián)接操作請(qǐng)求后,從配置文件中獲取元數(shù)據(jù)節(jié)點(diǎn)的IP地址;
[0006]協(xié)調(diào)節(jié)點(diǎn)逐個(gè)與配置文件中的元數(shù)據(jù)節(jié)點(diǎn)建立連接,當(dāng)查詢(xún)到當(dāng)前元數(shù)據(jù)節(jié)點(diǎn)中有被請(qǐng)求表時(shí),獲取該被請(qǐng)求元數(shù)據(jù)節(jié)點(diǎn)的元數(shù)據(jù)信息;
[0007]協(xié)調(diào)節(jié)點(diǎn)根據(jù)數(shù)據(jù)聯(lián)接操作請(qǐng)求中的篩選條件對(duì)所述被請(qǐng)求表進(jìn)行數(shù)據(jù)過(guò)濾;
[0008]協(xié)調(diào)節(jié)點(diǎn)根據(jù)過(guò)濾后的被請(qǐng)求表對(duì)應(yīng)的數(shù)據(jù)所在的節(jié)點(diǎn)的IP信息與該IP信息對(duì)應(yīng)的節(jié)點(diǎn)建立連接;
[0009]協(xié)調(diào)節(jié)點(diǎn)向建立連接的節(jié)點(diǎn)發(fā)送該節(jié)點(diǎn)中被請(qǐng)求的數(shù)據(jù)的信息;
[0010]被請(qǐng)求節(jié)點(diǎn)根據(jù)被請(qǐng)求的數(shù)據(jù)的信息來(lái)對(duì)本節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行過(guò)濾,篩選出本節(jié)點(diǎn)被請(qǐng)求的數(shù)據(jù);
[0011]各個(gè)被請(qǐng)求節(jié)點(diǎn)向協(xié)調(diào)節(jié)點(diǎn)發(fā)送本節(jié)點(diǎn)所保存的結(jié)果集的大??;
[0012]協(xié)調(diào)節(jié)點(diǎn)比較任意待聯(lián)接的兩個(gè)表對(duì)應(yīng)的結(jié)果集的大小,通知所有小結(jié)果集節(jié)點(diǎn)將本節(jié)點(diǎn)保存的結(jié)果集發(fā)送給所有大結(jié)果集節(jié)點(diǎn);
[0013]所有大結(jié)果集節(jié)點(diǎn)將本節(jié)點(diǎn)的結(jié)果集與所有小結(jié)果集節(jié)點(diǎn)發(fā)來(lái)的結(jié)果集進(jìn)行哈希連接得到結(jié)果記錄;
[0014]協(xié)調(diào)節(jié)點(diǎn)匯聚所有大結(jié)果集節(jié)點(diǎn)的結(jié)果記錄;
[0015]其中,所述配置文件中攜帶了數(shù)據(jù)中心的元數(shù)據(jù)節(jié)點(diǎn)的IP地址;所述協(xié)調(diào)節(jié)點(diǎn)為接收到數(shù)據(jù)聯(lián)接操作請(qǐng)求的節(jié)點(diǎn);所述被請(qǐng)求節(jié)點(diǎn)為接收到協(xié)調(diào)節(jié)點(diǎn)發(fā)來(lái)的被請(qǐng)求的數(shù)據(jù)的信息的節(jié)點(diǎn);所述小結(jié)果集節(jié)點(diǎn)為結(jié)果集小的表對(duì)應(yīng)的節(jié)點(diǎn);所述大結(jié)果集節(jié)點(diǎn)為結(jié)果集大的表對(duì)應(yīng)的節(jié)點(diǎn);所述被請(qǐng)求表為數(shù)據(jù)連接操作請(qǐng)求所請(qǐng)求的表;所述被請(qǐng)求元數(shù)據(jù)節(jié)點(diǎn)為包含所述被請(qǐng)求表的元數(shù)據(jù)節(jié)點(diǎn)。
[0016]進(jìn)一步地,所述數(shù)據(jù)聯(lián)接操作請(qǐng)求通過(guò)SQL語(yǔ)句實(shí)現(xiàn)。
[0017]進(jìn)一步地,在所述協(xié)調(diào)節(jié)點(diǎn)逐個(gè)與配置文件中的元數(shù)據(jù)節(jié)點(diǎn)建立連接之后,還包括協(xié)調(diào)節(jié)點(diǎn)調(diào)用元數(shù)據(jù)節(jié)點(diǎn)上的查詢(xún)進(jìn)程來(lái)查詢(xún)當(dāng)前元數(shù)據(jù)節(jié)點(diǎn)中有被請(qǐng)求表。
[0018]進(jìn)一步地,所述被請(qǐng)求節(jié)點(diǎn)根據(jù)被請(qǐng)求的數(shù)據(jù)的信息來(lái)對(duì)本節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行過(guò)濾,篩選出本節(jié)點(diǎn)被請(qǐng)求的數(shù)據(jù),包括:被請(qǐng)求節(jié)點(diǎn)通過(guò)本節(jié)點(diǎn)上的查詢(xún)進(jìn)程來(lái)查詢(xún)本節(jié)點(diǎn)被請(qǐng)求的數(shù)據(jù)。
[0019]進(jìn)一步地,在所述協(xié)調(diào)節(jié)點(diǎn)匯聚所有大結(jié)果集節(jié)點(diǎn)的結(jié)果記錄之前,還包括:所有大結(jié)果集節(jié)點(diǎn)將本節(jié)點(diǎn)的結(jié)果記錄發(fā)送給協(xié)調(diào)節(jié)點(diǎn)。
[0020]另一方面,本發(fā)明提供了一種跨Hadoop分布式文件系統(tǒng)HDFS的數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接系統(tǒng),所述系統(tǒng)包括:
[0021]協(xié)調(diào)節(jié)點(diǎn),用于接收到數(shù)據(jù)聯(lián)接操作請(qǐng)求后,從配置文件中獲取元數(shù)據(jù)節(jié)點(diǎn)的IP地址,逐個(gè)與配置文件中的元數(shù)據(jù)節(jié)點(diǎn)建立連接,當(dāng)查詢(xún)到當(dāng)前元數(shù)據(jù)節(jié)點(diǎn)中有被請(qǐng)求表時(shí),獲取該被請(qǐng)求元數(shù)據(jù)節(jié)點(diǎn)的元數(shù)據(jù)信息,根據(jù)數(shù)據(jù)聯(lián)接操作請(qǐng)求中的篩選條件對(duì)所述被請(qǐng)求表進(jìn)行數(shù)據(jù)過(guò)濾,根據(jù)過(guò)濾后的被請(qǐng)求表對(duì)應(yīng)的數(shù)據(jù)所在的節(jié)點(diǎn)的IP信息與該IP信息對(duì)應(yīng)的節(jié)點(diǎn)建立連接,向建立連接的節(jié)點(diǎn)發(fā)送該節(jié)點(diǎn)中被請(qǐng)求的數(shù)據(jù)的信息,在接收到被請(qǐng)求節(jié)點(diǎn)發(fā)來(lái)的結(jié)果集后,比較任意待聯(lián)接的兩個(gè)表對(duì)應(yīng)的結(jié)果集的大小,通知所有小結(jié)果集節(jié)點(diǎn)將本節(jié)點(diǎn)保存的結(jié)果集發(fā)送給所有大結(jié)果集節(jié)點(diǎn),匯聚所有大結(jié)果集節(jié)點(diǎn)的結(jié)果記錄;
[0022]被請(qǐng)求節(jié)點(diǎn),用于根據(jù)被請(qǐng)求的數(shù)據(jù)的信息來(lái)對(duì)本節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行過(guò)濾,篩選出本節(jié)點(diǎn)被請(qǐng)求的數(shù)據(jù),向協(xié)調(diào)節(jié)點(diǎn)發(fā)送本節(jié)點(diǎn)所保存的結(jié)果集的大?。?br> [0023]所述被請(qǐng)求節(jié)點(diǎn)還包括大結(jié)果集節(jié)點(diǎn)、小結(jié)果集節(jié)點(diǎn);
[0024]所述小結(jié)果集節(jié)點(diǎn),用于將本節(jié)點(diǎn)保存的結(jié)果集發(fā)送給所有大結(jié)果集節(jié)點(diǎn);
[0025]大結(jié)果集節(jié)點(diǎn),用于將本節(jié)點(diǎn)的結(jié)果集與所有小結(jié)果集節(jié)點(diǎn)發(fā)來(lái)的結(jié)果集進(jìn)行哈希連接得到結(jié)果記錄;
[0026]其中,所述配置文件中攜帶了數(shù)據(jù)中心的元數(shù)據(jù)節(jié)點(diǎn)的IP地址;所述協(xié)調(diào)節(jié)點(diǎn)為接收到數(shù)據(jù)聯(lián)接操作請(qǐng)求的節(jié)點(diǎn);所述被請(qǐng)求節(jié)點(diǎn)為接收到協(xié)調(diào)節(jié)點(diǎn)發(fā)來(lái)的被請(qǐng)求的數(shù)據(jù)的信息的節(jié)點(diǎn);所述小結(jié)果集節(jié)點(diǎn)為結(jié)果集小的表對(duì)應(yīng)的節(jié)點(diǎn);所述大結(jié)果集節(jié)點(diǎn)為結(jié)果集大的表對(duì)應(yīng)的節(jié)點(diǎn);所述被請(qǐng)求表為數(shù)據(jù)連接操作請(qǐng)求所請(qǐng)求的表;所述被請(qǐng)求元數(shù)據(jù)節(jié)點(diǎn)為包含所述被請(qǐng)求表的元數(shù)據(jù)節(jié)點(diǎn)。
[0027]進(jìn)一步地,所述數(shù)據(jù)聯(lián)接操作請(qǐng)求通過(guò)SQL語(yǔ)句實(shí)現(xiàn)。
[0028]進(jìn)一步地,所述協(xié)調(diào)節(jié)點(diǎn),還用于在所述協(xié)調(diào)節(jié)點(diǎn)逐個(gè)與配置文件中的元數(shù)據(jù)節(jié)點(diǎn)建立連接之后,調(diào)用元數(shù)據(jù)節(jié)點(diǎn)上的查詢(xún)進(jìn)程來(lái)查詢(xún)當(dāng)前元數(shù)據(jù)節(jié)點(diǎn)中有被請(qǐng)求表。
[0029]進(jìn)一步地,所述被請(qǐng)求節(jié)點(diǎn),用于通過(guò)本節(jié)點(diǎn)上的查詢(xún)進(jìn)程來(lái)查詢(xún)本節(jié)點(diǎn)被請(qǐng)求的數(shù)據(jù)。
[0030]進(jìn)一步地,所述大結(jié)果集節(jié)點(diǎn)還用于,在所述協(xié)調(diào)節(jié)點(diǎn)匯聚所有大結(jié)果集節(jié)點(diǎn)的結(jié)果記錄之前,將本節(jié)點(diǎn)的結(jié)果記錄發(fā)送給協(xié)調(diào)節(jié)點(diǎn)。
[0031]本發(fā)明提供了一種跨HDFS的數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接方法及系統(tǒng),協(xié)調(diào)節(jié)點(diǎn)通過(guò)獲取配置文件中的元數(shù)據(jù)節(jié)點(diǎn)的IP地址來(lái)與非本數(shù)據(jù)中心的元數(shù)據(jù)節(jié)點(diǎn)連接,能夠?qū)崿F(xiàn)跨 HDFS的數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接。

【專(zhuān)利附圖】

【附圖說(shuō)明】
[0032]為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0033]圖1是本發(fā)明實(shí)施例提供的一種跨HDFS的數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接方法流程圖;
[0034]圖2是本發(fā)明實(shí)施例提供的一種跨HDFS的數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接系統(tǒng)結(jié)構(gòu)示意圖。

【具體實(shí)施方式】
[0035]為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例,基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)的前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0036]本發(fā)明實(shí)施例提供了一種跨HDFS的數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接方法,參見(jiàn)圖1,所述方法包括:
[0037]步驟101:協(xié)調(diào)節(jié)點(diǎn)接收到數(shù)據(jù)聯(lián)接操作請(qǐng)求后,從配置文件中獲取元數(shù)據(jù)節(jié)點(diǎn)的IP地址;
[0038]步驟102:協(xié)調(diào)節(jié)點(diǎn)逐個(gè)與配置文件中的元數(shù)據(jù)節(jié)點(diǎn)建立連接,當(dāng)查詢(xún)到當(dāng)前元數(shù)據(jù)節(jié)點(diǎn)中有被請(qǐng)求表時(shí),獲取該被請(qǐng)求元數(shù)據(jù)節(jié)點(diǎn)的元數(shù)據(jù)信息;
[0039]步驟103:協(xié)調(diào)節(jié)點(diǎn)根據(jù)數(shù)據(jù)聯(lián)接操作請(qǐng)求中的篩選條件對(duì)所述被請(qǐng)求表進(jìn)行數(shù)據(jù)過(guò)濾;
[0040]步驟104:協(xié)調(diào)節(jié)點(diǎn)根據(jù)過(guò)濾后的被請(qǐng)求表對(duì)應(yīng)的數(shù)據(jù)所在的節(jié)點(diǎn)的IP信息與該IP信息對(duì)應(yīng)的節(jié)點(diǎn)建立連接;
[0041]步驟105:協(xié)調(diào)節(jié)點(diǎn)向建立連接的節(jié)點(diǎn)發(fā)送該節(jié)點(diǎn)中被請(qǐng)求的數(shù)據(jù)的信息;
[0042]步驟106:被請(qǐng)求節(jié)點(diǎn)根據(jù)被請(qǐng)求的數(shù)據(jù)的信息來(lái)對(duì)本節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行過(guò)濾,篩選出本節(jié)點(diǎn)被請(qǐng)求的數(shù)據(jù);
[0043]步驟107:各個(gè)被請(qǐng)求節(jié)點(diǎn)向協(xié)調(diào)節(jié)點(diǎn)發(fā)送本節(jié)點(diǎn)所保存的結(jié)果集的大??;
[0044]步驟108:協(xié)調(diào)節(jié)點(diǎn)比較任意待聯(lián)接的兩個(gè)表對(duì)應(yīng)的結(jié)果集的大小,通知所有小結(jié)果集節(jié)點(diǎn)將本節(jié)點(diǎn)保存的結(jié)果集發(fā)送給所有大結(jié)果集節(jié)點(diǎn);
[0045]步驟109:所有大結(jié)果集節(jié)點(diǎn)將本節(jié)點(diǎn)的結(jié)果集與所有小結(jié)果集節(jié)點(diǎn)發(fā)來(lái)的結(jié)果集進(jìn)行哈希連接得到結(jié)果記錄;
[0046]步驟110:協(xié)調(diào)節(jié)點(diǎn)匯聚所有大結(jié)果集節(jié)點(diǎn)的結(jié)果記錄;
[0047]其中,所述配置文件中攜帶了數(shù)據(jù)中心的元數(shù)據(jù)節(jié)點(diǎn)的IP地址;所述協(xié)調(diào)節(jié)點(diǎn)為接收到數(shù)據(jù)聯(lián)接操作請(qǐng)求的節(jié)點(diǎn);所述被請(qǐng)求節(jié)點(diǎn)為接收到協(xié)調(diào)節(jié)點(diǎn)發(fā)來(lái)的被請(qǐng)求的數(shù)據(jù)的信息的節(jié)點(diǎn);所述小結(jié)果集節(jié)點(diǎn)為結(jié)果集小的表對(duì)應(yīng)的節(jié)點(diǎn);所述大結(jié)果集節(jié)點(diǎn)為結(jié)果集大的表對(duì)應(yīng)的節(jié)點(diǎn);所述被請(qǐng)求表為數(shù)據(jù)連接操作請(qǐng)求所請(qǐng)求的表;所述被請(qǐng)求元數(shù)據(jù)節(jié)點(diǎn)為包含所述被請(qǐng)求表的元數(shù)據(jù)節(jié)點(diǎn)。
[0048]本發(fā)明實(shí)施例提供了一種跨HDFS的數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接方法,協(xié)調(diào)節(jié)點(diǎn)通過(guò)獲取配置文件中的元數(shù)據(jù)節(jié)點(diǎn)的IP地址來(lái)與非本數(shù)據(jù)中心的元數(shù)據(jù)節(jié)點(diǎn)連接,能夠?qū)崿F(xiàn)跨HDFS的數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接。
[0049]在本發(fā)明實(shí)施例中,外部為協(xié)調(diào)節(jié)點(diǎn)提供了一個(gè)配置文件,在配置文件中記錄了所有數(shù)據(jù)中心的元數(shù)據(jù)節(jié)點(diǎn)的IP地址,使協(xié)調(diào)節(jié)點(diǎn)可以通過(guò)該IP地址與非本數(shù)據(jù)中心的元數(shù)據(jù)節(jié)點(diǎn)進(jìn)行連接。
[0050]協(xié)調(diào)節(jié)點(diǎn)通過(guò)逐個(gè)查詢(xún)配置文件中的元數(shù)據(jù)節(jié)點(diǎn)來(lái)確定數(shù)據(jù)聯(lián)接操作請(qǐng)求中要進(jìn)行聯(lián)接的表存在于哪個(gè)元數(shù)據(jù)節(jié)點(diǎn)中。在元數(shù)據(jù)節(jié)點(diǎn)中存有本數(shù)據(jù)中心的所有節(jié)點(diǎn)的IP信息和所有節(jié)點(diǎn)所存儲(chǔ)的數(shù)據(jù)的信息,通過(guò)元數(shù)據(jù)節(jié)點(diǎn)能夠獲得被請(qǐng)求的數(shù)據(jù)所存儲(chǔ)的節(jié)點(diǎn)。
[0051]由于數(shù)據(jù)聯(lián)接操作請(qǐng)求中只是請(qǐng)求一個(gè)表中的部分?jǐn)?shù)據(jù),所在步驟103中,根據(jù)篩選條件對(duì)被請(qǐng)求表進(jìn)行數(shù)據(jù)過(guò)濾,保留被請(qǐng)求表中要請(qǐng)求的數(shù)據(jù)的信息。
[0052]在步驟106中,被請(qǐng)求節(jié)點(diǎn)篩選出本節(jié)點(diǎn)被請(qǐng)求的數(shù)據(jù)后,暫時(shí)不進(jìn)行匯聚操作,而是將被請(qǐng)求的數(shù)據(jù)存儲(chǔ)在本節(jié)點(diǎn)中。
[0053]由于在數(shù)據(jù)聯(lián)接時(shí),需要每?jī)蓚€(gè)表進(jìn)行聯(lián)接,這兩個(gè)被請(qǐng)求表中,比較這兩個(gè)被請(qǐng)求表對(duì)應(yīng)的結(jié)果集的大小,而被請(qǐng)求表對(duì)應(yīng)的結(jié)果集為本表對(duì)應(yīng)的所有被請(qǐng)求節(jié)點(diǎn)的結(jié)果集之和。在將這兩個(gè)表聯(lián)接后形成一個(gè)新表,再將這個(gè)新表與其他表按照相同的上述步驟進(jìn)行聯(lián)接。
[0054]在步驟109中,每一個(gè)大結(jié)果集節(jié)點(diǎn)會(huì)收到所有小結(jié)果集節(jié)點(diǎn)發(fā)來(lái)的本節(jié)點(diǎn)上的結(jié)果集,進(jìn)而每一個(gè)大結(jié)果集上都會(huì)有結(jié)果集小的表的結(jié)果集。
[0055]其中,所述數(shù)據(jù)聯(lián)接操作請(qǐng)求通過(guò)SQL語(yǔ)句實(shí)現(xiàn)。
[0056]在所述協(xié)調(diào)節(jié)點(diǎn)逐個(gè)與配置文件中的元數(shù)據(jù)節(jié)點(diǎn)建立連接之后,還包括協(xié)調(diào)節(jié)點(diǎn)調(diào)用元數(shù)據(jù)節(jié)點(diǎn)上的查詢(xún)進(jìn)程來(lái)查詢(xún)當(dāng)前元數(shù)據(jù)節(jié)點(diǎn)中有被請(qǐng)求表。
[0057]所述被請(qǐng)求節(jié)點(diǎn)根據(jù)被請(qǐng)求的數(shù)據(jù)的信息來(lái)對(duì)本節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行過(guò)濾,篩選出本節(jié)點(diǎn)被請(qǐng)求的數(shù)據(jù),包括:被請(qǐng)求節(jié)點(diǎn)通過(guò)本節(jié)點(diǎn)上的查詢(xún)進(jìn)程來(lái)查詢(xún)本節(jié)點(diǎn)被請(qǐng)求的數(shù)據(jù)。
[0058]在所述協(xié)調(diào)節(jié)點(diǎn)匯聚所有大結(jié)果集節(jié)點(diǎn)的結(jié)果記錄之前,還包括:所有大結(jié)果集節(jié)點(diǎn)將本節(jié)點(diǎn)的結(jié)果記錄發(fā)送給協(xié)調(diào)節(jié)點(diǎn)。
[0059]本發(fā)明實(shí)施例提供了一種跨HDFS的數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接系統(tǒng),參見(jiàn)圖2,該系統(tǒng)包括:
[0060]協(xié)調(diào)節(jié)點(diǎn)201,用于接收到數(shù)據(jù)聯(lián)接操作請(qǐng)求后,從配置文件中獲取元數(shù)據(jù)節(jié)點(diǎn)的IP地址,逐個(gè)與配置文件中的元數(shù)據(jù)節(jié)點(diǎn)建立連接,當(dāng)查詢(xún)到當(dāng)前元數(shù)據(jù)節(jié)點(diǎn)中有被請(qǐng)求表時(shí),獲取該被請(qǐng)求元數(shù)據(jù)節(jié)點(diǎn)的元數(shù)據(jù)信息,根據(jù)數(shù)據(jù)聯(lián)接操作請(qǐng)求中的篩選條件對(duì)所述被請(qǐng)求表進(jìn)行數(shù)據(jù)過(guò)濾,根據(jù)過(guò)濾后的被請(qǐng)求表對(duì)應(yīng)的數(shù)據(jù)所在的節(jié)點(diǎn)的IP信息與該IP信息對(duì)應(yīng)的節(jié)點(diǎn)建立連接,向建立連接的節(jié)點(diǎn)發(fā)送該節(jié)點(diǎn)中被請(qǐng)求的數(shù)據(jù)的信息,在接收到被請(qǐng)求節(jié)點(diǎn)發(fā)來(lái)的結(jié)果集后,比較任意待聯(lián)接的兩個(gè)表對(duì)應(yīng)的結(jié)果集的大小,通知所有小結(jié)果集節(jié)點(diǎn)將本節(jié)點(diǎn)保存的結(jié)果集發(fā)送給所有大結(jié)果集節(jié)點(diǎn),匯聚所有大結(jié)果集節(jié)點(diǎn)的結(jié)果記錄;
[0061]被請(qǐng)求節(jié)點(diǎn)202,用于根據(jù)被請(qǐng)求的數(shù)據(jù)的信息來(lái)對(duì)本節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行過(guò)濾,篩選出本節(jié)點(diǎn)被請(qǐng)求的數(shù)據(jù),向協(xié)調(diào)節(jié)點(diǎn)發(fā)送本節(jié)點(diǎn)所保存的結(jié)果集的大??;
[0062]所述被請(qǐng)求節(jié)點(diǎn)202還包括大結(jié)果集節(jié)點(diǎn)、小結(jié)果集節(jié)點(diǎn);
[0063]所述小結(jié)果集節(jié)點(diǎn)2021,用于將本節(jié)點(diǎn)保存的結(jié)果集發(fā)送給所有大結(jié)果集節(jié)點(diǎn);
[0064]大結(jié)果集節(jié)點(diǎn)2022,用于將本節(jié)點(diǎn)的結(jié)果集與所有小結(jié)果集節(jié)點(diǎn)發(fā)來(lái)的結(jié)果集進(jìn)行哈希連接得到結(jié)果記錄;
[0065]其中,所述配置文件中攜帶了數(shù)據(jù)中心的元數(shù)據(jù)節(jié)點(diǎn)的IP地址;所述協(xié)調(diào)節(jié)點(diǎn)為接收到數(shù)據(jù)聯(lián)接操作請(qǐng)求的節(jié)點(diǎn);所述被請(qǐng)求節(jié)點(diǎn)202為接收到協(xié)調(diào)節(jié)點(diǎn)201發(fā)來(lái)的被請(qǐng)求的數(shù)據(jù)的信息的節(jié)點(diǎn);所述小結(jié)果集節(jié)點(diǎn)2021為結(jié)果集小的表對(duì)應(yīng)的節(jié)點(diǎn);所述大結(jié)果集節(jié)點(diǎn)2022為結(jié)果集大的表對(duì)應(yīng)的節(jié)點(diǎn);所述被請(qǐng)求表為數(shù)據(jù)連接操作請(qǐng)求所請(qǐng)求的表;所述被請(qǐng)求元數(shù)據(jù)節(jié)點(diǎn)為包含所述被請(qǐng)求表的元數(shù)據(jù)節(jié)點(diǎn)。
[0066]所述數(shù)據(jù)聯(lián)接操作請(qǐng)求通過(guò)SQL語(yǔ)句實(shí)現(xiàn)。
[0067]所述協(xié)調(diào)節(jié)點(diǎn)201,還用于在所述協(xié)調(diào)節(jié)點(diǎn)逐個(gè)與配置文件中的元數(shù)據(jù)節(jié)點(diǎn)建立連接之后,調(diào)用元數(shù)據(jù)節(jié)點(diǎn)上的查詢(xún)進(jìn)程來(lái)查詢(xún)當(dāng)前元數(shù)據(jù)節(jié)點(diǎn)中有被請(qǐng)求表。
[0068]所述被請(qǐng)求節(jié)點(diǎn)202,用于通過(guò)本節(jié)點(diǎn)上的查詢(xún)進(jìn)程來(lái)查詢(xún)本節(jié)點(diǎn)被請(qǐng)求的數(shù)據(jù)。
[0069]所述大結(jié)果集節(jié)點(diǎn)2022還用于,在所述協(xié)調(diào)節(jié)點(diǎn)201匯聚所有大結(jié)果集節(jié)點(diǎn)2022的結(jié)果記錄之前,將本節(jié)點(diǎn)的結(jié)果記錄發(fā)送給協(xié)調(diào)節(jié)點(diǎn)201。
[0070]上述系統(tǒng)內(nèi)的各單元、子單元之間的信息交互、執(zhí)行過(guò)程等內(nèi)容,由于與本發(fā)明方法實(shí)施例基于同一構(gòu)思,具體內(nèi)容可參見(jiàn)本發(fā)明方法實(shí)施例中的敘述,此處不再贅述。
[0071]通過(guò)上述描述可見(jiàn),本發(fā)明實(shí)施例具有如下有益效果:
[0072]本發(fā)明實(shí)施例提供了一種跨HDFS的數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接方法及系統(tǒng),協(xié)調(diào)節(jié)點(diǎn)通過(guò)獲取配置文件中的元數(shù)據(jù)節(jié)點(diǎn)的IP地址來(lái)與非本數(shù)據(jù)中心的元數(shù)據(jù)節(jié)點(diǎn)連接,能夠?qū)崿F(xiàn)跨HDFS的數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接。
[0073]需要說(shuō)明的是,在本文中,諸如第一和第二之類(lèi)的關(guān)系術(shù)語(yǔ)僅僅用來(lái)將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開(kāi)來(lái),而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒(méi)有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、物品或者設(shè)備所固有的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句“包括一個(gè)......”限定的要素,并不排除在包括所述要素的過(guò)程、方法、物品或者設(shè)備中還存在另外的相同因素。
[0074]本領(lǐng)域普通技術(shù)人員可以理解:實(shí)現(xiàn)上述方法實(shí)施例的全部或部分步驟可以通過(guò)程序指令相關(guān)的硬件來(lái)完成,前述的程序可以存儲(chǔ)在計(jì)算機(jī)可讀取的存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),執(zhí)行包括上述方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括:R0M、RAM、磁碟或者光盤(pán)等各種可以存儲(chǔ)程序代碼的介質(zhì)中。
[0075]最后需要說(shuō)明的是:以上所述僅為本發(fā)明的較佳實(shí)施例,僅用于說(shuō)明本發(fā)明的技術(shù)方案,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi)所做的任何修改、等同替換、改進(jìn)等,均包含在本發(fā)明的保護(hù)范圍內(nèi)。
【權(quán)利要求】
1.一種跨Hadoop分布式文件系統(tǒng)HDFS的數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接方法,其特征在于,所述方法包括: 協(xié)調(diào)節(jié)點(diǎn)接收到數(shù)據(jù)聯(lián)接操作請(qǐng)求后,從配置文件中獲取元數(shù)據(jù)節(jié)點(diǎn)的IP地址; 協(xié)調(diào)節(jié)點(diǎn)逐個(gè)與配置文件中的元數(shù)據(jù)節(jié)點(diǎn)建立連接,當(dāng)查詢(xún)到當(dāng)前元數(shù)據(jù)節(jié)點(diǎn)中有被請(qǐng)求表時(shí),獲取該被請(qǐng)求元數(shù)據(jù)節(jié)點(diǎn)的元數(shù)據(jù)信息; 協(xié)調(diào)節(jié)點(diǎn)根據(jù)數(shù)據(jù)聯(lián)接操作請(qǐng)求中的篩選條件對(duì)所述被請(qǐng)求表進(jìn)行數(shù)據(jù)過(guò)濾; 協(xié)調(diào)節(jié)點(diǎn)根據(jù)過(guò)濾后的被請(qǐng)求表對(duì)應(yīng)的數(shù)據(jù)所在的節(jié)點(diǎn)的IP信息與該IP信息對(duì)應(yīng)的節(jié)點(diǎn)建立連接; 協(xié)調(diào)節(jié)點(diǎn)向建立連接的節(jié)點(diǎn)發(fā)送該節(jié)點(diǎn)中被請(qǐng)求的數(shù)據(jù)的信息; 被請(qǐng)求節(jié)點(diǎn)根據(jù)被請(qǐng)求的數(shù)據(jù)的信息來(lái)對(duì)本節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行過(guò)濾,篩選出本節(jié)點(diǎn)被請(qǐng)求的數(shù)據(jù); 各個(gè)被請(qǐng)求節(jié)點(diǎn)向協(xié)調(diào)節(jié)點(diǎn)發(fā)送本節(jié)點(diǎn)所保存的結(jié)果集的大小; 協(xié)調(diào)節(jié)點(diǎn)比較任意待聯(lián)接的兩個(gè)表對(duì)應(yīng)的結(jié)果集的大小,通知所有小結(jié)果集節(jié)點(diǎn)將本節(jié)點(diǎn)保存的結(jié)果集發(fā)送給所有大結(jié)果集節(jié)點(diǎn); 所有大結(jié)果集節(jié)點(diǎn)將本節(jié)點(diǎn)的結(jié)果集與所有小結(jié)果集節(jié)點(diǎn)發(fā)來(lái)的結(jié)果集進(jìn)行哈希連接得到結(jié)果記錄; 協(xié)調(diào)節(jié)點(diǎn)匯聚所有大結(jié)果集節(jié)點(diǎn)的結(jié)果記錄; 其中,所述配置文件中攜帶了數(shù)據(jù)中心的元數(shù)據(jù)節(jié)點(diǎn)的IP地址;所述協(xié)調(diào)節(jié)點(diǎn)為接收到數(shù)據(jù)聯(lián)接操作請(qǐng)求的節(jié)點(diǎn);所述被請(qǐng)求節(jié)點(diǎn)為接收到協(xié)調(diào)節(jié)點(diǎn)發(fā)來(lái)的被請(qǐng)求的數(shù)據(jù)的信息的節(jié)點(diǎn);所述小結(jié)果集節(jié)點(diǎn)為結(jié)果集小的表對(duì)應(yīng)的節(jié)點(diǎn);所述大結(jié)果集節(jié)點(diǎn)為結(jié)果集大的表對(duì)應(yīng)的節(jié)點(diǎn);所述被請(qǐng)求表為數(shù)據(jù)連接操作請(qǐng)求所請(qǐng)求的表;所述被請(qǐng)求元數(shù)據(jù)節(jié)點(diǎn)為包含所述被請(qǐng)求表的元數(shù)據(jù)節(jié)點(diǎn)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述數(shù)據(jù)聯(lián)接操作請(qǐng)求通過(guò)SQL語(yǔ)句實(shí)現(xiàn)。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述協(xié)調(diào)節(jié)點(diǎn)逐個(gè)與配置文件中的元數(shù)據(jù)節(jié)點(diǎn)建立連接之后,還包括協(xié)調(diào)節(jié)點(diǎn)調(diào)用元數(shù)據(jù)節(jié)點(diǎn)上的查詢(xún)進(jìn)程來(lái)查詢(xún)當(dāng)前元數(shù)據(jù)節(jié)點(diǎn)中有被請(qǐng)求表。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述被請(qǐng)求節(jié)點(diǎn)根據(jù)被請(qǐng)求的數(shù)據(jù)的信息來(lái)對(duì)本節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行過(guò)濾,篩選出本節(jié)點(diǎn)被請(qǐng)求的數(shù)據(jù),包括:被請(qǐng)求節(jié)點(diǎn)通過(guò)本節(jié)點(diǎn)上的查詢(xún)進(jìn)程來(lái)查詢(xún)本節(jié)點(diǎn)被請(qǐng)求的數(shù)據(jù)。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述協(xié)調(diào)節(jié)點(diǎn)匯聚所有大結(jié)果集節(jié)點(diǎn)的結(jié)果記錄之前,還包括:所有大結(jié)果集節(jié)點(diǎn)將本節(jié)點(diǎn)的結(jié)果記錄發(fā)送給協(xié)調(diào)節(jié)點(diǎn)。
6.一種跨Hadoop分布式文件系統(tǒng)HDFS的數(shù)據(jù)中心的數(shù)據(jù)聯(lián)接系統(tǒng),其特征在于,所述系統(tǒng)包括: 協(xié)調(diào)節(jié)點(diǎn),用于接收到數(shù)據(jù)聯(lián)接操作請(qǐng)求后,從配置文件中獲取元數(shù)據(jù)節(jié)點(diǎn)的IP地址,逐個(gè)與配置文件中的元數(shù)據(jù)節(jié)點(diǎn)建立連接,當(dāng)查詢(xún)到當(dāng)前元數(shù)據(jù)節(jié)點(diǎn)中有被請(qǐng)求表時(shí),獲取該被請(qǐng)求元數(shù)據(jù)節(jié)點(diǎn)的元數(shù)據(jù)信息,根據(jù)數(shù)據(jù)聯(lián)接操作請(qǐng)求中的篩選條件對(duì)所述被請(qǐng)求表進(jìn)行數(shù)據(jù)過(guò)濾,根據(jù)過(guò)濾后的被請(qǐng)求表對(duì)應(yīng)的數(shù)據(jù)所在的節(jié)點(diǎn)的IP信息與該IP信息對(duì)應(yīng)的節(jié)點(diǎn)建立連接,向建立連接的節(jié)點(diǎn)發(fā)送該節(jié)點(diǎn)中被請(qǐng)求的數(shù)據(jù)的信息,在接收到被請(qǐng)求節(jié)點(diǎn)發(fā)來(lái)的結(jié)果集后,比較任意待聯(lián)接的兩個(gè)表對(duì)應(yīng)的結(jié)果集的大小,通知所有小結(jié)果集節(jié)點(diǎn)將本節(jié)點(diǎn)保存的結(jié)果集發(fā)送給所有大結(jié)果集節(jié)點(diǎn),匯聚所有大結(jié)果集節(jié)點(diǎn)的結(jié)果記錄; 被請(qǐng)求節(jié)點(diǎn),用于根據(jù)被請(qǐng)求的數(shù)據(jù)的信息來(lái)對(duì)本節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行過(guò)濾,篩選出本節(jié)點(diǎn)被請(qǐng)求的數(shù)據(jù),向協(xié)調(diào)節(jié)點(diǎn)發(fā)送本節(jié)點(diǎn)所保存的結(jié)果集的大??; 所述被請(qǐng)求節(jié)點(diǎn)還包括大結(jié)果集節(jié)點(diǎn)、小結(jié)果集節(jié)點(diǎn); 所述小結(jié)果集節(jié)點(diǎn),用于將本節(jié)點(diǎn)保存的結(jié)果集發(fā)送給所有大結(jié)果集節(jié)點(diǎn); 大結(jié)果集節(jié)點(diǎn),用于將本節(jié)點(diǎn)的結(jié)果集與所有小結(jié)果集節(jié)點(diǎn)發(fā)來(lái)的結(jié)果集進(jìn)行哈希連接得到結(jié)果記錄; 其中,所述配置文件中攜帶了數(shù)據(jù)中心的元數(shù)據(jù)節(jié)點(diǎn)的IP地址;所述協(xié)調(diào)節(jié)點(diǎn)為接收到數(shù)據(jù)聯(lián)接操作請(qǐng)求的節(jié)點(diǎn);所述被請(qǐng)求節(jié)點(diǎn)為接收到協(xié)調(diào)節(jié)點(diǎn)發(fā)來(lái)的被請(qǐng)求的數(shù)據(jù)的信息的節(jié)點(diǎn);所述小結(jié)果集節(jié)點(diǎn)為結(jié)果集小的表對(duì)應(yīng)的節(jié)點(diǎn);所述大結(jié)果集節(jié)點(diǎn)為結(jié)果集大的表對(duì)應(yīng)的節(jié)點(diǎn);所述被請(qǐng)求表為數(shù)據(jù)連接操作請(qǐng)求所請(qǐng)求的表;所述被請(qǐng)求元數(shù)據(jù)節(jié)點(diǎn)為包含所述被請(qǐng)求表的元數(shù)據(jù)節(jié)點(diǎn)。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述數(shù)據(jù)聯(lián)接操作請(qǐng)求通過(guò)SQL語(yǔ)句實(shí)現(xiàn)。
8.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述協(xié)調(diào)節(jié)點(diǎn),還用于在所述協(xié)調(diào)節(jié)點(diǎn)逐個(gè)與配置文件中的元數(shù)據(jù)節(jié)點(diǎn)建立連接之后,調(diào)用元數(shù)據(jù)節(jié)點(diǎn)上的查詢(xún)進(jìn)程來(lái)查詢(xún)當(dāng)前元數(shù)據(jù)節(jié)點(diǎn)中有被請(qǐng)求表。
9.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述被請(qǐng)求節(jié)點(diǎn),用于通過(guò)本節(jié)點(diǎn)上的查詢(xún)進(jìn)程來(lái)查詢(xún)本節(jié)點(diǎn)被請(qǐng)求的數(shù)據(jù)。
10.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述大結(jié)果集節(jié)點(diǎn)還用于,在所述協(xié)調(diào)節(jié)點(diǎn)匯聚所有大結(jié)果集節(jié)點(diǎn)的結(jié)果記錄之前,將本節(jié)點(diǎn)的結(jié)果記錄發(fā)送給協(xié)調(diào)節(jié)點(diǎn)。
【文檔編號(hào)】G06F17/30GK104135505SQ201410081163
【公開(kāi)日】2014年11月5日 申請(qǐng)日期:2014年3月6日 優(yōu)先權(quán)日:2014年3月6日
【發(fā)明者】汪東升, 張寶權(quán), 王占業(yè) 申請(qǐng)人:清華大學(xué)
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1