两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種互聯(lián)網(wǎng)元數(shù)據(jù)的分布式采集處理系統(tǒng)及方法

文檔序號(hào):6437743閱讀:145來(lái)源:國(guó)知局
專利名稱:一種互聯(lián)網(wǎng)元數(shù)據(jù)的分布式采集處理系統(tǒng)及方法
技術(shù)領(lǐng)域
本發(fā)明涉及分布式系統(tǒng)領(lǐng)域,主要是一種互聯(lián)網(wǎng)元數(shù)據(jù)的分布式采集處理系統(tǒng)及方法。
背景技術(shù)
隨著三網(wǎng)融合的推行,越來(lái)越多的互聯(lián)網(wǎng)應(yīng)用被“搬”到了電視上??梢灶A(yù)見(jiàn),隨著互聯(lián)網(wǎng)電視應(yīng)用的爆炸式增長(zhǎng),用戶個(gè)性化需求的日益深入,互聯(lián)網(wǎng)信息會(huì)高度聚合經(jīng)二次開(kāi)發(fā)成為互聯(lián)網(wǎng)電視上的增值應(yīng)用,另外,互聯(lián)網(wǎng)電視的操作方便性不及PC電腦和手機(jī)、互聯(lián)網(wǎng)電視的界面內(nèi)容容量也不及PC,這些因素都潛在地要求互聯(lián)網(wǎng)電視上的實(shí)現(xiàn)更精準(zhǔn)的站內(nèi)搜索,而當(dāng)前互聯(lián)網(wǎng)上最流行的基于全文檢索的搜索技術(shù)實(shí)現(xiàn)顯然無(wú)法滿足互聯(lián)網(wǎng)電視領(lǐng)域的客觀需求。另一方面,隨著軟件商業(yè)銷(xiāo)售方式的演化,軟件提供商正從原先的系統(tǒng)和產(chǎn)品提供商向平臺(tái)服務(wù)提供商演化,IPTV也必然會(huì)從單純的TV業(yè)務(wù)平臺(tái)向面向服務(wù)的支撐平臺(tái)演化,相應(yīng)地,軟件構(gòu)架技術(shù)將從原先的面向產(chǎn)品向面向服務(wù)發(fā)展,軟件即服務(wù)MaS(Software as a Service)成為互聯(lián)網(wǎng)領(lǐng)域最重要的技術(shù)構(gòu)架方式。目前IPTV對(duì)元數(shù)據(jù)的處理不夠通用和開(kāi)放,已有實(shí)現(xiàn)無(wú)法重用到互聯(lián)網(wǎng)電視平臺(tái)的站內(nèi)精準(zhǔn)搜索、互聯(lián)網(wǎng)電視增值業(yè)務(wù)應(yīng)用等領(lǐng)域。本發(fā)明以^aS為構(gòu)架、以分布式計(jì)算為技術(shù)基礎(chǔ),為互聯(lián)網(wǎng)海量元數(shù)據(jù)采集和處理提供通用的、開(kāi)放式的分布式組件和服務(wù)。

