專利名稱:聚集和搜索來自多個服務(wù)的簡檔數(shù)據(jù)的制作方法
聚集和搜索來自多個服務(wù)的簡檔數(shù)據(jù)
站旦 冃豕
因特網(wǎng)以及諸如內(nèi)聯(lián)網(wǎng)和外聯(lián)網(wǎng)等其它計算機(jī)網(wǎng)絡(luò)的不斷發(fā)展已經(jīng)帶來 了許多新的網(wǎng)絡(luò)服務(wù),包括個人和專業(yè)網(wǎng)絡(luò)服務(wù)。許多人具有允許用戶維護(hù)簡 檔的各個網(wǎng)絡(luò)服務(wù)的一個或多個帳戶。這些簡檔可包括社會和專業(yè)網(wǎng)絡(luò)關(guān)系、 聯(lián)系人信息、博客、共享的照片、視頻、分類廣告和其它內(nèi)容。
盡管若干網(wǎng)絡(luò)服務(wù)可用,但它們通常包含單獨的數(shù)據(jù)并且相互獨立地操 作。為了體驗和査看在不同網(wǎng)絡(luò)上的用戶簡檔,進(jìn)行査看的用戶必須訪問第二 用戶已經(jīng)訂閱的每一個服務(wù)。遍歷單獨的網(wǎng)絡(luò)服務(wù)以査看和搜索單獨的簡檔是 很麻煩的,即使進(jìn)行査看的用戶知道要査看的每一個用戶簡檔的位置(也可能 不是這樣)。
概述
大致描述的本發(fā)明的技術(shù)使一個主網(wǎng)絡(luò)服務(wù)的用戶能夠聚集并訪問來自 多個網(wǎng)絡(luò)服務(wù)的簡檔數(shù)據(jù)。 一個或多個副網(wǎng)絡(luò)服務(wù)和主網(wǎng)絡(luò)服務(wù)的用戶簡檔數(shù) 據(jù)在該主網(wǎng)絡(luò)服務(wù)內(nèi)聚集。所組合的副網(wǎng)絡(luò)服務(wù)數(shù)據(jù)和主網(wǎng)絡(luò)服務(wù)數(shù)據(jù)可包括 具有該主網(wǎng)絡(luò)服務(wù)的帳戶的用戶的用戶簡檔數(shù)據(jù)和關(guān)系數(shù)據(jù)。多個網(wǎng)絡(luò)服務(wù)的 簡檔數(shù)據(jù)可作為聚集或合并的簡檔來同時示出。
存在于主網(wǎng)絡(luò)服務(wù)和一個或多個副網(wǎng)絡(luò)服務(wù)中的用戶-聯(lián)系人關(guān)系圖可基 于存儲在主網(wǎng)絡(luò)服務(wù)中的每一個服務(wù)的關(guān)系數(shù)據(jù)來構(gòu)建、遍歷和搜索。在構(gòu)造 時,可使用該圖來遍歷在任一個網(wǎng)絡(luò)服務(wù)中都沒有任何直接連接的用戶之間的 間接連接。
在某些實施例中,取得來自一個或多個副網(wǎng)絡(luò)服務(wù)的簡檔數(shù)據(jù)。這些數(shù)據(jù)
可通過爬行機(jī)制,經(jīng)由應(yīng)用程序接口、RSS訂閱源或使用某種其它機(jī)制來取得。 存儲并可任選地處理所取得的簡檔數(shù)據(jù)。所存儲的數(shù)據(jù)包括所訪問的副網(wǎng)絡(luò)服 務(wù)簡檔中的每一個的用戶簡檔數(shù)據(jù)和用戶關(guān)系數(shù)據(jù)。在某些實施例中,可移除 所存儲的與每一個聯(lián)系人簡檔相關(guān)聯(lián)的關(guān)系數(shù)據(jù)以防止重復(fù)的連接數(shù)據(jù)。隨后
7可基于所存儲的簡檔內(nèi)容和關(guān)系數(shù)據(jù)來査詢和提供多個網(wǎng)絡(luò)簡檔數(shù)據(jù)。
在一實施例中,第一主網(wǎng)絡(luò)服務(wù)用戶被標(biāo)識為具有由主網(wǎng)絡(luò)服務(wù)維護(hù)的簡 檔數(shù)據(jù)的用戶。從副網(wǎng)絡(luò)服務(wù)取得與該第一用戶相關(guān)聯(lián)的第二簡檔數(shù)據(jù)集。主 網(wǎng)絡(luò)服務(wù)和副網(wǎng)絡(luò)服務(wù)彼此分開存儲它們各自的用戶簡檔數(shù)據(jù)。所取得的第二 簡檔數(shù)據(jù)集被存儲在與第一主網(wǎng)絡(luò)服務(wù)相關(guān)聯(lián)的一個或多個數(shù)據(jù)存儲中。存儲 數(shù)據(jù)可包括將主網(wǎng)絡(luò)服務(wù)簡檔數(shù)據(jù)和副網(wǎng)絡(luò)服務(wù)簡檔數(shù)據(jù)聚集在一個或多個 數(shù)據(jù)存儲中。
在一實施例中,從多個網(wǎng)絡(luò)聚集的數(shù)據(jù)可響應(yīng)于請求而提供。可接收對主 網(wǎng)絡(luò)服務(wù)的一個或多個用戶簡檔的請求。隨后可在數(shù)據(jù)存儲中査詢所請求的一 個或多個簡檔。數(shù)據(jù)存儲可包含根據(jù)主網(wǎng)絡(luò)服務(wù)簡檔數(shù)據(jù)(第一簡檔數(shù)據(jù)集) 和副網(wǎng)絡(luò)服務(wù)簡檔數(shù)據(jù)(第二簡檔數(shù)據(jù)集)構(gòu)建的聚集簡檔數(shù)據(jù),其中主網(wǎng)絡(luò) 服務(wù)和副網(wǎng)絡(luò)服務(wù)是通過網(wǎng)絡(luò)提供的單獨的服務(wù)。所聚集簡檔數(shù)據(jù)的子集基于 一個或多個第一簡檔數(shù)據(jù)集和一個或多個第二簡檔數(shù)據(jù)集中所包括的關(guān)系數(shù) 據(jù)來訪問。 一個或多個第二簡檔數(shù)據(jù)集中的關(guān)系數(shù)據(jù)包括主網(wǎng)絡(luò)服務(wù)的兩個用 戶之間的可信關(guān)系。該可信關(guān)系不是在主網(wǎng)絡(luò)服務(wù)的一個或多個第一簡檔數(shù)據(jù) 集中的關(guān)系數(shù)據(jù)中指定的。隨后將所聚集簡檔數(shù)據(jù)的子集提供給客戶機(jī)。
提供本概述以便以簡化的形式介紹將在以下的描述中進(jìn)一步描述的一些 概念。該概述不旨在標(biāo)識所要求保護(hù)的主題的關(guān)鍵特征或必要特征,也不旨在 用于幫助確定所要求保護(hù)的主題的范圍。
附圖簡述
圖1是用于聚集和査詢來自多個網(wǎng)絡(luò)服務(wù)的用戶簡檔的系統(tǒng)的實施例的 框圖。
圖2是數(shù)據(jù)存儲中的用戶簡檔數(shù)據(jù)的框圖。
圖3是用于實現(xiàn)本發(fā)明的技術(shù)的計算環(huán)境的實施例。
圖4A是不同的網(wǎng)絡(luò)服務(wù)中的用戶關(guān)系的示例。
圖4B是在多個網(wǎng)絡(luò)上的用戶間關(guān)系的示例。
圖5是用于訪問和存儲用戶簡檔數(shù)據(jù)的方法的實施例的流程圖。
圖6是用于構(gòu)造簡檔訪問信息的方法的流程圖和實施例。圖7是用于輸入副網(wǎng)絡(luò)服務(wù)數(shù)據(jù)的用戶界面的示例。
圖8是用于存儲副網(wǎng)絡(luò)服務(wù)的簡檔數(shù)據(jù)的方法的流程圖和實施例。
圖9是用于響應(yīng)于請求來提供簡檔數(shù)據(jù)的方法的實施例的流程圖。
圖IO是用于取得簡檔數(shù)據(jù)的方法的實施例的流程圖。
圖11是提供具有其多個網(wǎng)絡(luò)的關(guān)系數(shù)據(jù)的簡檔的內(nèi)容頁面的示例。
詳細(xì)描述
可從一個網(wǎng)絡(luò)服務(wù)組合并査詢來自多個網(wǎng)絡(luò)服務(wù)的簡檔數(shù)據(jù)。主網(wǎng)絡(luò)服務(wù)可存儲一個或多個副網(wǎng)絡(luò)服務(wù)和該主網(wǎng)絡(luò)服務(wù)的用戶簡檔數(shù)據(jù)。在存儲時,可聚集或合并來自多個網(wǎng)絡(luò)的數(shù)據(jù)。所存儲的副網(wǎng)絡(luò)服務(wù)數(shù)據(jù)和主網(wǎng)絡(luò)服務(wù)數(shù)據(jù)可包括主網(wǎng)絡(luò)服務(wù)具有其簡檔帳戶的每一個網(wǎng)絡(luò)服務(wù)的用戶簡檔數(shù)據(jù)和關(guān)系數(shù)據(jù)。在被請求時,可將多個網(wǎng)絡(luò)服務(wù)的簡檔數(shù)據(jù)作為聚集或合并的簡檔來示
出。例如,由華盛頓州雷蒙德市的微軟公司提供的主網(wǎng)絡(luò)服務(wù)"Windows LiveSpaces"可從副網(wǎng)絡(luò)服務(wù)取得數(shù)據(jù)并存儲這些數(shù)據(jù)。"Windows Live Spaces"
隨后可為其自己的用戶顯示還包括關(guān)于這些用戶的任何對應(yīng)的"引入鏈接
(Linkedln)"簡檔數(shù)據(jù)的簡檔。
可構(gòu)建、遍歷和搜索存在于主網(wǎng)絡(luò)服務(wù)和一個或多個副網(wǎng)絡(luò)服務(wù)中的用戶-聯(lián)系人關(guān)系圖。對這些數(shù)據(jù)的搜索和査詢可基于每一個服務(wù)的關(guān)系數(shù)據(jù)(其被存儲在主網(wǎng)絡(luò)服務(wù)中)來執(zhí)行。在構(gòu)造時,可使用該圖來遍歷那些在任一個網(wǎng)絡(luò)服務(wù)中都沒有任何直接連接的用戶之間的傳遞連接。
來自一個或多個副網(wǎng)絡(luò)服務(wù)的簡檔數(shù)據(jù)由主網(wǎng)絡(luò)服務(wù)的機(jī)制來取得。這些數(shù)據(jù)可通過爬行機(jī)制,經(jīng)由應(yīng)用程序接口、 RSS源或某種其它機(jī)制來取得。所取得的簡檔數(shù)據(jù)可包括所訪問的副網(wǎng)絡(luò)服務(wù)簡檔中的每一個的用戶簡檔數(shù)據(jù)和用戶關(guān)系數(shù)據(jù)。存儲所取得的數(shù)據(jù)并可基于所存儲的簡檔內(nèi)容和關(guān)系數(shù)據(jù)來査詢這些數(shù)據(jù)。
圖1是用于聚集和查詢多個網(wǎng)絡(luò)服務(wù)的用戶簡檔的系統(tǒng)的實施例的框圖。圖1的系統(tǒng)包括客戶機(jī)110、主網(wǎng)絡(luò)服務(wù)190、網(wǎng)絡(luò)服務(wù)爬行器150、副網(wǎng)絡(luò)服務(wù)192、副網(wǎng)絡(luò)服務(wù)194和網(wǎng)絡(luò)180。
客戶機(jī)110可通過網(wǎng)絡(luò)180與主網(wǎng)絡(luò)服務(wù)l卯和副網(wǎng)絡(luò)服務(wù)192通信??蛻魴C(jī)110可被實現(xiàn)為移動設(shè)備、臺式計算機(jī)、工作站或某種其它機(jī)器??蛻魴C(jī)
110包括用于通過網(wǎng)絡(luò)180訪問來自網(wǎng)絡(luò)服務(wù)器120和160的內(nèi)容的網(wǎng)絡(luò)瀏覽器115或瀏覽器客戶端。在某些實施例中,客戶機(jī)110處的用戶可訪問如由服務(wù)器120-130和數(shù)據(jù)存儲140提供的主網(wǎng)絡(luò)服務(wù)190的用戶帳戶。
網(wǎng)絡(luò)180可被實現(xiàn)為因特網(wǎng)或其它廣域網(wǎng)、局域網(wǎng)、內(nèi)聯(lián)網(wǎng)、外聯(lián)網(wǎng)、專用網(wǎng)絡(luò)或一個或多個其它網(wǎng)絡(luò)。
主網(wǎng)絡(luò)服務(wù)190通過網(wǎng)絡(luò)180與客戶機(jī)110通信并且包括網(wǎng)絡(luò)服務(wù)器120、應(yīng)用服務(wù)器130和數(shù)據(jù)存儲140。網(wǎng)絡(luò)服務(wù)器120可被實現(xiàn)為一個或多個服務(wù)器并且接收并處理來自客戶機(jī)110的請求。當(dāng)服務(wù)器180是因特網(wǎng)時,網(wǎng)絡(luò)服務(wù)器120可被實現(xiàn)為web服務(wù)器,該web服務(wù)器響應(yīng)于網(wǎng)絡(luò)瀏覽器115的請求來提供包括html內(nèi)容的內(nèi)容頁面或其它內(nèi)容。在處理這些請求時,網(wǎng)絡(luò)服務(wù)器120可調(diào)用應(yīng)用服務(wù)器130上的一個或多個應(yīng)用程序。
應(yīng)用服務(wù)器130可被實現(xiàn)為一個或多個服務(wù)器,其處理來自網(wǎng)絡(luò)服務(wù)器120的請求、生成請求響應(yīng)、并且可任選地高速緩存來自數(shù)據(jù)存儲140的數(shù)據(jù)。在被調(diào)用時,應(yīng)用服務(wù)器130上的應(yīng)用程序可訪問數(shù)據(jù)存儲140以取得構(gòu)造對網(wǎng)絡(luò)服務(wù)器請求的響應(yīng)所必需的數(shù)據(jù)或其它內(nèi)容。
數(shù)據(jù)存儲140可被實現(xiàn)為一個或多個數(shù)據(jù)庫、SQL服務(wù)器或某種其它類型的存儲設(shè)備。在某些實施例中,數(shù)據(jù)存儲140包含關(guān)于簡檔、電子郵件、即時消息收發(fā)以及由主網(wǎng)絡(luò)服務(wù)的一個或多個發(fā)布者提供的其它通信服務(wù)的用戶數(shù)據(jù)。在某些實施例中,存儲在數(shù)據(jù)存儲140中且由主網(wǎng)絡(luò)服務(wù)190提供的簡檔是被華盛頓州雷蒙德市的微軟公司稱為"Windows Live Spaces"的網(wǎng)絡(luò)服務(wù)的一部分。
網(wǎng)絡(luò)服務(wù)爬行器150可用于訪問來自副網(wǎng)絡(luò)服務(wù)192和194的數(shù)據(jù)并且將從這些服務(wù)取得的數(shù)據(jù)提供給數(shù)據(jù)存儲140。例如,網(wǎng)絡(luò)服務(wù)爬行器150可訪問位于由網(wǎng)絡(luò)服務(wù)192或194提供的特定URL處的簡檔、取得簡檔數(shù)據(jù)并且將所取得的數(shù)據(jù)本地地存儲到數(shù)據(jù)存儲140。在某些實施例中,爬行器150可被實現(xiàn)為接收RSS源,訪問應(yīng)用程序接口或以某種其它方式訪問副網(wǎng)絡(luò)服務(wù)的簡檔數(shù)據(jù)的機(jī)制。網(wǎng)絡(luò)服務(wù)爬行器150的操作在下面更詳細(xì)地討論。
副網(wǎng)絡(luò)服務(wù)192包括網(wǎng)絡(luò)服務(wù)器160和數(shù)據(jù)庫165。網(wǎng)絡(luò)服務(wù)192還可包括一個或多個應(yīng)用服務(wù)器(未在圖1中示出)。由網(wǎng)絡(luò)服務(wù)器160和數(shù)據(jù)庫165提供的網(wǎng)絡(luò)服務(wù)可允許一個或多個用戶與具有副網(wǎng)絡(luò)服務(wù)192的帳戶的其它用戶聯(lián)網(wǎng)。類似地,副網(wǎng)絡(luò)服務(wù)194包括網(wǎng)絡(luò)服務(wù)器170和數(shù)據(jù)庫175并且為具有該網(wǎng)絡(luò)服務(wù)的帳戶的一個或多個用戶提供該網(wǎng)絡(luò)服務(wù)。如同服務(wù)192,網(wǎng)絡(luò)服務(wù)194也可包含一個或多個應(yīng)用服務(wù)器(未示出)。
副網(wǎng)絡(luò)服務(wù)可以是聚合的、預(yù)定義的或未定義的網(wǎng)絡(luò)服務(wù)。聚合的網(wǎng)絡(luò)服務(wù)可與主網(wǎng)絡(luò)服務(wù)190有關(guān)。例如,聚合的網(wǎng)絡(luò)服務(wù)可由諸如微軟公司等與提供主網(wǎng)絡(luò)服務(wù)190的發(fā)布者或公司相同的發(fā)布者或公司來提供。聚合的網(wǎng)絡(luò)服務(wù)可包含與主網(wǎng)絡(luò)服務(wù)190不同的簡檔,但這些數(shù)據(jù)可與同一用戶標(biāo)識符相關(guān)聯(lián)并且可在不需要構(gòu)造諸如URL等簡檔位置的情況下訪問。例如,聚合的網(wǎng)絡(luò)服務(wù)可由主網(wǎng)絡(luò)服務(wù)的同一發(fā)布者來運作并且可以用標(biāo)識主服務(wù)的發(fā)布者的信息來聯(lián)合標(biāo)記(co-brand)(例如,"Helicopter Pilots R Us Spaces withWindows Live")。
預(yù)定義的網(wǎng)絡(luò)服務(wù)并非由與主網(wǎng)絡(luò)服務(wù)相同的發(fā)布者來提供,而是由主網(wǎng)絡(luò)服務(wù)190來識別。主網(wǎng)絡(luò)服務(wù)190可根據(jù)所存儲的服務(wù)的URL信息和關(guān)于要接收的簡檔的用戶標(biāo)識符信息來構(gòu)造預(yù)定義的網(wǎng)絡(luò)服務(wù)的用戶簡檔的位置信息(諸如URL)。未定義的網(wǎng)絡(luò)服務(wù)是并非由主網(wǎng)絡(luò)服務(wù)190定義的網(wǎng)絡(luò)服務(wù)。主網(wǎng)絡(luò)服務(wù)190可根據(jù)由主網(wǎng)絡(luò)服務(wù)的用戶提供的簡檔URL信息和用戶簡檔標(biāo)識符信息來構(gòu)造未定義的網(wǎng)絡(luò)服務(wù)的簡檔位置信息(諸如URL)。每一種類型的副網(wǎng)絡(luò)服務(wù)都在下面更詳細(xì)地定義。
圖2是數(shù)據(jù)存儲140的框圖。數(shù)據(jù)存儲140包括用戶表142、用戶簡檔表144、用戶關(guān)系表146和配置文件148。
用戶表142存儲主網(wǎng)絡(luò)服務(wù)190的用戶簡檔數(shù)據(jù)。存儲在用戶表142中的用戶簡檔數(shù)據(jù)可包括用戶姓名、地址、性別、職業(yè)、電子郵件、收藏夾和其它用戶數(shù)據(jù)。用戶簡檔表144可包括由一個或多個副網(wǎng)絡(luò)服務(wù)提供的、具有主網(wǎng)絡(luò)服務(wù)190的帳戶的用戶的一個或多個簡檔的列表。因此,對于具有主網(wǎng)絡(luò)服務(wù)l卯的帳戶的用戶,關(guān)于其在副網(wǎng)絡(luò)服務(wù)192和194中的簡檔的數(shù)據(jù)被存儲在用戶簡檔表144中。包含在用戶簡檔表144中的數(shù)據(jù)可包括針對主網(wǎng)絡(luò)服務(wù)提供的用戶標(biāo)識符、與該用戶在副網(wǎng)絡(luò)服務(wù)中的簡檔相關(guān)聯(lián)的副網(wǎng)絡(luò)服務(wù)的標(biāo)
11識、以及包含在用戶在副網(wǎng)絡(luò)服務(wù)中的簡檔中的數(shù)據(jù),諸如對應(yīng)于該服務(wù)的用戶標(biāo)識符、用戶姓名、地址、性別、職業(yè)等,如該副網(wǎng)絡(luò)服務(wù)的用戶簡檔中所提供的。
用戶關(guān)系表146可包含副網(wǎng)絡(luò)服務(wù)的兩個用戶之間的關(guān)系數(shù)據(jù)。包含在用
戶關(guān)系表146中的數(shù)據(jù)包括主網(wǎng)絡(luò)服務(wù)190的第一用戶和第二用戶的用戶標(biāo)識符以及其中存在關(guān)系的副網(wǎng)絡(luò)服務(wù)的標(biāo)識。用戶關(guān)系表146可將數(shù)據(jù)作為數(shù)組、整數(shù)或某種其它值來存儲。配置文件148可存儲預(yù)定義網(wǎng)絡(luò)和聚合網(wǎng)絡(luò)的URL和其它數(shù)據(jù)。該數(shù)據(jù)用于生成訪問信息,諸如副網(wǎng)絡(luò)服務(wù)中的簡檔的URL。對配置文件148數(shù)據(jù)的利用在下面更詳細(xì)地討論。
圖3是用于實現(xiàn)本發(fā)明的技術(shù)的計算環(huán)境的實施例。圖3的計算環(huán)境可用于實現(xiàn)客戶機(jī)110、網(wǎng)絡(luò)服務(wù)器120、應(yīng)用服務(wù)器130、數(shù)據(jù)存儲140、網(wǎng)絡(luò)服務(wù)爬行器150、網(wǎng)絡(luò)服務(wù)器160和170、以及數(shù)據(jù)庫165和175。
圖3的計算環(huán)境300只是合適的計算環(huán)境的一個示例,并且不旨在對此處的技術(shù)的使用范圍或功能提出任何限制。也不應(yīng)該把計算環(huán)境300解釋為對示例性操作環(huán)境300中示出的任一組件或其組合有任何依賴性或要求。
此處所描述的技術(shù)可用各種其它通用或?qū)S糜嬎阆到y(tǒng)環(huán)境或配置來操作。適合與此處的技術(shù)一起使用的公知的計算系統(tǒng)、環(huán)境和/或配置的示例包括,但不限于,個人計算機(jī)、服務(wù)器計算機(jī)、手持式或膝上型設(shè)備、移動電話或設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、機(jī)頂盒、可編程消費電子產(chǎn)品、網(wǎng)絡(luò)PC、小型機(jī)、大型計算機(jī)、包含上述系統(tǒng)或設(shè)備中的任一個的分布式計算機(jī)環(huán)境等。
此處的技術(shù)可在諸如程序模塊等由計算機(jī)執(zhí)行的計算機(jī)可執(zhí)行指令的通用上下文中描述。 一般而言,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等等。此處的技術(shù)也可以在任務(wù)由通過通信網(wǎng)絡(luò)鏈接的遠(yuǎn)程處理設(shè)備執(zhí)行的分布式計算環(huán)境中實現(xiàn)。在分布式計算環(huán)境中,程序模塊可以位于包括存儲器存儲設(shè)備在內(nèi)的本地和遠(yuǎn)程計算機(jī)存儲介質(zhì)中。
參考圖3,用于實現(xiàn)此處的技術(shù)的一個示例性系統(tǒng)包括計算機(jī)310形式的通用計算設(shè)備。計算機(jī)310的組件可以包括,但不限于,處理單元320、系統(tǒng)存儲器330和將包括系統(tǒng)存儲器在內(nèi)的各種系統(tǒng)組件耦合至處理單元320的系統(tǒng)總線321。系統(tǒng)總線321可以是幾種類型的總線結(jié)構(gòu)中的任何一種,包括存儲器總線或存儲控制器、外圍總線、以及使用各種總線體系結(jié)構(gòu)中的任一種的局部總線。作為示例而非局限,這樣的體系結(jié)構(gòu)包括工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)總線、微通道體系結(jié)構(gòu)(MCA)總線、增強(qiáng)型ISA (EISA)總線、視頻電子技術(shù)標(biāo)準(zhǔn)協(xié)會(VESA)局部總線和外圍部件互連(PCI)總線(也稱為夾層(Mezzanine)總線)。
計算機(jī)310通常包括各種計算機(jī)可讀介質(zhì)。計算機(jī)可讀介質(zhì)可以是能由計算機(jī)310訪問的任何可用介質(zhì),而且包含易失性和非易失性介質(zhì)、可移動和不可移動介質(zhì)。作為示例而非限制,計算機(jī)可讀介質(zhì)可包括計算機(jī)存儲介質(zhì)和通信介質(zhì)。計算機(jī)存儲介質(zhì)包括以用于存儲諸如計算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)等信息的任何方法或技術(shù)實現(xiàn)的易失性和非易失性、可移動和不可移動介質(zhì)。計算機(jī)存儲介質(zhì)包括,但不限于,RAM、 ROM、 EEPROM、閃存或其它存儲器技術(shù)、CD-ROM、數(shù)字多功能盤(DVD)或其它光盤存儲、磁帶盒、磁帶、磁盤存儲或其它磁性存儲設(shè)備、或能用于存儲所需信息且可以由計算機(jī)310訪問的任何其它介質(zhì)。通信介質(zhì)通常以諸如載波或其它傳輸機(jī)制等已調(diào)制數(shù)據(jù)信號來體現(xiàn)計算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù),并包括任意信息傳送介質(zhì)。術(shù)語"已調(diào)制數(shù)據(jù)信號"指的是以在信號中編碼信息的方式設(shè)定或更改其一個或多個特征的信號。作為示例而非限制,通信介質(zhì)包括有線介質(zhì),諸如有線網(wǎng)絡(luò)或直接線連接,以及無線介質(zhì),諸如聲學(xué)、RF、紅外線和其它無線介質(zhì)。上述中任一組合也應(yīng)包括在計算機(jī)可讀介質(zhì)的范圍之內(nèi)。
系統(tǒng)存儲器330包括易失性和/或非易失性存儲器形式的計算機(jī)存儲介質(zhì),如只讀存儲器(ROM) 331和隨機(jī)存取存儲器(RAM) 332?;据斎?輸出系統(tǒng)333 (BIOS)包括如在啟動時幫助在計算機(jī)310內(nèi)的元件之間傳輸信息的基本例程,它通常儲存在ROM331中。RAM332通常包含處理單元320可以立即訪問和/或目前正在其上操作的數(shù)據(jù)和/或程序模塊。作為示例而非限制,圖3示出了操作系統(tǒng)334、應(yīng)用程序335、其它程序模塊336和程序數(shù)據(jù)337。
計算機(jī)310也可以包括其它可移動/不可移動、易失性/非易失性計算機(jī)存取或向其
寫入的硬盤驅(qū)動器340,從可移動、非易失性磁盤352中讀取或向其寫入的磁 盤驅(qū)動器351,以及從諸如CDROM或其它光學(xué)介質(zhì)等可移動、非易失性光盤 356中讀取或向其寫入的光盤驅(qū)動器355??梢栽谑纠圆僮鳝h(huán)境中使用的其 它可移動/不可移動、易失性/非易失性計算機(jī)存儲介質(zhì)包括但不限于,磁帶盒、 閃存卡、數(shù)字多功能盤、數(shù)字錄像帶、固態(tài)RAM、固態(tài)ROM等等。硬盤驅(qū) 動器341通常由不可移動存儲器接口,諸如接口 340連接至系統(tǒng)總線321,磁 盤驅(qū)動器351和光盤驅(qū)動器355通常由可移動存儲器接口,諸如接口 350連接 至系統(tǒng)總線321。
上文討論并在圖3中示出的驅(qū)動器及其相關(guān)聯(lián)的計算機(jī)存儲介質(zhì)為計算 機(jī)310提供了對計算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其它數(shù)據(jù)的存儲。例 如,在圖3中,硬盤驅(qū)動器341被示為存儲操作系統(tǒng)344、應(yīng)用程序345、其 它程序模塊346和程序數(shù)據(jù)347。注意,這些組件可以與操作系統(tǒng)334、應(yīng)用 程序335、其它程序模塊336和程序數(shù)據(jù)337相同,也可以與它們不同。操作 系統(tǒng)344、應(yīng)用程序345、其它程序模塊346和程序數(shù)據(jù)347在這里被標(biāo)注了 不同的標(biāo)號是為了說明至少它們是不同的副本。用戶可以通過輸入設(shè)備,諸如 鍵盤362和定點設(shè)備361 (通常指的是鼠標(biāo)、跟蹤球或觸摸墊)向計算機(jī)310 輸入命令和信息。其它輸入設(shè)備(未示出)可以包括話筒、操縱桿、游戲手柄、 圓盤式衛(wèi)星天線、掃描儀等。這些和其它輸入設(shè)備通常通過耦合至系統(tǒng)總線的 用戶輸入接口 360連接至處理單元320,但也可以由其它接口和總線結(jié)構(gòu),諸 如并行端口、游戲端口或通用串行總線(USB)連接。監(jiān)視器391或其它類型 的顯示設(shè)備也經(jīng)由接口,諸如視頻接口 390連接至系統(tǒng)總線321。除監(jiān)視器以 外,計算機(jī)還可以包括其它外圍輸出設(shè)備,諸如揚聲器397和打印機(jī)396,它 們可以通過輸出外圍接口 3卯連接。
計算機(jī)310 可使用至一個或多個遠(yuǎn)程計算機(jī),如遠(yuǎn)程計算機(jī)380的邏輯連 接在聯(lián)網(wǎng)環(huán)境中操作。遠(yuǎn)程計算機(jī)380可以是個人計算機(jī)、服務(wù)器、路由器、 網(wǎng)絡(luò)PC、對等設(shè)備或其它常見網(wǎng)絡(luò)節(jié)點,且通常包括上文相對于計算機(jī)310 描述的許多或所有元件,盡管在圖3中只示出存儲器存儲設(shè)備381。圖3中所 示的邏輯連接包括局域網(wǎng)(LAN) 371和廣域網(wǎng)(WAN) 373,但也可以包括其它網(wǎng)絡(luò)。這樣的聯(lián)網(wǎng)環(huán)境在辦公室、企業(yè)范圍計算機(jī)網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)和因特網(wǎng) 中是常見的。
當(dāng)在LAN聯(lián)網(wǎng)環(huán)境中使用時,計算機(jī)310通過網(wǎng)絡(luò)接口或適配器370連 接至LAN371。當(dāng)在WAN聯(lián)網(wǎng)環(huán)境中使用時,計算機(jī)310通常包括調(diào)制解調(diào) 器372或用于通過諸如因特網(wǎng)等WAN 373建立通信的其它裝置。調(diào)制解調(diào)器 372可以是內(nèi)置或外置的,它可以經(jīng)由用戶輸入接口 360或其它適當(dāng)?shù)臋C(jī)制連 接至系統(tǒng)總線321。在聯(lián)網(wǎng)環(huán)境中,相對于計算機(jī)310所描述的程序模塊或其 部分可被儲存在遠(yuǎn)程存儲器存儲設(shè)備中。作為示例而非限制,圖3示出了遠(yuǎn)程 應(yīng)用程序385駐留在存儲器設(shè)備381上??梢岳斫?,所示的網(wǎng)絡(luò)連接是示例性 的,且可以使用在計算機(jī)之間建立通信鏈路的其它手段。
圖4A是不同的網(wǎng)絡(luò)服務(wù)中的用戶關(guān)系的示例。圖4A示出了三個網(wǎng)絡(luò)關(guān) 系。主網(wǎng)絡(luò)服務(wù)中的第一關(guān)系在第一用戶和第二用戶之間。第一用戶和第二用 戶之間的線指示該第一用戶可能已將該第二用戶列為"朋友",從而在該第一 用戶所具有的主網(wǎng)絡(luò)服務(wù)190的帳戶中與該第二用戶具有信任關(guān)系。第二關(guān)系 是對應(yīng)于副網(wǎng)絡(luò)服務(wù)A的,其中第二用戶與第三用戶具有信任關(guān)系。在第三網(wǎng) 絡(luò)服務(wù),即副網(wǎng)絡(luò)服務(wù)B中,第一用戶和第三用戶兩者在該服務(wù)中都具有簡檔, 但在該服務(wù)中彼此不具有信任關(guān)系,如在圖4A中通過沒有線連接這兩個用戶 來表示。
圖4B是多個網(wǎng)絡(luò)上的用戶間關(guān)系的示例。具體地,示出第一用戶和第二 用戶通過主網(wǎng)絡(luò)服務(wù)具有信任關(guān)系,而第二用戶和第三用戶通過副網(wǎng)絡(luò)服務(wù)A 具有信任關(guān)系。因此,可以看出,第一用戶和第三用戶具有通過第二用戶的二 級分隔的間接關(guān)系。第一用戶和第三用戶沒有通過任何網(wǎng)絡(luò)服務(wù)直接連接但在 這兩個用戶之間的連接可被視為兩個不同網(wǎng)絡(luò)服務(wù)上的二級關(guān)系。本發(fā)明的技 術(shù)可識別該二級關(guān)系并且允許用戶遍歷該二級關(guān)系并對其進(jìn)行查詢。這在下面 更詳細(xì)地討論。
圖5是用于訪問和存儲用戶簡檔數(shù)據(jù)的方法的實施例的流程圖。首先,在 步驟510,由主網(wǎng)絡(luò)服務(wù)提供用于允許用戶輸入副網(wǎng)絡(luò)服務(wù)簡檔數(shù)據(jù)的用戶界 面。所接收到的簡檔數(shù)據(jù)可與聚合的、預(yù)定義的和未定義的網(wǎng)絡(luò)服務(wù)相關(guān)。用 于接收副網(wǎng)絡(luò)服務(wù)數(shù)據(jù)的用戶界面的示例在下面參考圖7示出和討論。在步驟520,通過用戶界面從用戶接收副網(wǎng)絡(luò)服務(wù)數(shù)據(jù)輸入。用戶可輸入 與副網(wǎng)絡(luò)服務(wù)有關(guān)的數(shù)據(jù)、這些服務(wù)中的用戶標(biāo)識符和其它信息。所接收到的 數(shù)據(jù)用于訪問每一個副網(wǎng)絡(luò)服務(wù)中的簡檔數(shù)據(jù),例如以便生成可從其取得簡檔
數(shù)據(jù)的URL或者其他數(shù)據(jù)。參考圖7,聚合的網(wǎng)絡(luò)服務(wù)A的數(shù)據(jù)可在選擇〈測 試鏈接>按鈕時接收,預(yù)定義的網(wǎng)絡(luò)服務(wù)C到F可能需要用戶標(biāo)識符,而未定 義的網(wǎng)絡(luò)服務(wù)750可能需要用戶標(biāo)識符、簡檔URL以及可選的其它數(shù)據(jù)。
在步驟530,根據(jù)所接收到的用戶數(shù)據(jù)來構(gòu)造簡檔訪問信息。簡檔訪問信 息可根據(jù)用戶標(biāo)識符、先前存儲在配置文件148中的信息和其它數(shù)據(jù)來構(gòu)造。 構(gòu)造簡檔訪問信息在下面參考圖6更詳細(xì)地討論。
接著,在步驟540,由網(wǎng)絡(luò)服務(wù)爬行器150從副網(wǎng)絡(luò)服務(wù)取得所選用戶的 用戶簡檔數(shù)據(jù)和關(guān)系數(shù)據(jù)。該簡檔數(shù)據(jù)和關(guān)系數(shù)據(jù)可由爬行器150從在步驟 530處構(gòu)造的簡檔訪問信息URL取得。在某些實施例中,簡檔和關(guān)系數(shù)據(jù)可使 用在步驟530處生成的其它簡檔訪問信息來取得。一旦知道或構(gòu)造了數(shù)據(jù)位置, 就可通過屏幕搜刮(screen scraping)、調(diào)用拉取數(shù)據(jù)的服務(wù)API、調(diào)用將數(shù)據(jù) 推送至爬行器150的API、經(jīng)由RSS源、或者以某種其它方式來取得該數(shù)據(jù)。
在步驟550,然后由爬行器150將所取得的簡檔數(shù)據(jù)存儲在數(shù)據(jù)存儲140 的用戶簡檔數(shù)據(jù)表144中。在某些實施例中,所取得的簡檔數(shù)據(jù)可在存儲時與 主網(wǎng)絡(luò)服務(wù)的現(xiàn)有簡檔數(shù)據(jù)聚集或合并在一起。在某些實施例中,所取得的簡 檔數(shù)據(jù)可在該數(shù)據(jù)被請求時或者在與主網(wǎng)絡(luò)服務(wù)帳戶相關(guān)聯(lián)的用戶作出請求 時與主網(wǎng)絡(luò)服務(wù)簡檔數(shù)據(jù)聚集或合并在一起。存儲所取得的簡檔數(shù)據(jù)在下面參 考圖8更詳細(xì)地討論。
在步驟560,由網(wǎng)絡(luò)服務(wù)爬行器150將用戶關(guān)系數(shù)據(jù)存儲在用戶關(guān)系表146 中。所存儲的關(guān)系數(shù)據(jù)可包括取得其簡檔數(shù)據(jù)的用戶的標(biāo)識符、由副網(wǎng)絡(luò)服務(wù) 簡檔指定的用戶的聯(lián)系人、以及該網(wǎng)絡(luò)服務(wù)本身的標(biāo)識。如果聯(lián)系人具有主網(wǎng) 絡(luò)服務(wù)的簡檔,則在步驟560處存儲該聯(lián)系人的主網(wǎng)絡(luò)服務(wù)用戶標(biāo)識符。如果 聯(lián)系人沒有主網(wǎng)絡(luò)服務(wù)簡檔,則使用在副網(wǎng)絡(luò)聯(lián)系人中的用戶標(biāo)識符。在某些 實施例中,在存儲用戶關(guān)系數(shù)據(jù)之后,在步驟570,將數(shù)據(jù)高速緩存在應(yīng)用服 務(wù)器130中。該步驟是可任選的并且可向應(yīng)用服務(wù)器130提供對網(wǎng)絡(luò)服務(wù)器120 的特定簡檔請求的較快訪問。在步驟580,然后向作出請求的實體提供具有鏈接的簡檔數(shù)據(jù)的一個或多 個簡檔。鏈接的數(shù)據(jù)可包括以諸如通過聚集或合并數(shù)據(jù)等某種方式組合的兩個 或更多簡檔和/或服務(wù)的簡檔數(shù)據(jù)。來自作出請求的實體的請求可指定一個或多 個參數(shù)并且請求一個或多個簡檔或者兩個或更多簡檔之間的路徑。這些參數(shù)可 包括準(zhǔn)則參數(shù)和關(guān)系分隔參數(shù)。準(zhǔn)則參數(shù)指定匹配請求的簡檔必須滿足的要 求,諸如與特定性別或居住城市相關(guān)聯(lián)的用戶簡檔。關(guān)系分隔參數(shù)可指定用戶
之間的分隔等級,諸如圖4A-4B所示的第一用戶與第三用戶之間的二級分隔。 提供一個或多個鏈接的簡檔在下面參考圖9更詳細(xì)地討論。
圖6是用于構(gòu)造簡檔訪問信息的方法的實施例的流程圖。在某些實施例 中,圖6的方法為圖5的方法中的步驟530提供更多的細(xì)節(jié)。在步驟520,通 過用戶界面從用戶接收副網(wǎng)絡(luò)服務(wù)數(shù)據(jù)輸入。該步驟是出于引用的目的而提供 的,并且等同于圖5的方法中的步驟520。在步驟605,然后確定所接收到的 輸入是否對應(yīng)于聚合服務(wù)。如果是,則圖6的方法繼續(xù)至步驟610。如果否, 則在步驟607處確定所接收到的輸入是否對應(yīng)于預(yù)定義服務(wù)。如果該輸入對應(yīng) 于預(yù)定義服務(wù),則圖6的方法繼續(xù)至步驟630。如果否,則該輸入對應(yīng)于未定 義服務(wù)并且圖6的方法繼續(xù)至步驟660。
在步驟610,從用戶接收帳戶確認(rèn)。帳戶確認(rèn)可作為對圖7的用戶界面中 的對應(yīng)于聚合的網(wǎng)絡(luò)服務(wù)的"<測試鏈接>"圖標(biāo)的選擇來接收。在其它實施例 中,帳戶確認(rèn)選擇可作為對用戶界面中的某個其它按鈕或元素的選擇來接收。 在接收到帳戶確認(rèn)之后,在步驟620,高速緩存聚合的網(wǎng)絡(luò)服務(wù)數(shù)據(jù)并且圖6 的方法結(jié)束。
如果在步驟607所接收到的副網(wǎng)絡(luò)服務(wù)數(shù)據(jù)輸入對應(yīng)于預(yù)定義網(wǎng)絡(luò)服務(wù), 則在步驟630,將該輸入作為對應(yīng)于該預(yù)定義服務(wù)的用戶標(biāo)識符來接收。參考 圖7,接收對應(yīng)于圖7的用戶界面的部分740中的網(wǎng)絡(luò)服務(wù)C和網(wǎng)絡(luò)服務(wù)E的 用戶標(biāo)識符。在接收到用戶標(biāo)識符之后,根據(jù)所接收到的用戶標(biāo)識符和包含在 數(shù)據(jù)存儲140的配置文件148中的預(yù)定義服務(wù)數(shù)據(jù)來構(gòu)造用戶簡檔URL。在步 驟650,然后高速緩存對應(yīng)于副網(wǎng)絡(luò)服務(wù)的用戶簡檔URL并且圖6的方法結(jié)束。
如果在步驟607所接收到的副網(wǎng)絡(luò)服務(wù)輸入被確定為對應(yīng)于未定義網(wǎng)絡(luò) 服務(wù),則在步驟660,從關(guān)于該未定義服務(wù)的用戶接收包括副網(wǎng)絡(luò)服務(wù)名稱、用戶標(biāo)識符和服務(wù)簡檔URL的數(shù)據(jù)。參考圖7的用戶界面,未定義的網(wǎng)絡(luò)服 務(wù)數(shù)據(jù)包括服務(wù)名稱"BlogTime (博客時間)"、用戶標(biāo)識符"pmbloggr"和 簡檔URL www.blogtime.com/pmbloggr。在某些實施例中,也可接收關(guān)于未定 義的網(wǎng)絡(luò)服務(wù)的其它信息,諸如訂閱源URL。
接著,在步驟670,確定所接收到的用戶數(shù)據(jù)是否匹配預(yù)定義的網(wǎng)絡(luò)服務(wù)。 如果所接收到的用戶數(shù)據(jù)匹配預(yù)定義的網(wǎng)絡(luò)服務(wù),則圖6的方法繼續(xù)至步驟 640。如果用戶數(shù)據(jù)不匹配預(yù)定義服務(wù),則在步驟680,高速緩存所接收到的簡 檔URL。為了確定用戶數(shù)據(jù)是否匹配預(yù)定義服務(wù),可將所接收的基礎(chǔ)URL和 用戶標(biāo)識符與配置文件148和用戶簡檔表144中的URL和用戶標(biāo)識符進(jìn)行比 較。
在某些實施例中,在爬行用戶的主和副簡檔的過程期間,網(wǎng)絡(luò)爬行器能夠 以高置信度査明用戶何時具有副服務(wù)的帳戶并且該帳戶具有從用戶的名字導(dǎo) 出的ID且具有匹配該用戶在主網(wǎng)絡(luò)服務(wù)中的簡檔的元素的內(nèi)容。爬行器隨后 可以按類似于此處所描述的方式取得與用戶的副網(wǎng)絡(luò)服務(wù)的帳戶相關(guān)聯(lián)的數(shù) 據(jù)并且存儲關(guān)于該用戶的數(shù)據(jù)。
圖7是用于輸入副網(wǎng)絡(luò)服務(wù)數(shù)據(jù)的用戶界面的示例。圖7的用戶界面由主 網(wǎng)絡(luò)應(yīng)用程序190在圖6的方法期間提供給用戶。圖7包括網(wǎng)絡(luò)服務(wù)菜單710、 簡檔動作按鈕720、簡檔菜單窗口 760和簡檔數(shù)據(jù)窗口 770。網(wǎng)絡(luò)服務(wù)菜單710 包括菜單標(biāo)題開始、郵件、簡檔、訂閱源、管理和其它信息。簡檔按鈕720 包括對應(yīng)于主頁、您的簡檔、事件、組、照片、博客、列表和簡檔功能的按鈕。
簡檔菜單窗口 760包括可選圖標(biāo)外觀、web簡檔、聯(lián)系人信息和社會。 當(dāng)前,在簡檔菜單窗口 760中選擇了web簡檔窗口選項。簡檔數(shù)據(jù)窗口 770包 括所列出的關(guān)于若干副網(wǎng)絡(luò)服務(wù)的信息。這些服務(wù)包括部分730中的聚合服務(wù) A、部分740中的預(yù)定義服務(wù)C、 D、 E和F、以及部分750中的一個未定義服 務(wù)。聚合服務(wù)A包括服務(wù)標(biāo)簽"Pat Smith"。該聚合服務(wù)信息可用與主網(wǎng)絡(luò)服 務(wù)的用戶相關(guān)聯(lián)的用戶標(biāo)識符來預(yù)先填充。
預(yù)定義副網(wǎng)絡(luò)服務(wù)C-F包括用戶可在其中輸入對應(yīng)于每一個服務(wù)的用戶 標(biāo)識符的框。如如所示,用戶已經(jīng)輸入了對應(yīng)于預(yù)定義服務(wù)C的用戶標(biāo)識符 "psmith778"以及對應(yīng)于預(yù)定義服務(wù)E的用戶標(biāo)識符"PattySm他"。預(yù)定義服務(wù)D和F具有其中未填寫用戶標(biāo)識符的框。
簡檔數(shù)據(jù)窗口 770中的對應(yīng)于未定義服務(wù)的部分750包括對應(yīng)于服務(wù)名 稱、用戶標(biāo)識符和簡檔URL的框。如圖所示,服務(wù)名稱框已用"BlogTime" 來填充,用戶標(biāo)識符框已用"pmbloggr"來填充而簡檔URL已用 http:〃www.blogtime.com/pmbloggr來填充。
圖8是用于存儲副網(wǎng)絡(luò)服務(wù)的簡檔數(shù)據(jù)的方法的流程圖和實施例。在某些 實施例中,圖8的流程圖為圖5的方法中的步驟550提供更多細(xì)節(jié)。首先,網(wǎng) 絡(luò)服務(wù)爬行器150將所取得的簡檔數(shù)據(jù)發(fā)送至數(shù)據(jù)存儲810。該數(shù)據(jù)是從副網(wǎng) 絡(luò)服務(wù)取得的。接著,在步驟820訪問用戶表142中的現(xiàn)有用戶數(shù)據(jù)。在步驟 830,然后將所取得的數(shù)據(jù)與用戶表142中現(xiàn)有用戶數(shù)據(jù)聚集在一起。聚集數(shù) 據(jù)可包括將從副網(wǎng)絡(luò)服務(wù)取得的數(shù)據(jù)添加到與主網(wǎng)絡(luò)服務(wù)190中的用戶簡檔相 關(guān)聯(lián)的用戶數(shù)據(jù)。例如,用戶的主網(wǎng)絡(luò)服務(wù)簡檔和副網(wǎng)絡(luò)服務(wù)簡檔中的用戶縮 略圖照片都可通過主網(wǎng)絡(luò)服務(wù)來存儲。其它數(shù)據(jù)諸如電話號碼、電子郵件地址、 地址和關(guān)于用戶的主網(wǎng)絡(luò)服務(wù)簡檔和副網(wǎng)絡(luò)服務(wù)簡檔的其它信息可被一起聚 集在用戶數(shù)據(jù)表中。
或者,在步驟840,可將所取得的數(shù)據(jù)與用戶數(shù)據(jù)和用戶表142合并。合 并數(shù)據(jù)而非聚集數(shù)據(jù)可涉及選擇單個用戶圖標(biāo)、單個用戶地址、單個喜歡的電 影以及以其它方式將不同版本的數(shù)據(jù)合并到一個用戶簡檔中。例如,如果用戶 的主網(wǎng)絡(luò)服務(wù)簡檔和副網(wǎng)絡(luò)服務(wù)簡檔具有相同的用戶居住地址,則該居住地址 可只在用戶數(shù)據(jù)表中存儲一次。當(dāng)不同簡檔之間的用戶數(shù)據(jù)不匹配時,可根據(jù) 用戶創(chuàng)建的規(guī)則、創(chuàng)建日期(其中最新創(chuàng)建的數(shù)據(jù)勝過較早創(chuàng)建的數(shù)據(jù))來合 并數(shù)據(jù),或者可提示用戶選擇要在合并的簡檔中包括哪些數(shù)據(jù)。
接著,在步驟850將副網(wǎng)絡(luò)服務(wù)簡檔數(shù)據(jù)作為新條目存儲在數(shù)據(jù)存儲140 的用戶簡檔表144中。將副網(wǎng)絡(luò)服務(wù)簡檔數(shù)據(jù)作為新條目來存儲包括存儲用戶 標(biāo)識符、與所取得的簡檔相關(guān)聯(lián)的網(wǎng)絡(luò)服務(wù)和從副網(wǎng)絡(luò)服務(wù)取得的簡檔數(shù)據(jù)。 要存儲的其它數(shù)據(jù)可包括認(rèn)證憑證和/或與副服務(wù)相關(guān)聯(lián)的URL。圖8的方法 隨后在步驟860結(jié)束。
一旦已經(jīng)由網(wǎng)絡(luò)服務(wù)爬行器150從一個或多個副網(wǎng)絡(luò)服務(wù)192-194取得數(shù) 據(jù),就可響應(yīng)于用戶請求來請求、查詢以及以其它方式取得該數(shù)據(jù)。圖9是用
19于響應(yīng)于請求來提供簡檔數(shù)據(jù)的方法的實施例的流程圖。首先,在步驟910,
由網(wǎng)絡(luò)服務(wù)器120從客戶機(jī)IIO接收具有任何參數(shù)的對用戶簡檔數(shù)據(jù)的請求。
該請求可基于所請求的數(shù)據(jù)類型來包括參數(shù)。這些參數(shù)可包括準(zhǔn)則參數(shù)和關(guān)系 分隔參數(shù)。如上所述,準(zhǔn)則參數(shù)指定要包括在匹配請求的每一個簡檔中的簡檔 準(zhǔn)則,而關(guān)系分隔參數(shù)指定用戶關(guān)系上的分隔等級。例如,"列表"類型請求
可包括參數(shù)起始用戶S、跳躍范圍、或者用戶的關(guān)系分隔等級N、以及要匹配 的準(zhǔn)則F。列表類型查詢可被表達(dá)為"向我顯示生活在西雅圖的朋友中的所有 朋友"。在這種情況下,跳躍數(shù)N是2,過濾器將會是居住在西雅圖的用戶, 而S將會是用戶自己的簡檔。
另一種類型的請求可以是"路徑"請求。路徑請求可具有參數(shù)起始用戶、 終止用戶、跳躍數(shù)N和準(zhǔn)則F。例如,路徑請求可被表達(dá)為"向我顯示在Acme 工作的戴夫和邁克之間的相互匹配"。在這種情況下,起始用戶是戴夫,終止 用戶是邁克,跳躍數(shù)可能未定,而準(zhǔn)則可以是具有公司名為"Acme"的工作 地址。
在步驟920,由網(wǎng)絡(luò)服務(wù)器120從數(shù)據(jù)存儲140中取得與所接收到的請求 相關(guān)聯(lián)的簡檔數(shù)據(jù)。該數(shù)據(jù)可由網(wǎng)絡(luò)服務(wù)器120通過應(yīng)用服務(wù)器130來取得。 這在下面參考圖10的方法更詳細(xì)地討論。在取得與請求相關(guān)聯(lián)的簡檔數(shù)據(jù)之 后,由網(wǎng)絡(luò)服務(wù)器120響應(yīng)于所接收到的請求來向客戶機(jī)110提供所取得的包 含一個或多個簡檔的簡檔數(shù)據(jù)。在一個實施例中,不顯示用戶之間的重復(fù)關(guān)系。 因此,如果第一用戶和第二用戶在網(wǎng)絡(luò)服務(wù)A和網(wǎng)絡(luò)服務(wù)B中具有信任關(guān)系,
則僅示出這兩個用戶之間的一個連接。在某些實施例中,在用戶界面中指示其 中用戶和聯(lián)系人具有信任關(guān)系的網(wǎng)絡(luò)。示出多個網(wǎng)絡(luò)上的關(guān)系數(shù)據(jù)的簡檔內(nèi)容 頁面的示例在圖11中提供。
圖IO是用于取得簡檔數(shù)據(jù)的方法的實施例的流程圖。在一個實施例中, 圖10的方法為圖9的方法中的步驟920提供更多細(xì)節(jié)。首先,在步驟IOIO, 確定所接收到的請求是與簡檔列表、路徑還是與單獨數(shù)據(jù)請求相關(guān)聯(lián)。如果所 接收到的請求與簡檔列表或路徑請求相關(guān)聯(lián),則在步驟1015網(wǎng)絡(luò)服務(wù)器110 將請求參數(shù)發(fā)送至應(yīng)用服務(wù)器130。在步驟1020,應(yīng)用服務(wù)器130從網(wǎng)絡(luò)服務(wù) 器120接收請求參數(shù)并且將這些參數(shù)發(fā)送至數(shù)據(jù)存儲140。在步驟1025,數(shù)據(jù)
20存儲140從應(yīng)用服務(wù)器130接收這些參數(shù),并且査詢用戶表142和用戶關(guān)系表 146以確定簡檔和/或簡檔路徑匹配。如上所述,數(shù)據(jù)存儲140可被實現(xiàn)為一個 或多個SQL服務(wù)器。由此,這些服務(wù)器可具有向其査詢所請求的特定關(guān)系和/ 或簡檔數(shù)據(jù)的業(yè)務(wù)邏輯。
在步驟1030,數(shù)據(jù)存儲140確定查詢的結(jié)果,將匹配的簡檔打包到響應(yīng) 中,并且將該響應(yīng)發(fā)送至應(yīng)用服務(wù)器130。接著,在步驟1035,應(yīng)用服務(wù)器130 接收響應(yīng)并且將該響應(yīng)轉(zhuǎn)發(fā)至網(wǎng)絡(luò)服務(wù)器120。在步驟1040,網(wǎng)絡(luò)服務(wù)器120 從應(yīng)用服務(wù)器130接收響應(yīng)。對于簡檔列表和路徑請求,圖10的方法隨后在 步驟1040處結(jié)束。
在步驟1010,如果所接收到的請求與單獨的簡檔數(shù)據(jù)請求相關(guān)聯(lián),則在 步驟1045網(wǎng)絡(luò)服務(wù)器120將具有簡檔ID的請求發(fā)送至應(yīng)用服務(wù)器130。在步 驟1050,應(yīng)用服務(wù)器130從網(wǎng)絡(luò)服務(wù)器120接收請求并且將該請求轉(zhuǎn)發(fā)至數(shù)據(jù) 存儲140。在步驟1055,數(shù)據(jù)存儲140接收請求并且査詢用戶表142和用戶簡 檔表144以訪問與所請求的用戶標(biāo)識符相關(guān)聯(lián)的簡檔數(shù)據(jù)。在步驟1060,數(shù)據(jù) 存儲140然后將對應(yīng)于查詢結(jié)果的簡檔數(shù)據(jù)打包到響應(yīng)中并且將該響應(yīng)發(fā)送至 應(yīng)用服務(wù)器130。在步驟1065。應(yīng)用服務(wù)器130從數(shù)據(jù)存儲140接收響應(yīng)并且 將該響應(yīng)發(fā)送至網(wǎng)絡(luò)服務(wù)器120。在步驟1070,網(wǎng)絡(luò)服務(wù)器120從應(yīng)用服務(wù)器 130接收響應(yīng)。
圖11是提供具有對應(yīng)于若干網(wǎng)絡(luò)的關(guān)系數(shù)據(jù)的簡檔的內(nèi)容頁面的示例。 在一個實施例中,圖11的內(nèi)容頁面1110中的簡檔包括主網(wǎng)絡(luò)服務(wù)簡檔的數(shù)據(jù) 和從一個或多個副網(wǎng)絡(luò)服務(wù)簡檔取得的數(shù)據(jù)。如該內(nèi)容頁面的頂部所示,這些 簡檔與稱為"Pat Smith"的用戶相關(guān)聯(lián)。內(nèi)容頁面1110包括簡檔數(shù)據(jù)1120、 博客1130、網(wǎng)絡(luò)服務(wù)列表1150和聯(lián)系人列表1140。簡檔數(shù)據(jù)1120包括基本 簡檔信息,諸如興趣、愛好、怪癖以及電子郵件和即時消息收發(fā)(IM)的聯(lián)系 人信息。博客1130包括與該內(nèi)容頁面相關(guān)聯(lián)的用戶的當(dāng)前博客條目以及一個 和多個先前的博客條目。
網(wǎng)絡(luò)服務(wù)列表1150包括用戶與其相關(guān)聯(lián)的副網(wǎng)絡(luò)服務(wù)的列表。該服務(wù)列 表包括服務(wù)A、服務(wù)C、服務(wù)E和"Blog Time"。這些服務(wù)對應(yīng)于其中用戶 提供圖7的用戶界面中的信息的副網(wǎng)絡(luò)服務(wù)。內(nèi)容頁面1110的聯(lián)系 列表1140包括八個聯(lián)系人。 一指示與每一個聯(lián)系人相關(guān)聯(lián),該指示關(guān)于除了提供該內(nèi)容 頁面的主網(wǎng)絡(luò)服務(wù)之外的、其中每一個聯(lián)系人與簡檔用戶具有關(guān)系的上下文。 例如,當(dāng)前簡檔的當(dāng)前用戶除了主網(wǎng)絡(luò)服務(wù)之外還通過網(wǎng)絡(luò)服務(wù)A與聯(lián)系人2
具有關(guān)系。當(dāng)前用戶通過網(wǎng)絡(luò)服務(wù)A和網(wǎng)絡(luò)服務(wù)E與聯(lián)系人4具有關(guān)系,如 在聯(lián)系人4的圖標(biāo)下面直接指示的。簡檔所有者僅通過主網(wǎng)絡(luò)服務(wù)與聯(lián)系人1 具有連接,如通過未直接在聯(lián)系人l的圖標(biāo)下面列出其他網(wǎng)絡(luò)服務(wù)來指示的。 當(dāng)前簡檔的用戶通過未定義服務(wù)"Blog Time"與聯(lián)系人5具有關(guān)系,如通過 直接在聯(lián)系人5的下面列出"Blog Time"網(wǎng)絡(luò)服務(wù)來指示的。應(yīng)當(dāng)理解,聯(lián) 系人、聯(lián)系人關(guān)系的和副網(wǎng)絡(luò)服務(wù)的列表的列出可以按若干方式完成。圖11 所示的示例和此處所討論的其它示例僅旨在作為示例,并且不旨在限制顯示該 信息的范圍。
以上對此處的技術(shù)的詳細(xì)描述是出于說明和描述的目的而呈現(xiàn)的。并非旨 在窮舉本技術(shù)或?qū)⑵湎抻谒_的精確形式。鑒于上述教導(dǎo),許多修改和變型
都是可能的。選擇上述實施例來最好地解釋本技術(shù)的原理及其實踐應(yīng)用,從而 使本領(lǐng)域其他人能夠在各種實施例中并用各種適于所構(gòu)想的特定用途的修改 一起最好地利用本技術(shù)。本技術(shù)的范圍旨在由所附權(quán)利要求書來定義。
權(quán)利要求
1.一種用于存儲數(shù)據(jù)的計算機(jī)實現(xiàn)的方法,包括(610,630,660)標(biāo)識與由主網(wǎng)絡(luò)服務(wù)維護(hù)的第一簡檔數(shù)據(jù)集相關(guān)聯(lián)的所述主網(wǎng)絡(luò)服務(wù)的第一用戶;(540)從第一副網(wǎng)絡(luò)服務(wù)取得與所述第一用戶相關(guān)聯(lián)的第二簡檔數(shù)據(jù)集,所述主網(wǎng)絡(luò)服務(wù)和副網(wǎng)絡(luò)服務(wù)彼此分開地存儲其各自的用戶簡檔數(shù)據(jù);(830)將與所述主網(wǎng)絡(luò)服務(wù)相關(guān)聯(lián)的第一簡檔數(shù)據(jù)集與同所述副網(wǎng)絡(luò)服務(wù)相關(guān)聯(lián)的第二簡檔數(shù)據(jù)集聚集在一起;以及(850)將所聚集的數(shù)據(jù)存儲在數(shù)據(jù)存儲中。
2. 如權(quán)利要求1所述的計算機(jī)實現(xiàn)的方法,其特征在于,所述第二簡檔數(shù) 據(jù)集由與所述一個或多個數(shù)據(jù)存儲通信的爬行器機(jī)制來取得。
3. 如權(quán)利要求1所述的計算機(jī)實現(xiàn)的方法,其特征在于,所述標(biāo)識步驟包括接收具有所述主網(wǎng)絡(luò)服務(wù)的帳戶的用戶的用戶名和口令。
4. 如權(quán)利要求1所述的計算機(jī)實現(xiàn)的方法,其特征在于,所述取得與所述 第一用戶相關(guān)聯(lián)的第二簡檔數(shù)據(jù)集的步驟包括基于與所述副網(wǎng)絡(luò)服務(wù)的帳戶相關(guān)聯(lián)的第一用戶的用戶標(biāo)識符來確定與 所述副網(wǎng)絡(luò)服務(wù)帳戶相關(guān)聯(lián)的第一用戶的簡檔的位置信息;以及 使用所述位置信息來訪問所述副網(wǎng)絡(luò)服務(wù)的用戶簡檔。
5. 如權(quán)利要求4所述的計算機(jī)實現(xiàn)的方法,其特征在于,所述確定位置信 息的步驟包括基于所述用戶標(biāo)識符來確定URL。
6. 如權(quán)利要求4所述的計算機(jī)實現(xiàn)的方法,其特征在于,所述確定位置信 息的步驟包括根據(jù)所述用戶標(biāo)識符和包含在可由所述主網(wǎng)絡(luò)服務(wù)訪問的配置文件中的URL數(shù)據(jù)來確定所述位置信息。
7. 如權(quán)利要求1所述的計算機(jī)實現(xiàn)的方法,其特征在于,所述存儲步驟包括將關(guān)于所述主網(wǎng)絡(luò)服務(wù)的用戶標(biāo)識信息或認(rèn)證信息以及與所述副網(wǎng)絡(luò)服 務(wù)帳戶相關(guān)聯(lián)的簡檔用戶數(shù)據(jù)存儲在用戶簡檔表中。
8. 如權(quán)利要求1所述的計算機(jī)實現(xiàn)的方法,其特征在于,所述存儲步驟包括將關(guān)于所述主網(wǎng)絡(luò)服務(wù)的用戶標(biāo)識信息以及與所述副網(wǎng)絡(luò)服務(wù)帳戶相關(guān) 聯(lián)的簡檔關(guān)系數(shù)據(jù)存儲在用戶關(guān)系表中。
9. 如權(quán)利要求1所述的計算機(jī)實現(xiàn)的方法,其特征在于,還包括 將所聚集的第一簡檔數(shù)據(jù)集和第二簡檔數(shù)據(jù)集作為一組聚集的簡檔數(shù)據(jù)提供給作出請求的實體。
10. 如權(quán)利要求1所述的計算機(jī)實現(xiàn)的方法,其特征在于,所述提供聚集 的簡檔數(shù)據(jù)的步驟包括從客戶機(jī)接收査看所述第一用戶的簡檔的請求; 取得所聚集的簡檔數(shù)據(jù);以及在將由瀏覽器應(yīng)用程序查看的內(nèi)容頁面數(shù)據(jù)中將所聚集的簡檔數(shù)據(jù)傳送 至所述客戶機(jī)。
11. 一種或多種其上包含有處理器可讀代碼的處理器可讀存儲設(shè)備,所述 處理器可讀代碼用于將一個或多個處理器編程為執(zhí)行一種方法,所述方法包括(910, 1010)接收對主網(wǎng)絡(luò)服務(wù)的一個或多個用戶簡檔的請求; (1020)在數(shù)據(jù)存儲中査詢所請求的一個或多個簡檔,所述數(shù)據(jù)存儲包含根據(jù)所述主網(wǎng)絡(luò)服務(wù)的一個或多個第一簡檔數(shù)據(jù)集以及一個或多個副網(wǎng)絡(luò)服 務(wù)的一個或多個第二簡檔數(shù)據(jù)集來構(gòu)建的聚集的簡檔數(shù)據(jù),其中所述主網(wǎng)絡(luò)服 務(wù)和副網(wǎng)絡(luò)服務(wù)是通過網(wǎng)絡(luò)提供的單獨的服務(wù);(1035 )基于包括在所述一個或多個第一簡檔數(shù)據(jù)集和所述一個或多個第 二簡檔數(shù)據(jù)集中的關(guān)系數(shù)據(jù)來訪問所述聚集的簡檔數(shù)據(jù)的子集,(圖4A、 4B)其中所述副網(wǎng)絡(luò)服務(wù)的一個或多個第二簡檔數(shù)據(jù)集中的關(guān) 系數(shù)據(jù)包括未在所述主網(wǎng)絡(luò)服務(wù)的一個或多個第一簡檔數(shù)據(jù)集的關(guān)系數(shù)據(jù)中 指定的、所述主網(wǎng)絡(luò)服務(wù)的兩個用戶之間的可信關(guān)系;以及(930)將所述聚集的簡檔數(shù)據(jù)的子集提供給所述客戶機(jī)。
12. 如權(quán)利要求11所述的一種或多種處理器可讀存儲設(shè)備,其特征在于, 所述査詢數(shù)據(jù)存儲的步驟包括訪問包含所述一個或多個副網(wǎng)絡(luò)服務(wù)上的、所述主網(wǎng)絡(luò)服務(wù)的用戶之間的 關(guān)系數(shù)據(jù)的用戶關(guān)系表。
13. 如權(quán)利要求11所述的一種或多種處理器可讀存儲設(shè)備,其特征在于, 所述請求包括準(zhǔn)則參數(shù)和關(guān)系分隔參數(shù),所述査詢包括對于所述數(shù)據(jù)存儲的所 述準(zhǔn)則參數(shù)和所述關(guān)系分隔參數(shù)。
14. 如權(quán)利要求13所述的一種或多種處理器可讀存儲設(shè)備,其特征在于,所述關(guān)系分隔參數(shù)指示所述主網(wǎng)絡(luò)服務(wù)的指定簡檔和所述聚集的簡檔數(shù)據(jù)的 子集內(nèi)的一個或多個簡檔中的每一個之間所允許的分隔等級。
15. 如權(quán)利要求11所述的一種或多種處理器可讀存儲設(shè)備,其特征在于, 所述關(guān)系數(shù)據(jù)指示存在于所述主網(wǎng)絡(luò)服務(wù)中的第一用戶和第二用戶之間的第一可信關(guān)系;存在于所述副網(wǎng)絡(luò)服務(wù)中的所述第二用戶和第三用戶之間的第二可信關(guān)系;以及存在于二級分隔的所述第一用戶與所述第三用戶之間的關(guān)系。
16. 如權(quán)利要求11所述的一種或多種處理器可讀存儲設(shè)備,其特征在于, 所述聚集的數(shù)據(jù)的子集包括符合所述查詢的一個或多個簡檔中的一個或多個 所選簡檔,所述所選簡檔中的至少一個包括從所述主網(wǎng)絡(luò)服務(wù)和所述副網(wǎng)絡(luò)服 務(wù)訪問的聚集的簡檔數(shù)據(jù)。
17. —種用于訪問數(shù)據(jù)的計算機(jī)實現(xiàn)的方法,包括(610, 630, 650)選擇與由主網(wǎng)絡(luò)服務(wù)維護(hù)的第一簡檔數(shù)據(jù)集相關(guān)聯(lián)的所述主網(wǎng)絡(luò)服務(wù)的第一用戶;(540)從第一副網(wǎng)絡(luò)服務(wù)取得與所述第一用戶相關(guān)聯(lián)的第二簡檔數(shù)據(jù)集; (550)將所述第二簡檔數(shù)據(jù)集存儲在與所述第一主網(wǎng)絡(luò)服務(wù)相關(guān)聯(lián)的一個或多個數(shù)據(jù)存儲中,其中所述存儲步驟包括在所述一個或多個數(shù)據(jù)存儲中將與所述主網(wǎng)絡(luò)服務(wù)相關(guān)聯(lián)的第一簡檔數(shù)據(jù)集與同所述副網(wǎng)絡(luò)服務(wù)相關(guān)聯(lián)的第二簡檔數(shù)據(jù)集鏈接;(910)從客戶機(jī)接收對主網(wǎng)絡(luò)服務(wù)的一個或多個用戶簡檔的請求,所述 請求與關(guān)系分隔參數(shù)相關(guān)聯(lián);(1025)選擇匹配所述關(guān)系分隔參數(shù)的鏈接的數(shù)據(jù),(圖4A, 4B)其中所選鏈接的數(shù)據(jù)包括未在所述主網(wǎng)絡(luò)服務(wù)的一個或多 個第一簡檔數(shù)據(jù)集的關(guān)系數(shù)據(jù)中指定的、所述主網(wǎng)絡(luò)服務(wù)的兩個用戶之間的可 信關(guān)系;以及(930)將所述所選鏈接的數(shù)據(jù)提供給所述客戶機(jī)。
18. 如權(quán)利要求17所述的用于訪問數(shù)據(jù)的計算機(jī)實現(xiàn)的方法,其特征在于, 所述鏈接的數(shù)據(jù)包括與來自所述副網(wǎng)絡(luò)服務(wù)的簡檔數(shù)據(jù)聚集在一起的來自所 述主網(wǎng)絡(luò)服務(wù)的簡檔數(shù)據(jù)。
19. 如權(quán)利要求17所述的用于訪問數(shù)據(jù)的計算機(jī)實現(xiàn)的方法,其特征在于, 所述鏈接的數(shù)據(jù)包括與來自所述副網(wǎng)絡(luò)服務(wù)的簡檔數(shù)據(jù)合并的來自所述主網(wǎng)絡(luò)服務(wù)的簡檔數(shù)據(jù)和內(nèi)容數(shù)據(jù)。
20.如權(quán)利要求17所述的用于訪問數(shù)據(jù)的計算機(jī)實現(xiàn)的方法,其特征在于,所述鏈接的數(shù)據(jù)通過與所述副網(wǎng)絡(luò)服務(wù)和所述主網(wǎng)絡(luò)服務(wù)相關(guān)聯(lián)的關(guān)系數(shù)據(jù) 來相關(guān),所述關(guān)系數(shù)據(jù)被存儲在與所述主網(wǎng)絡(luò)服務(wù)相關(guān)聯(lián)的一個或多個數(shù)據(jù)存 儲中。
全文摘要
可從一個網(wǎng)絡(luò)服務(wù)組合并查詢來自多個網(wǎng)絡(luò)服務(wù)的簡檔數(shù)據(jù)。主網(wǎng)絡(luò)服務(wù)可存儲一個或多個副網(wǎng)絡(luò)服務(wù)以及該主網(wǎng)絡(luò)服務(wù)的用戶簡檔數(shù)據(jù)。在存儲時,可聚集或合并來自多個網(wǎng)絡(luò)的數(shù)據(jù)。所存儲的數(shù)據(jù)可包括主網(wǎng)絡(luò)服務(wù)具有其簡檔帳戶的每一個網(wǎng)絡(luò)服務(wù)的用戶簡檔數(shù)據(jù)和關(guān)系數(shù)據(jù)??蓸?gòu)造存在于主網(wǎng)絡(luò)服務(wù)和一個或多個副網(wǎng)絡(luò)服務(wù)上的用戶-聯(lián)系人關(guān)系圖并可對其進(jìn)行查詢。
文檔編號G06F17/40GK101689210SQ200880020079
公開日2010年3月31日 申請日期2008年6月2日 優(yōu)先權(quán)日2007年6月21日
發(fā)明者J·C·弗格爾, M·I·托雷斯, O·奧巴薩杰, R·多林 申請人:微軟公司