發(fā)明內(nèi)容
本發(fā)明的目的是為互聯(lián)網(wǎng)電視業(yè)務(wù)支撐平臺(tái)實(shí)現(xiàn)一種統(tǒng)一的、通用的、開(kāi)放式的互聯(lián)網(wǎng)元數(shù)據(jù)的分布式采集處理系統(tǒng)及方法,本發(fā)明能同時(shí)為多個(gè)互聯(lián)網(wǎng)業(yè)務(wù)應(yīng)用的互聯(lián)網(wǎng)元數(shù)據(jù)采集和處理提供支撐服務(wù),從而大大降低內(nèi)容聚合型互聯(lián)網(wǎng)應(yīng)用的開(kāi)發(fā)難度,縮短其開(kāi)發(fā)周期、降低其部署和運(yùn)營(yíng)成本。本發(fā)明解決其技術(shù)問(wèn)題采用的技術(shù)方案本發(fā)明提供了一種互聯(lián)網(wǎng)元數(shù)據(jù)的分布式采集處理方法,該方法的具體步驟為(1)各業(yè)務(wù)應(yīng)用系統(tǒng)通過(guò)互聯(lián)網(wǎng)分布式元數(shù)據(jù)采集系統(tǒng)的配置管理模塊配置提交元數(shù)據(jù)采集需求;(2)互聯(lián)網(wǎng)分布式元數(shù)據(jù)采集系統(tǒng)的元數(shù)據(jù)采集組件模塊周期性地創(chuàng)建和執(zhí)行頁(yè)面采集任務(wù)調(diào)度程序(采集job)、生成的元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言(XML)文件;A讀取各業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)采集配置,歸并各業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)采集需求信息的輸入元數(shù)據(jù)來(lái)源站點(diǎn)URL列表(Site URL List)和輸出元數(shù)據(jù)映射(Meta Data Mapping);B以輸入元數(shù)據(jù)來(lái)源站點(diǎn)URL列表(Site URL List)為入口,創(chuàng)建并執(zhí)行抓取任務(wù)調(diào)度程序(抓取job),進(jìn)行映射化簡(jiǎn)(Map Reduce)分布式處理,從因特網(wǎng)/企業(yè)內(nèi)部網(wǎng) (Internet/Intranet網(wǎng))上抓取html頁(yè)面內(nèi)容、并結(jié)合元數(shù)據(jù)映射(Meta Data Mapping)過(guò)濾出有用的元數(shù)據(jù)源頁(yè)面;C對(duì)元數(shù)據(jù)源頁(yè)面進(jìn)行映射化簡(jiǎn)(Map Reduce)分布式處理,根據(jù)元數(shù)據(jù)映射 (Meta Data Mapping)以及各業(yè)務(wù)應(yīng)用系統(tǒng)的定義的元數(shù)據(jù)XSD結(jié)構(gòu)定義,即Meta Data XML Schema Define,生成目標(biāo)元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言(XML)文件;(3)互聯(lián)網(wǎng)分布式元數(shù)據(jù)采集系統(tǒng)的元數(shù)據(jù)輸出模塊將元數(shù)據(jù)采集組件生成的元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言(XML)文件輸出給各業(yè)務(wù)應(yīng)用系統(tǒng)。更進(jìn)一步的,所述業(yè)務(wù)應(yīng)用系統(tǒng)元數(shù)據(jù)采集配置包括以下三個(gè)方面(1)元數(shù)據(jù)來(lái)源站點(diǎn)URL列表(Site URL List)定義業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)將從哪些web站點(diǎn)去抓??;(2)元數(shù)據(jù)XSD 定義業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)的可擴(kuò)展標(biāo)記語(yǔ)言(XML)結(jié)構(gòu);(3)元數(shù)據(jù)映射具體定義業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)將從哪些URL的html源頁(yè)面上提取、html源頁(yè)面字段與目標(biāo)元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言XML字段之間的xpath(—種用于在 XML文檔中進(jìn)行導(dǎo)航的語(yǔ)言)對(duì)應(yīng)關(guān)系。更進(jìn)一步的,在步驟B中抓取流程為以元數(shù)據(jù)來(lái)源站點(diǎn)URL列表(Site URL List)為初始入口、結(jié)合抓取歷史記錄(Fetch History),生成第一等級(jí)(level 1)的抓取列表(fetch list),然后在各分布式節(jié)點(diǎn)上創(chuàng)建并執(zhí)行第一等級(jí)(level 1)的抓取任務(wù) (task)根據(jù)抓取列表里的URL逐個(gè)抓取html頁(yè)面,計(jì)算html頁(yè)面內(nèi)容的MD5值,在抓取歷史中查找此URL的記錄并比對(duì)MD5值A(chǔ))若上次成功抓取過(guò)URL且MD5值與上次相同,則更新抓取歷史記錄(Fetch History)、延長(zhǎng)此URL的抓取周期,然后直接進(jìn)入下一 URL的抓取處理;B)若未成功抓取過(guò)URL或是MD5值與上次不同,則需要完成以下三步后再進(jìn)入下一 URL的抓取處理Bi)若當(dāng)前抓取等級(jí)(fetch level)小于系統(tǒng)的最大抓取等級(jí)(max fetch level),則需解析出此html里的超鏈接link ;B2)如果當(dāng)前URL與元數(shù)據(jù)映射中的元數(shù)據(jù)映射單元(MetadataMappingUnit)的統(tǒng)一資源定位符前綴(URLPrefix)屬性匹配,則將此URL及html頁(yè)面內(nèi)容放入元數(shù)據(jù)源 (Meta Data Source) φ ;Β3)追加/更新抓取歷史(Fetch History)記錄,包括以下信息URL,抓取等級(jí) (fetch level),最近抓取狀態(tài),最近抓取時(shí)間,抓取周期,下次抓取時(shí)間=最近抓取時(shí)間+ 抓取周期;第一等級(jí)(level 1)的抓取任務(wù)(task)完成后,抓取任務(wù)(task)將返回解析 html所得的超鏈列表Qitml link list),抓取任務(wù)調(diào)度程序(抓取job)將根據(jù)超鏈列表 (html link list)、結(jié)合抓取歷史記錄(Fetch History)形成第二等級(jí)(level 2)的抓取列表(fetch list),創(chuàng)建并執(zhí)行下一個(gè)等級(jí)(next level)的抓取任務(wù)調(diào)度程序(抓取job), 依此迭代,直到達(dá)到系統(tǒng)指定的最大抓取等級(jí)(max level)才結(jié)束本輪抓取。更進(jìn)一步的,所述步驟C包括如下步驟1)從元數(shù)據(jù)源(Metadata Source)獲取一 html頁(yè)面內(nèi)容,將html格式化為可擴(kuò)展標(biāo)記語(yǔ)言格式Uml),根據(jù)xpath來(lái)讀取指定節(jié)點(diǎn)值;2)根據(jù)頁(yè)面的URL在元數(shù)據(jù)映射定義(Metadata Mapping)中查找對(duì)應(yīng)的元數(shù)據(jù)映射單元(MetadataMappingUnit),對(duì)每個(gè)匹配的元數(shù)據(jù)映射單元(MetadataMappingUnit) 做如下步驟幻至步驟6)處理3)根據(jù)元數(shù)據(jù)映射單元(MetadataMappingUnit)的每一頂?shù)脑?xpath(itemSourceXpath)值,對(duì)源html頁(yè)面按xpath中獲取到一個(gè)節(jié)點(diǎn)列表(Node列表);4)結(jié)合業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言XML結(jié)構(gòu)定義元數(shù)據(jù) XSD(Metadata XSD),將步驟3)得到的節(jié)點(diǎn)列表(Node列表)中的每一列轉(zhuǎn)換為一個(gè)元數(shù)據(jù)XML對(duì)象;5)根據(jù)元數(shù)據(jù)映射單元(MetadataMappingUnit)的字段映射(FieldMappings) 定義,為元數(shù)據(jù)XML對(duì)象的各字段賦值如果指定了期望關(guān)聯(lián)的頁(yè)面url地址 (relevantPageURLExp),則根據(jù)期望關(guān)聯(lián)的頁(yè)面url地址(relevantPageURLExp)得出相關(guān)頁(yè)面URL并抓取相關(guān)頁(yè)面;根據(jù)期望的源xpath (sourceXpathExp)從源頁(yè)面或源頁(yè)面的相關(guān)頁(yè)面中得到xpath所對(duì)應(yīng)的節(jié)點(diǎn)值;如果指定了期望的值格式化(valuei^ormatExp),則進(jìn)一步對(duì)得到的節(jié)點(diǎn)值進(jìn)行格式化處理;將節(jié)點(diǎn)值賦給目標(biāo)xpath(targetXpath)所指定的元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言對(duì)象(XML對(duì)象)的對(duì)應(yīng)字段上;6)將元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言對(duì)象(XML對(duì)象)序列化為可擴(kuò)展標(biāo)記語(yǔ)言(XML)文件并按應(yīng)用程序唯一編碼applD分目錄存儲(chǔ);7)從元數(shù)據(jù)源(Metadata Source)中刪除此html頁(yè)面;8)重復(fù)步驟1)至步驟7,直至元數(shù)據(jù)源(Metadata Source)為空。本發(fā)明所述的這種互聯(lián)網(wǎng)元數(shù)據(jù)的分布式采集處理系統(tǒng),該系統(tǒng)包括配置管理圖形用戶接口(GUI)模塊、元數(shù)據(jù)采集組件模塊和元數(shù)據(jù)輸出模塊,其中,配置管理圖形用戶接口(⑶I)模塊為業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)采集配置提供圖形用戶接口(GUI)界面,采集分布式組件參數(shù)配置,元數(shù)據(jù)采集和輸入日志查看;元數(shù)據(jù)采集組件模塊元數(shù)據(jù)采集的分布式組件,讀取各業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)采集配置,周期性地創(chuàng)建并分布式執(zhí)行采集任務(wù)調(diào)度程序、生成各業(yè)務(wù)應(yīng)用系統(tǒng)的所需要的元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言(XML)文件;元數(shù)據(jù)輸出模塊負(fù)責(zé)將元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言(XML)文件輸出給各業(yè)務(wù)應(yīng)用系統(tǒng)。本發(fā)明有益的效果是為互聯(lián)網(wǎng)的元數(shù)據(jù)采集提供了通用、開(kāi)放式的分布式組件和服務(wù),通過(guò)實(shí)現(xiàn)通用的海量元數(shù)據(jù)的采集組件和系統(tǒng),為進(jìn)一步實(shí)現(xiàn)互聯(lián)網(wǎng)電視的站內(nèi)精準(zhǔn)搜索、內(nèi)容聚合型應(yīng)用的垂直搜索提供統(tǒng)一規(guī)范的數(shù)據(jù)源。


圖1為本發(fā)明互聯(lián)網(wǎng)分布式元數(shù)據(jù)采集系統(tǒng)的基本模塊結(jié)構(gòu)圖;圖2為本發(fā)明互聯(lián)網(wǎng)分布式元數(shù)據(jù)采集組件的基本流程原理圖;圖3為本發(fā)明互聯(lián)網(wǎng)分布式元數(shù)據(jù)采集組件的頁(yè)面抓取流程圖;圖4為本發(fā)明互聯(lián)網(wǎng)分布式元數(shù)據(jù)采集組件的元數(shù)據(jù)XML生成流程圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,下面結(jié)合舉例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的舉例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。如圖1所示,為本發(fā)明互聯(lián)網(wǎng)分布式元數(shù)據(jù)采集系統(tǒng)的基本模塊結(jié)構(gòu)圖,本實(shí)施例包括以下模塊和步驟步驟1 各業(yè)務(wù)應(yīng)用系統(tǒng)通過(guò)互聯(lián)網(wǎng)分布式元數(shù)據(jù)采集系統(tǒng)的配置管理(⑶I)模塊配置提交元數(shù)據(jù)采集需求;業(yè)務(wù)應(yīng)用系統(tǒng)元數(shù)據(jù)采集配置主要包括以下三個(gè)方面 元數(shù)據(jù)來(lái)源站點(diǎn)URL列表(Site URL List)定義業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)將從哪些web站點(diǎn)去抓取; 元數(shù)據(jù)XSD (Metadata XML Schema Define)定義業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)的XML 結(jié)構(gòu); 元數(shù)據(jù)映射(Meta data Mapping)具體定義業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)將從哪些 url的html源頁(yè)面上提取、html源頁(yè)面字段與目標(biāo)元數(shù)據(jù)XML字段之間的xpath對(duì)應(yīng)關(guān)系元數(shù)據(jù)映射(Metadata Mapping)以 XML 方式定義,其 XSD (XML Schema Define)
如下< xml version = "1.0" encoding = "UTF 8" >
<xs:schema xmlns:xs = "http://www.w3.org/2001/XMLSchema" elementFormDefault= "qualified" attribute Form Defa ult="unqualified">
<xs: element name="MetadataMapping"> <xs:an 門(mén) otation>
<xs: documentation >元數(shù)據(jù)映射定義 </xs: documentation〉
</xs:annotation> <xs:complexType> <xs:seque 門(mén) ce>
<xs: element name= "MetadataMappingUnit" type= "MetadataMappingUnit"
maxOccurs= "unbounded "> <xs:an 門(mén) otation>
<xs: documentation > 元數(shù)據(jù)映射單元 </xs: documentation〉 </xs:annotation> </xs:element> </xs:seque 門(mén) ce> </xs:complexType> </xs:element> <xs:complexType name="MetadataMappingUnit"> <xs:complexType name="FieldMappings"> <xs:a 門(mén)門(mén) otation><xs: documentation > 元數(shù)據(jù)字段映射 </xs: documentation〉
</xs:annotation> <xs:sequence>
<xs:element name= "relevantPagellrlExp'' type="xs:string'' min0ccurs="0"> <xs:annotation>
<xs:documentation>ffi關(guān)頁(yè)面 URL 表達(dá)式</xs:documentation> </xs:annotation> </xs:element>
<xs:element name="sourceXpathExp" type="xs:string "> <xs:annotation>
<xs:documentation>字段值來(lái)源xpath 表達(dá)式</xs:documentation〉 </xs:annotation> </xs:element>
<xs:element name="valueFormatExp'' type="xs:string" min0ccurs = "0"> <xs:annotation>
<xs: documentation > 字段值格式化表達(dá)式 </xs: documentation〉 </xs:annotation> </xs:element> <xs:element name="targetXpath" type="xs:string"> <xs:annotation>
<xs: documentation >字段目標(biāo) xpath </xs: documentation > </xs:annotation> </xs:element> </xs:sequence> </xs:complexType> <xs:complexType name= 'MetadataItemType"> <xs:sequence>
<xs:element name= "itemSourceXpath" type="xs:string ">
<xs:annotation>
<xs: documentation〉)^應(yīng)的源 xpath </xs: documentation > </xs:annotation></xs:element>
<xs:element name="FieldMappings" type="FieldMappings" maxOccurs="unbounded"> <xs:a 門(mén) notation〉
<xs: documentation > 字段映 If </xs: documentation〉 </xs:annotation> </xs:element> </xs:sequence> </xs:complexType>
</xs:schema>可以定義1至多個(gè)映射單元(MetadataMappingUnit),映射單元決定了從web站點(diǎn)抓取到的哪些頁(yè)面將成為元數(shù)據(jù)源(Metadata Source) :ur 1與映射單元 (MetadataMappingUnit)的urlPref ix字段值匹配的html頁(yè)面被轉(zhuǎn)換為業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)XML文件,而映射單元(MetadataMappingUnit)的元數(shù)據(jù)項(xiàng)(Metadataltem)則描述了 html頁(yè)面轉(zhuǎn)換為元數(shù)據(jù)XML文件的具體規(guī)則根據(jù)每一項(xiàng)的源Xpath (UemSourceXpath)從html源頁(yè)面獲取到元數(shù)據(jù)節(jié)點(diǎn)列表(Node List),該列表中的每一項(xiàng)將對(duì)應(yīng)生成一個(gè)元數(shù)據(jù)XML,元數(shù)據(jù)XML的字段值則是在一至多個(gè)字段映射(Fi el (!Mappings)中具體定義targetXpath表示元數(shù)據(jù)目標(biāo)字段; relevantPageUrlExp若指定此項(xiàng),表示此元數(shù)據(jù)目標(biāo)字段值不是來(lái)源于當(dāng)前html、而是來(lái)源于一個(gè)與當(dāng)前html頁(yè)面相關(guān)的html頁(yè)面;sourceXpathExp 表示此元數(shù)據(jù)目標(biāo)字段值是根據(jù)這里指定的xpath表達(dá)式去獲取,如果指定了 relevantPagetolExp,則xpath是相關(guān)頁(yè)面的xpath,若未指定relevantPagetolExp,則xpath是當(dāng)前頁(yè)面的xpath、如果是相對(duì) xpath,則是相對(duì)于itemSourceXpath的;valuei^ormatExp則是定義了如何對(duì)值進(jìn)行格式化處理??傊?,元數(shù)據(jù)源html頁(yè)面與元數(shù)據(jù)目標(biāo)XML可以是多對(duì)多的映射關(guān)系一個(gè)元數(shù)據(jù)源html頁(yè)面可以生成一或多個(gè)元數(shù)據(jù)XML文件,一個(gè)元數(shù)據(jù)XML的字段值也可以來(lái)源于一個(gè)以上的html頁(yè)面。另外,業(yè)務(wù)應(yīng)用系統(tǒng)元數(shù)據(jù)采集配置也包括配置元數(shù)據(jù)XM L文件輸出給業(yè)務(wù)應(yīng)用系統(tǒng)的方式S0AP或FTP。步驟2 互聯(lián)網(wǎng)分布式元數(shù)據(jù)采集系統(tǒng)的元數(shù)據(jù)采集組件模塊周期性地創(chuàng)建和執(zhí)行頁(yè)面采集的任務(wù)調(diào)度程序(job)、元數(shù)據(jù)XML生成job ;具體流程設(shè)計(jì)見(jiàn)下面關(guān)于圖2的說(shuō)明;步驟3 互聯(lián)網(wǎng)分布式元數(shù)據(jù)采集系統(tǒng)的元數(shù)據(jù)輸出模塊將元數(shù)據(jù)采集組件生成的元數(shù)據(jù)XML文件輸出給各業(yè)務(wù)應(yīng)用系統(tǒng);輸出模塊將按應(yīng)用系統(tǒng)指定的方式S0AP或FTP,逐個(gè)或是打包發(fā)送給業(yè)務(wù)應(yīng)用系統(tǒng)。如圖2所示,為本發(fā)明互聯(lián)網(wǎng)分布式元數(shù)據(jù)采集組件的基本流程原理圖,本實(shí)施例包括以下步驟步驟1 讀取各業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)采集配置,歸并各業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)采集配置信息的輸入(Site URL List)和輸出(Meta Data Mapping);不同業(yè)務(wù)應(yīng)用系統(tǒng)可能對(duì)同一 Site的頁(yè)面有抓取需求,歸并輸入可以最大程度地減少元數(shù)據(jù)采集組件對(duì)同一 Site的頁(yè)面請(qǐng)求次數(shù);歸并輸出可以對(duì)元數(shù)據(jù)源頁(yè)面進(jìn)行集中的解析和轉(zhuǎn)換處理,有效提升元數(shù)據(jù)采集系統(tǒng)的吞吐率;步驟2 以元數(shù)據(jù)來(lái)源站點(diǎn)URL列表(Site URL List)為初始入口,創(chuàng)建并執(zhí)行抓取任務(wù)調(diào)度程序(抓取job),進(jìn)行映射化簡(jiǎn)(Map Reduce)分布式處理,從hternet/ htranet網(wǎng)上抓取html頁(yè)面內(nèi)容、并結(jié)合元數(shù)據(jù)映射(Meta Data Mapping)定義過(guò)濾出有用的元數(shù)據(jù)源頁(yè)面;元數(shù)據(jù)采集分布式組件周期性地創(chuàng)建并執(zhí)行抓取job,如圖3所示,元數(shù)據(jù)采集組件的抓取流程為以元數(shù)據(jù)來(lái)源站點(diǎn)URL列表(Site URL List)為初始入口、結(jié)合抓取歷史記錄(Fetch History),生成第一等級(jí)(level 1)的抓取列表(fetch list),然后在各分布式節(jié)點(diǎn)上創(chuàng)建并執(zhí)行第一等級(jí)(level 1)的抓取任務(wù)(task)根據(jù)抓取列表(fetch list)里的url逐個(gè)抓取html頁(yè)面,計(jì)算html頁(yè)面內(nèi)容的 MD5值,在抓取歷史記錄(Fetch History)中查找此url的記錄并比對(duì)MD5值A(chǔ))若上次成功抓取過(guò)url且MD5值與上次相同,則更新抓取歷史i^etch History、 延長(zhǎng)此url的抓取周期,然后直接進(jìn)入下一 url的抓取處理;B)若未成功抓取過(guò)url或是MD5值與上次不同,則需要完成以下三步后再進(jìn)入下一 url的抓取處理Bi)若當(dāng)前抓取等級(jí)(fetch level)小于系統(tǒng)最大抓取等級(jí)(max fetch level), 則需解析出此html里的超鏈接(link);B2)如果當(dāng)前url與元數(shù)據(jù)映射(Metadata Mapping)中的元數(shù)據(jù)映射單元 (MetadataMappingUnit)的urlPrefix屬性匹配,則將此url及html頁(yè)面內(nèi)容放入元數(shù)據(jù) iH (Meta Data Source) ψ ;Β3)追加/更新抓取歷史(Fetch History)記錄,包括以下信息url,抓取等級(jí) (fetch level),最近抓取狀態(tài),最近抓取時(shí)間,抓取周期,下次抓取時(shí)間=(最近抓取時(shí)間 +抓取周期);第一等級(jí)(level 1)的抓取任務(wù)(task)完成后,抓取任務(wù)(task)將返回解析 html所得的超鏈列表Qitml link list),抓取任務(wù)調(diào)度程序(抓取job)將根據(jù)超鏈列表 (html link list)、結(jié)合抓取歷史記錄(Fetch History)形成第二等級(jí)(level 2)的抓取列表(fetch list),創(chuàng)建并執(zhí)行下一個(gè)等級(jí)(next level)的抓取任務(wù)調(diào)度程序(抓取job), 依此迭代,直到達(dá)到系統(tǒng)指定的最大抓取等級(jí)(max level)才結(jié)束本輪抓取。步驟3 創(chuàng)建元數(shù)據(jù)生成job,對(duì)元數(shù)據(jù)源(Metadata Source)進(jìn)行映射化簡(jiǎn)(Map Reduce)分布式處理,根據(jù)元數(shù)據(jù)映射定義(Meta Data Mapping)以及各業(yè)務(wù)應(yīng)用系統(tǒng)的定義的元數(shù)據(jù)XML定義XSD(Meta Data XML Schema Define)生成目標(biāo)元數(shù)據(jù)XML文件。如圖4所示,元數(shù)據(jù)生成步驟為1)從元數(shù)據(jù)源(Metadata Source)獲取一 html頁(yè)面內(nèi)容,將html格式化為可擴(kuò)展標(biāo)記語(yǔ)言格式(xml),以方便根據(jù)xpath來(lái)讀取指定節(jié)點(diǎn)值;2)根據(jù)頁(yè)面的URL在元數(shù)據(jù)映射定義(Metadata Mapping)中查找對(duì)應(yīng)的元數(shù)據(jù)映射單元(MetadataMappingUnit),對(duì)每個(gè)匹配的元數(shù)據(jù)映射單元(MetadataMappingUnit) 做如下步驟幻至步驟6)處理3)根據(jù)元數(shù)據(jù)映射單元(MetadataMappingUnit)的每一頂?shù)脑?xpath(itemSourceXpath)值,對(duì)源html頁(yè)面按xpath中獲取到一個(gè)節(jié)點(diǎn)列表(Node列表);4)結(jié)合業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言XML結(jié)構(gòu)定義元數(shù)據(jù) XSD(Metadata XSD),將步驟3)得到的節(jié)點(diǎn)列表(Node列表)中的每一列轉(zhuǎn)換為一個(gè)元數(shù)據(jù)XML對(duì)象;5)根據(jù)元數(shù)據(jù)映射單元(MetadataMappingUnit)的字段映射(FieldMappings) 定義,為元數(shù)據(jù)XML對(duì)象的各字段賦值如果指定了期望關(guān)聯(lián)的頁(yè)面url地址 (relevantPageURLExp),則根據(jù)期望關(guān)聯(lián)的頁(yè)面url地址(relevantPageURLExp)得出相關(guān)頁(yè)面URL并抓取相關(guān)頁(yè)面;根據(jù)期望的源xpath (sourceXpathExp)從源頁(yè)面或源頁(yè)面的相關(guān)頁(yè)面中得到xpath所對(duì)應(yīng)的節(jié)點(diǎn)值;如果指定了期望的值格式化(valuei^ormatExp),則進(jìn)一步對(duì)得到的節(jié)點(diǎn)值進(jìn)行格式化處理;將節(jié)點(diǎn)值賦給目標(biāo)xpath(targetXpath)所指定的元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言對(duì)象(XML對(duì)象)的對(duì)應(yīng)字段上;6)將元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言對(duì)象(XML對(duì)象)序列化為可擴(kuò)展標(biāo)記語(yǔ)言(XML)文件并按應(yīng)用程序唯一編碼applD分目錄存儲(chǔ);7)從元數(shù)據(jù)源(Metadata Source)中刪除此html頁(yè)面;8)重復(fù)步驟1)至步驟7,直至元數(shù)據(jù)源(Metadata Source)為空。該發(fā)明為元數(shù)據(jù)的采集提供了通用的、海量數(shù)據(jù)的分布式處理方法,為IPTV、互聯(lián)網(wǎng)電視平臺(tái)實(shí)現(xiàn)站內(nèi)搜索提供統(tǒng)一格式的元數(shù)據(jù),為第三方開(kāi)發(fā)內(nèi)容聚合型互聯(lián)網(wǎng)電視增值應(yīng)用提供了必要的支撐服務(wù),從而降低第三方開(kāi)發(fā)互聯(lián)網(wǎng)增值應(yīng)用的門(mén)檻和難度、縮短其開(kāi)發(fā)周期。術(shù)語(yǔ)解釋SaaS軟件即服務(wù)或軟件運(yùn)營(yíng)URL統(tǒng)一資源定位符Site URL List元數(shù)據(jù)來(lái)源站點(diǎn)URL列表Meta Data Mapping 元數(shù)據(jù)映射Map Reduce映射化簡(jiǎn)Internet/Intranet 因特網(wǎng)/企業(yè)內(nèi)部網(wǎng)Xml可擴(kuò)展標(biāo)記語(yǔ)言XSD全稱 XML khemas Definition (xml 結(jié)構(gòu)定義)Meta Data XML Schema Define元數(shù)據(jù) xml 結(jié)構(gòu)定義Xpath一種用于在XML文檔中進(jìn)行導(dǎo)航的
;五 ta πFetch History抓取歷史fetch list抓取列表task抓取任務(wù)level 1抓取第一等級(jí)0099]MD5消息摘要算法第五版0100]fetch level抓取等級(jí)0101]max fetch level最大抓取等級(jí)0102]link超鏈接0103]MetadataMappingUnit元數(shù)據(jù)映射單元0104]urlPrefix統(tǒng)一資源定位符前綴0105]Meta Data Source元數(shù)據(jù)源0106]html link list超鏈列表0107]抓取job抓取任務(wù)調(diào)度程序0108]next level下一個(gè)等級(jí)0109]Metadata Mapping數(shù)據(jù)映射定義0110]itemSourceXpath每一項(xiàng)的源xpath0111]Node列表節(jié)點(diǎn)列表0112]Metadata XSD元數(shù)據(jù)xsd0113]FieldMappings字段映射0114]re1evantPageUrIExp期望關(guān)聯(lián)的頁(yè)面url地址0115]sourceXpathExp期望的源xpath0116]valueFormatExp期望的值格式化0117]targetXpath目標(biāo)xpath0118]applD應(yīng)用程序唯一編碼0119]GUI圖形用戶接口0120]采集job采集的任務(wù)調(diào)度程序0121]Metadataltem元數(shù)據(jù)項(xiàng)0122]Node List節(jié)點(diǎn)列表0123]SOAP簡(jiǎn)單對(duì)象訪問(wèn)協(xié)議0124]FTP文件傳輸協(xié)議0125]可以理解的是,對(duì)本領(lǐng)域技術(shù)人員來(lái)說(shuō),對(duì)本發(fā)明的技術(shù)方案及發(fā)明構(gòu)思加以等
同替換或改變都應(yīng)屬于本發(fā)明所附的權(quán)利要求的保護(hù)范圍。
權(quán)利要求
1.一種互聯(lián)網(wǎng)元數(shù)據(jù)的分布式采集處理方法,其特征是該方法的具體步驟為(1)各業(yè)務(wù)應(yīng)用系統(tǒng)通過(guò)互聯(lián)網(wǎng)分布式元數(shù)據(jù)采集系統(tǒng)的配置管理模塊配置提交元數(shù)據(jù)采集需求;(2)互聯(lián)網(wǎng)分布式元數(shù)據(jù)采集系統(tǒng)的元數(shù)據(jù)采集組件模塊周期性地創(chuàng)建和執(zhí)行頁(yè)面采集任務(wù)調(diào)度程序、生成的元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言文件;A讀取各業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)采集配置,歸并各業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)采集需求信息的輸入元數(shù)據(jù)來(lái)源站點(diǎn)URL列表和輸出元數(shù)據(jù)映射;B以輸入元數(shù)據(jù)來(lái)源站點(diǎn)URL列表為入口,創(chuàng)建并執(zhí)行抓取任務(wù)調(diào)度程序,進(jìn)行映射化簡(jiǎn)分布式處理,從因特網(wǎng)/企業(yè)內(nèi)部網(wǎng)上抓取html頁(yè)面內(nèi)容、并結(jié)合元數(shù)據(jù)映射過(guò)濾出有用的元數(shù)據(jù)源頁(yè)面;C對(duì)元數(shù)據(jù)源頁(yè)面進(jìn)行映射化簡(jiǎn)分布式處理,根據(jù)元數(shù)據(jù)映射以及各業(yè)務(wù)應(yīng)用系統(tǒng)的定義的元數(shù)據(jù)結(jié)構(gòu)定義,生成目標(biāo)元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言文件;(3)互聯(lián)網(wǎng)分布式元數(shù)據(jù)采集系統(tǒng)的元數(shù)據(jù)輸出模塊將元數(shù)據(jù)采集組件生成的元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言文件輸出給各業(yè)務(wù)應(yīng)用系統(tǒng)。
2.根據(jù)權(quán)利要求1所述的互聯(lián)網(wǎng)元數(shù)據(jù)的分布式采集處理方法,其特征是所述業(yè)務(wù)應(yīng)用系統(tǒng)元數(shù)據(jù)采集配置包括以下三個(gè)方面(1)元數(shù)據(jù)來(lái)源站點(diǎn)URL列表定義業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)將從哪些web站點(diǎn)去抓取;(2)元數(shù)據(jù)結(jié)構(gòu)定義定義業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)的可擴(kuò)展標(biāo)記語(yǔ)言結(jié)構(gòu);(3)元數(shù)據(jù)映射具體定義業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)將從哪些URL的html源頁(yè)面上提取、 html源頁(yè)面字段與目標(biāo)元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言字段之間的xpath對(duì)應(yīng)關(guān)系。
3.根據(jù)權(quán)利要求1所述的互聯(lián)網(wǎng)元數(shù)據(jù)的分布式采集處理方法,其特征是在步驟B 中抓取流程為以元數(shù)據(jù)來(lái)源站點(diǎn)URL列表為初始入口、結(jié)合抓取歷史記錄,生成第一等級(jí)的抓取列表,然后在各分布式節(jié)點(diǎn)上創(chuàng)建并執(zhí)行第一等級(jí)的抓取任務(wù)根據(jù)抓取列表里的URL逐個(gè)抓取html頁(yè)面,計(jì)算html頁(yè)面內(nèi)容的MD5值,在抓取歷史中查找此URL的記錄并比對(duì)MD5值若上次成功抓取過(guò)URL且MD5值與上次相同,則更新抓取歷史記錄、延長(zhǎng)此URL的抓取周期,然后直接進(jìn)入下一 URL的抓取處理;若未成功抓取過(guò)URL或是MD5值與上次不同,則需要完成以下三步后再進(jìn)入下一 URL 的抓取處理Bi)若當(dāng)前抓取等級(jí)小于系統(tǒng)的最大抓取等級(jí),則需解析出此html里的超鏈接;B2)如果當(dāng)前URL與元數(shù)據(jù)映射中的元數(shù)據(jù)映射單元的統(tǒng)一資源定位符前綴屬性匹配,則將此URL及html頁(yè)面內(nèi)容放入元數(shù)據(jù)源中;B3)追加/更新抓取歷史記錄,包括以下信息URL,抓取等級(jí),最近抓取狀態(tài),最近抓取時(shí)間,抓取周期,下次抓取時(shí)間=最近抓取時(shí)間+抓取周期;第一等級(jí)的抓取任務(wù)完成后,抓取任務(wù)將返回解析html所得的超鏈列表,抓取任務(wù)調(diào)度程序j將根據(jù)超鏈列表、結(jié)合抓取歷史記錄形成第二等級(jí)的抓取列表,創(chuàng)建并執(zhí)行下一個(gè)等級(jí)的抓取任務(wù)調(diào)度程序,依此迭代,直到達(dá)到系統(tǒng)指定的最大抓取等級(jí)才結(jié)束本輪抓取。
4.根據(jù)權(quán)利要求1所述的互聯(lián)網(wǎng)元數(shù)據(jù)的分布式采集處理方法,其特征是所述步驟C包括如下步驟1)從元數(shù)據(jù)源獲取一html頁(yè)面內(nèi)容,將html格式化為可擴(kuò)展標(biāo)記語(yǔ)言格式,根據(jù) xpath來(lái)讀取指定節(jié)點(diǎn)值;2)根據(jù)頁(yè)面的URL在元數(shù)據(jù)映射定義中查找對(duì)應(yīng)的元數(shù)據(jù)映射單元,對(duì)每個(gè)匹配的元數(shù)據(jù)映射單元做如下步驟3)至步驟6)處理3)根據(jù)元數(shù)據(jù)映射單元的每一頂?shù)脑磝path值,對(duì)源html頁(yè)面按xpath中獲取到一個(gè)節(jié)點(diǎn)列表;4)結(jié)合業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言結(jié)構(gòu)定義元數(shù)據(jù)XSD,將步驟3)得到的節(jié)點(diǎn)列表中的每一列轉(zhuǎn)換為一個(gè)元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言對(duì)象;5)根據(jù)元數(shù)據(jù)映射單元的字段映射定義,為元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言對(duì)象的各字段賦值如果指定了期望關(guān)聯(lián)的頁(yè)面url地址,則根據(jù)期望關(guān)聯(lián)的頁(yè)面url地址得出相關(guān)頁(yè)面 URL并抓取相關(guān)頁(yè)面;根據(jù)期望的源xpath從源頁(yè)面或源頁(yè)面的相關(guān)頁(yè)面中得到xpath所對(duì)應(yīng)的節(jié)點(diǎn)值;如果指定了期望的值格式化,則進(jìn)一步對(duì)得到的節(jié)點(diǎn)值進(jìn)行格式化處理; 將節(jié)點(diǎn)值賦給目標(biāo)xpath所指定的元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言對(duì)象的對(duì)應(yīng)字段上;6)將元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言對(duì)象序列化為可擴(kuò)展標(biāo)記語(yǔ)言文件并按應(yīng)用程序唯一編碼分目錄存儲(chǔ);7)從元數(shù)據(jù)源中刪除此html頁(yè)面;8)重復(fù)步驟1)至步驟7),直至元數(shù)據(jù)源為空。
5. 一種采用如權(quán)利要求1所述互聯(lián)網(wǎng)元數(shù)據(jù)的分布式采集處理方法的系統(tǒng),其特征是該系統(tǒng)包括配置管理圖形用戶接口模塊、元數(shù)據(jù)采集組件模塊和元數(shù)據(jù)輸出模塊,其中,配置管理圖形用戶接口模塊為業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)采集配置提供圖形用戶接口界面,采集分布式組件參數(shù)配置,元數(shù)據(jù)采集和輸入日志查看;元數(shù)據(jù)采集組件模塊元數(shù)據(jù)采集的分布式組件,讀取各業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)采集配置,周期性地創(chuàng)建并分布式執(zhí)行采集任務(wù)調(diào)度程序、生成各業(yè)務(wù)應(yīng)用系統(tǒng)的所需要的元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言文件;元數(shù)據(jù)輸出模塊負(fù)責(zé)將元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言文件輸出給各業(yè)務(wù)應(yīng)用系統(tǒng)。
全文摘要
本發(fā)明涉及一種互聯(lián)網(wǎng)元數(shù)據(jù)的分布式采集處理系統(tǒng)及方法,該系統(tǒng)包括配置管理圖形用戶接口模塊、元數(shù)據(jù)采集組件模塊和元數(shù)據(jù)輸出模塊,配置管理圖形用戶接口模塊采集分布式組件參數(shù)配置,元數(shù)據(jù)采集和輸入日志查看;元數(shù)據(jù)采集組件模塊讀取各業(yè)務(wù)應(yīng)用系統(tǒng)的元數(shù)據(jù)采集配置,周期性地創(chuàng)建并分布式執(zhí)行采集任務(wù)調(diào)度程序、生成各業(yè)務(wù)應(yīng)用系統(tǒng)的所需要的元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言文件;元數(shù)據(jù)輸出模塊負(fù)責(zé)將元數(shù)據(jù)可擴(kuò)展標(biāo)記語(yǔ)言文件輸出給各業(yè)務(wù)應(yīng)用系統(tǒng)。本發(fā)明有益的效果是:為互聯(lián)網(wǎng)的元數(shù)據(jù)采集提供了通用、開(kāi)放式的分布式組件和服務(wù),為進(jìn)一步實(shí)現(xiàn)互聯(lián)網(wǎng)電視的站內(nèi)精準(zhǔn)搜索、內(nèi)容聚合型應(yīng)用的垂直搜索提供統(tǒng)一規(guī)范的數(shù)據(jù)源。
文檔編號(hào)G06F17/30GK102521232SQ20111035149
公開(kāi)日2012年6月27日 申請(qǐng)日期2011年11月9日 優(yōu)先權(quán)日2011年11月9日
發(fā)明者萬(wàn)超, 付文敬, 楊細(xì)強(qiáng) 申請(qǐng)人:Ut斯達(dá)康通訊有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
呼和浩特市| 阳泉市| 江孜县| 温宿县| 铜鼓县| 乡宁县| 临泉县| 通江县| 仙居县| 托克逊县| 始兴县| 门源| 云南省| 荥阳市| 潼关县| 贵德县| 海淀区| 汝阳县| 惠安县| 土默特左旗| 新蔡县| 灌南县| 巴马| 秦皇岛市| 隆德县| 铁力市| 安岳县| 工布江达县| 舒城县| 盐城市| 商水县| 吐鲁番市| 库伦旗| 海口市| 松江区| 维西| 梨树县| 壶关县| 南康市| 厦门市| 莱芜市|