專利名稱:對查詢輸入進行基于模式的過濾的制作方法
技術領域:
本發明涉及數據處理領域,具體涉及對候選査詢參數值進行基于 模式的過濾(pattern based-filtering)。
背景技術:
通常,系統使用數據庫管理系統(DBMS)來根據一個或更多個 關鍵字值(key value)來進行高效的查詢,其中包括關鍵字的屬性是 提前已知的并且被定義到數據庫的結構中。當系統需要根據復雜的可 變模式來執行査找時,大多數解決方案采用査找中的嵌入式邏輯(規 則)或用于將來自多個査找的數據相組合的公式。基于邏輯的和基于 公式的解決方案通常要求在需要定義或增加(augment)模式時代碼發 生改變。此外,這些解決方案還要求在計算機上執行更多指令,并由 于相關數據在系統上的分布的原因而需要讀取更多的數據
發明內容
將結合附圖并以示例實施例的方式而并非限制的方式來描述本 發明,附圖中相似的參考標記代表相似的要素,其中 圖l示出了本發明不同實施例的概圖; 圖2示出了根據不同實施例的所選操作的流程圖3示出了根據不同實施例的模式匹配操作的文氏圖(Venn diagram)表示;以及
圖4是示出了根據不同實施例的、適用于實現本發明的示例計算 機系統的框圖。
具體實施例方式
本發明的示例實施例包括但不限于用于利用計算設備來接收搜 索請求的方法和設備,所述搜索請求指定結果(outcome)類型以及一 個或更多個候選查詢參數值。計算設備還可以通過考慮到與結果類型 相關聯的多個模式對候選査詢參數值進行過濾,以選擇候選查詢參數 值當中的一些或全部,從而便于以所選擇的査詢參數值來査詢數據庫。
將使用本領域技術人員一般采用的術語來描述示意性實施例的 不同方面,以將其工作的原理傳達給其他本領域技術人員。然而,本 領域技術人員將清楚,可以僅采用所述方面當中的一些方面來實現可 選實施例。出于說明目的,提出特定的數字、材料、以及配置,以提 供對示意性實施例的徹底理解。然而,本領域技術人員將清楚,可以 實現可選實施例而無需這些特定細節。在其他示例中,為了不使本發 明變得晦澀,省略或簡化了公知的特征。
此外,將以最有助于理解示意性實施例的方式把不同操作描述為 多個不連續的操作;然而,不應將描述的順序理解為意指這些操作是 必然依賴于順序的。具體地,不需要按照所示的順序來執行這些操作。
重復地使用短語"在一個實施例中"。該短語一般不指同一實施 例;然而,其可以指的是同一實施例。除非內容另有指示,否則術語 "包括"、"具有"、以及"包含"是同義的。短語"A/B"是指"A或 B"。短語"A和/或B"是指"(A)、 (B)、或(A和B)"。短語"A、 B和C當中的至少一個"是指"(A)、 (B)、 (C)、 (A和B)、 (A和C)、 (B 和C)或(A、 B和C)"。短語"(A) B"是指"(B)或(AB)",艮卩,
A是可選的。
圖l示出了本發明不同實施例的概圖。如所示的,服務器104可以 接收來自請求器(requestor ) 102的請求,該請求標識了所尋找的 (sought)結果類型以及潛在地與結果類型有關的、由請求器選擇的 一個或更多個候選査詢參數值。當接收到請求時,服務器104可以調用 模式匹配和搜索/查詢邏輯106 (下文中稱作"邏輯106")。邏輯106可 以通過考慮到與結果類型相關聯的多個模式而對候選査詢參數值進行 過濾,來選擇候選查詢參數值當中的一個或更多個。在一些實施例中, 邏輯106然后可以以所選擇的查詢參數值以及它們的相關類型來査詢 數據庫108,以確定與結果類型相關聯的一個或更多個結果。服務器104 然后可以向請求器102提供一個或更多個結果或其子集。
如所示的,除了邏輯106之外,請求器102和/或服務器104各自可
以是本領域己知的任何種類的計算設備以及適于執行此處更全面描述 的操作的其他邏輯中的一個或更多個。請求器102和/或服務器104各自 可以是個人計算機(PC)、工作站、服務器、路由器、主機(mainframe)、 刀片服務器(blade server)或高密度服務器內的模塊化計算機(modular computer)、個人數字助理(PDA)、娛樂中心、機頂盒或移動設備。 此外,除了邏輯106之外,請求器102和/或服務器104各自可以是本領 域已知的任何單一或多處理器或處理器核心中央處理單元(CPU)計 算系統,以及適于執行此處更詳細描述的操作的其他邏輯。圖4示出了 示例單一/多處理器或處理器核心請求器102和/或服務器104,這里將
對它們進行更詳細的描述。
如前述的,請求器102可以針對特定結果類型向服務器104發出搜 索請求。例如,請求器102可以尋找計算設備的標識。這樣的請求器102
可以將"設備標識符"指定為所尋找的結果類型。
請求器102還可以在請求中包含一個或更多個候選查詢參數值。 在一些實施例中,請求器102可以包含候選查詢參數值及其相關類型作 為名稱/值對的集合。例如,尋找設備標識符的請求器102可以包括與以下査詢參數類型相對應的一個或更多個候選査詢參數值權標
(token)、媒體存取控制地址(MACA)、 WIND、 WPID、 HDID、 IEID、 帳戶標識符(account identifier) (ACCT)、服務提供商標識符(ISP)、 城市、區域、國家、或時區。這些類型中,MACA、 WIND、 WPID、 HDID、 IEID是本領域已知的。諸如ACCT或ISP之類的類型可以與其 標識被尋找的計算設備的服務預定(service subscription)相關聯。諸 如城市、區域、國家、或時區之類的類型可以與其標識被尋找的計算 設備的位置相關聯。權標類型可以是設備標識符,該設備標識符在一 個時間點唯一地標識了其標識被尋找的計算設備。在于2007年10月24 曰提交的標題為 "Creating and Verifying Globally Unique Device-Specifc Identifiers"美國專利申請No.ll/xxx,xxx中更詳細地描 述了這樣的權標。
在一些實施例中,請求器102還可以在請求中包含最小權重閾值 以及最大結果數目。如此處將更詳細描述的,每個結果可以與權重相 關聯,請求器102可以指定閾值以縮減(narrow)從服務器104接收的 結果的數目和/或質量。請求器102還可以指定最大結果數目以縮減所 接收的結果的數目。在不同實施例中,請求器102可以是同步或異步進 程(process),并且當發出請求時可以或不可以等待來自服務器104的 響應。在發出請求之后的某一時間點,請求器102可以從服務器104接 收由結果(以及在一個實施例中它們的相關權重)組成的數組。
在不同實施例中,請求器102可以是服務器104所提供的服務的訂 戶,并且請求器102自身可以與其他末端用戶計算設備交互。在一個實 施例中,請求器102可以尋找這些末端用戶設備之一的標識,將感興趣 的計算設備的設備標識符標識為結果類型,以及提供計算設備的多個 描述符作為查詢參數值。
在一些實施例中,請求器102和服務器104實際上可以存在于同一 計算設備上,并且可以是所述設備的服務器或客戶端進程。在其他實 施例中,如出于說明目的而全面描述的,請求器102和服務器104可以 是分開的、遠程布置的計算設備。在請求器102被布置為遠離服務器104 的不同實施例中,請求器102和服務器104可以彼此通信連接。在一些實施例中,可以通過聯網結構(networking fabric)(未示出)來連接 請求器102和服務器104。如本領域已知的,這樣的聯網結構可以包括 LAN、 WAN、以及互聯網當中的一個或更多個。
如所示出的,如前述的,服務器104可以包括邏輯106,所述邏輯 106用于產生模式、用于根據這些模式進行過濾以選擇査詢參數值、用 于以所選擇的值來査詢數據庫108、以及用于接收來自査詢的結果。服 務器104還可以包括一個或更多個計算設備,如前述的,在一個實施例 中,邏輯106可以是分散在服務器104的多個計算設備上的分布式進程。 在一些實施例中,服務器104還可以包括數據庫108。在其他實施例中, 數據庫108可以位于另一遠程布置的計算設備(如數據庫服務器)上。
在不同實施例中,邏輯106可以是全部或部分位于服務器104上的 任何單線程(single-threaded)或多線程(multi-threaded)進程。首先, 可以響應于服務器104接收到來自請求器102的搜索請求,由服務器104 經由例如函數調用(function call)來調用邏輯106。先前以及非常詳 細地描述了示例搜索請求的內容。當被調用時,邏輯106可以首先例如 通過對請求進行解析(parse)來確定包含在請求中的結果類型。 一旦 確定了結果類型,邏輯106就可以產生與結果類型相關聯的模式,或檢 索(retrieve)先前產生的與結果類型相關聯的模式。
在一些實施例中,邏輯106可以通過考慮到對結果類型與查詢參 數類型的組合當中的查詢參數類型之間的關聯進行證實的歷史數據, 在統計上使結果類型與所述查詢參數類型的組合相關,從而產生多個 模式。i一個實施例中,多個模式當中的每個模式可以包括一個或更 多個査詢參數類型。可以由邏輯106根據査詢參數類型之間的某種邏輯
相關性來形成查詢參數類型的組合。例如,描述位置的所有參數類型 可以形成一個組合。 一旦形成了組合,就可以考慮到歷史數據使這些 組合與結果類型統計上相關。可以由邏輯106從數據庫108或從對結果 類型與查詢參數類型的組合之間的關聯的描述加以存儲的一些其他遠 程或本地源檢索歷史數據。例如,相關性可以包括選擇以下所有組合 作為模式所述組合預先確定了具有超過預定閾值的權重值的結果類 型的結果。這只不過是眾多產生模式的方法當中的一個方法。可以另外地或取代地使用許多其他方法,如機器學習工具或基于模式(schema based)的分析。在一個實施例中,多個所產生的模式可以包括第一模 式、第二模式、第三模式、第四模式或第五模式當中的至少一個,所 述第一模式包括權標,所述第二模式包括MACA和WIND,所述第三 模式包括WIND、 WPID、 HDID以及IEID,所述第四模式包括帳戶標 識符以及服務提供商標識符,所述第五模式包括城市、國家、區域、 以及時區。
在不同實施例中,當產生或檢索模式時,邏輯106可以使用模式 從包含在請求中的一個或更多個候選查詢參數值當中進行選擇或過 濾。邏輯106可以首先對請求進行解析,以確定該請求是包括參數類型 和作為名稱/值對的值兩者,還是僅包括候選査詢參數值。如果僅包括 值,則邏輯106可以對值進行分析以確定這些值可能與哪些類型相關 聯。 一旦可以檢索或確定與候選查詢參數值相關聯的查詢參數類型, 則邏輯106可以考慮到模式來對查詢參數類型進行過濾,所述過濾包 括使候選査詢參數值的查詢參數類型與模式的査詢參數類型相交 (intersect),以確定查詢參數類型的集合,所述查詢參數類型的集合 與交集(intersection)相對應,并且對于該查詢參數類型的集合,發 現模式的所有查詢參數類型都與候選査詢參數值的査詢參數類型相 交。圖3示出了相交(intersecting)和集合確定(set-determining)的 文氏圖,此處將對其進行更詳細的描述。如圖3所示,如果查詢參數類 型屬于模式,且針對該模式在請求中發現該模式的每個類型,則可以 將這些查詢參數類型確定為集合的一部分。在一些實施例中,不與任 何模式相交的請求的查詢參數類型可能不包含在集合中。一旦邏輯106 確定了査詢參數類型的集合,則邏輯106就可以形成由這些類型及其相
關聯的候選查詢參數值組成的名稱/值對(下文中將所形成的名稱值對 稱作"簽名(signature)")。
在一些實施例中,當確定/選擇簽名時,邏輯106可以產生包括簽 名和結果類型的查詢。然后邏輯106可以查詢數據庫108。邏輯106可以 查詢數據庫108以將簽名的名稱/值對與通過數據庫108與結果相關聯 的名稱/值對進行精確匹配,這些結果包括查詢結果。在一個實施例中,每個結果的權重值也可以是結果。在不同實現中,可以利用邏輯106 使用Oracle DBMS執行計劃來執行查詢,其中所述Oracle DBMS執行計 劃可以在單個最優化查詢中進行查找,而不是針對簽名的每個名稱/ 值對來進行一系列的查找。為了完成這個任務,邏輯106可以采用預先 設置的字典統計學(dictionary statistics)將簽名存儲在全局臨時表中, 并且可以使用采用NO—HASH提示(hint)的查詢來得到在性能上等同 于直接査找的執行計劃。在不同實施例中,可以使用本領域已知的任 何查詢語言如SQL來形成査詢。在其他實施例中,不同于通過邏輯106 產生查詢自身,服務器104還可以向另一計算設備提供簽名以將查詢公 式化。
在將數據庫108布置為遠離服務器104的一個實施例中,服務器 104與數據庫108可以彼此通信連接。在一些實施例中,可以通過聯網 結構(未示出)來連接服務器104與數據庫108。如本領域己知的,這 樣的聯網結構可以包括LAN、 WAN以及互聯網當中的一個或更多個。
如所示的,在進行査詢之后的某一時間點,邏輯106可以從數據 庫108接收多個結果作為查詢結果。如前述的,査詢結果還可以包括針 對每個結果的權重值。如果包含了針對結果的權重值,則邏輯106可以 確定是否有結果是相同的。對于相同的結果,如具有權重值8的第一結 果設備1和具有權重值24的第二結果設備1,邏輯106可以對權重值進行 累加/合計,達到具有合計權重值的一個組合結果,如具有權重值32 的組合結果設備l。在一個實施例中,累加/合計可以包括將權重值相 加,合計權重值可以包括總計的權重值。
然后邏輯106可以檢査搜索請求以確定該請求是否指定了權重閾
值或指定了最大結果數目。在一些實施例中,如果沒有指定閾值也沒 有指定最大數目,則邏輯106可以簡單地為請求器102提供在査詢結果 中接收到的所有結果(及其權重值,如果包含在結果中的話)。在其他 實施例中,邏輯106可以使用缺省閾值和缺省最大結果數目,并且可以 釆用與搜索請求已經指定了該閾值和最大數目的情況下一樣的方式來 進行操作。
在不同實施例中,邏輯106可以進行將結果/組合結果的權重值/合計權重值與缺省指定或提供的權重閾值相比較。在第一實施例中, 在搜索結果中可以不包含權重值小于閾值的任何結果。在第二實施例 中,在搜索結果中可以不包含權重值大于閾值的任何結果。例如,如 果閾值是12,則在第一實施例中可以包含具有權重值32的前述組合結
果。然后邏輯106可以確定剩余結果的數目是否超過了缺省指定或提供 的最大數目。如果超過了最大數目,則在一個實施例中邏輯106可以不
在搜索結果中包含具有最低權重值的一定數目的結果,這些結果的數 目等于剩余結果的數目與最大數目之差,其中所謂的"最低"是依據 不同實施例而不同的。在另一實施例中,可以不包含具有最高權重值 的一定數目的結果,其中所謂的"最高"是依據不同實施例而不同的。
在根據閾值和/或最大數目而減少結果之后,邏輯106可以如前述地提 供剩余結果及其權重值,作為由結果/權重值對組成的數組。
如所示的,除了內部結構(例如,表)和數據之外,數據庫108 可以是本領域已知的任何種類的數據庫。數據庫108可以是關系數據庫 (relational database)、標準化數據庫(normalized database)、非標準 化數據庫(de-normalized database)、或文件。在不同實施例中,數據 庫108可以存儲針對多個結果類型的多個結果。數據庫108還可以包括 使結果與查詢參數值相關聯的一個或更多個表,其中結果位于由結果 類型規定的列中,而查詢參數值位于由査詢參數類型規定的列中。數 據庫108還可以包括多個其他表,所述表包含對便于邏輯106的前述操 作而言必要的數據,可以針對由邏輯106公式化的查詢提供結果。在一 個實施例中,數據庫108還可以存儲前述歷史數據,以便于 邏輯106產 生多個模式。
圖2示出了根據不同實施例的所選擇的操作的流程圖。如所示出 的,諸如搜索服務器104之類的計算設備可以接收搜索請求(塊202), 所述搜索請求指定結果類型以及一個或更多個候選查詢參數值。在一 些實施例中,計算設備然后可以(或在之前的某個時間,如前述的) 通過考慮到對結果類型與查詢參數類型的組合當中的查詢參數類型之 間的關鍵進行證實的歷史數據,而使結果類型與所述查詢參數類型的 組合統計上相關,以產生多個模式(塊204)。在一個實施例中,多個模式當中的每個模式可以包括一個或更更多個査詢參數類型。所述多 個模式可以包括第一模式、第二模式、第三模式、第四模式或第五模 式當中的至少一個,所述第一模式包括權標,所述第二模式包括MACA
和WIND,所述第三模式包括WIND、 WPID、 HDID以及IEID,所述第
四模式包括帳戶標識符和服務提供商標識符,所述第五模式包括城市、 國家、區域以及時區。
在不同實施例中,計算設備然后可以通過考慮到與結果類型相關 聯的多個模式對候選査詢參數值進行過濾,來選擇候選查詢參數值當 中的一些或全部(塊206),以便于以所選擇的査詢參數值來查詢數據 庫。在一些實施例中,所述過濾可以包括使候選査詢參數值的查詢 參數類型與模式的査詢參數類型相交,以確定査詢參數類型的集合, 所述查詢參數類型的集合與交集相對應,并且對于所述查詢參數類型 的集合,模式的所有查詢參數類型與候選査詢參數值的查詢參數類型 相交;以及所述選擇可以包括選擇與所確定的集合的查詢參數類型 相對應的候選査詢參數值。
如所示的,計算設備然后可以以所選擇的查詢參數值及其相關聯 的類型來查詢數據庫(塊208),以確定與結果類型相關聯的一個或更 多個結果。作為響應,計算設備可以接收針對每個所選擇的査詢參數 值的結果以及針對每個結果的相關聯權重(塊210),并且可以合計相 同結果的權重值(塊212)。在一些實施例中,計算設備然后可以提供 對搜索請求的響應(塊214),所述響應包括至多最大數目的結果,并 且僅包括其權重值在量值(magnitude)上大于預定閾值的結果,在搜 索請求中指定了所述最大數目以及預定閾值。
圖3示出了根據不同實施例的模式匹配操作的文氏圖表示。如所 示的,多個模式可以與接收到的搜索請求中所提供的和候選值相關聯 的査詢參數類型相交。在圖中,搜索請求由最大的圓來表示,每個模 式均由其他圓之一來表示。每個模式包括一個或更多個查詢參數類型。 例如,所示模式包括第一模式、第二模式、第三模式、第四模式或第 五模式,所述第一模式包括權標,所述第二模式包括MACA和WIND, 所述第三模式包括WIND、 WPID、 HDID和IEID,所述第四模式包括帳戶標識符(ACCT)和服務提供商標識符(ISP),所述第五模式包 括城市和DWZL。例如,所示搜索請求包括與請求的候選值相對應的 以下查詢參數類型權標、MACA、 WIND、 WPID、 HDID、 IEID、 ISP、區域、以及WMPL。如前述的,服務器104可以使模式與査詢參 數類型相交,以確定查詢參數類型的集合,所述査詢參數類型的集合 與交集相對應,并且對于所述查詢參數類型的集合,模式的所有查詢 參數與候選值的查詢參數類型相交。在圖3中,例如所述集合包括權 標、MACA、 WIND、 WPID、 HDID以及IDID類型。盡管ISP類型確實 與模式的某個查詢參數類型相交,然而該模式的其他類型(ACCT) 并不與同該搜索請求相關聯的查詢參數類型相交。因此,ISP類型并不 包含在該集合中。如前述的,然后服務器104可以使用與所確定的集合 的查詢參數類型相關聯的候選查詢參數值來查詢數據庫108。
圖4是示出了根據不同實施例的、適用于實現本發明的示例計算 機系統的框圖。如所示的,計算系統400包括一個或更多個處理器或處 理器核心402以及系統存儲器404。對于包含權利要求在內的本申請, 除非上下文明確提出另有不同,否則認為術語"處理器"和"處理器 核心"是同義的。此外,計算系統400包括大容量存儲設備406 (如, 軟盤、硬盤、光盤只讀存儲器(CDROM)等等),輸入/結果設備408 (如,鍵盤、光標控制(cursor control)等等),以及通信接口410 (如, 網絡接口卡、調制解調器等等)。這些元件經由系統總線412彼此耦合, 所述系統總線412表示一條或更多條總線。在多條總線的情況下,利用 一個或更多個總線橋(bus bridge)(未示出)來橋接這些元件。
這些元件當中的每個元件執行它自己的、本領域中已知的傳統功 能。具體地,可以采用系統存儲器404和大容量存儲設備406來存儲實 現所有或一部分前述功能的程序指令(programming instruction)的工 作時副本(working copy)和永久性副本(permanent copy)(這里總體 上表示為422)。指令422可以是處理器402所支持的匯編指令或可以是 從高級語言(例如C)編譯的指令。
例如,可以通過諸如光盤(CD)之類的分布介質(未示出)或通 過通信接口410 (來自分布服務器(未示出)),在工廠(factory)中或在現場中將程序指令的永久性副本置于永久性存儲設備406中。g卩,可
以采用具有指令422的一個或更多個分布介質來分發指令422并對不同
計算設備進行編程。
這些元件402-412的構成是已知的,從而將不對其進行進一步描述。
在本發明的實施例(未示出)中,可以采用制品(article of manufacture)來實現這里所公開的一個或更多個方法。例如,在示例 實施例中,制品可以包括存儲介質以及存儲在所述存儲介質中的多個 程序指令,這些程序指令適于對設備進行編程以使設備可以接收搜索 請求,所述搜索請求指定了結果類型以及一個或更多個候選査詢參數 值。在這些實施例當中的不同實施例中,程序指令可以適于通過考慮 到與結果類型相關聯的多個模式來對一個或更多個候選查詢參數值進
行過濾,以選擇查詢參數值。在不同實施例中,程序指令可以適于以 所選擇的査詢參數值來查詢數據庫,以確定一個或更多個結果。
盡管此處說明并描述了特定的實施例,然而本領域技術人員將意 識到,在不脫離本發明的范圍的前提下,有各種各樣的備選方案和/ 或等效實現可以替換所示出并描述的這些特定實施例。本領域技術人 員將容易意識到,可以在各種各樣的實施例及其擴展中實現本發明。 本申請旨在覆蓋此處所述實施例的任何調整或變化。因此,本申請顯 然意指本發明僅受權利要求及其等同物的限制。
權利要求
1、一種方法,包括利用計算設備接收搜索請求,所述搜索請求指定結果類型以及一個或更多個候選查詢參數值;利用所述計算設備,通過考慮到與結果類型相關聯的多個模式,對候選查詢參數值進行過濾,來選擇候選查詢參數值當中的一些或全部,從而便于以所選擇的查詢參數值來查詢數據庫。
2、 根據權利要求l所述的方法,其中,所述多個模式中的每個模式包括一個或更多個查詢參數類型。
3、 根據權利要求2所述的方法,其中,所述多個模式包括第一模 式、第二模式、第三模式、第四模式或第五模式當中的至少一個,所 述第一模式包括權標,所述第二模式包括MACA和WIND,所述第三 模式包括WIND、 WPID、 HDID以及IEID,所述第四模式包括帳戶標 識符和服務提供商標識符,所述第五模式包括城市、國家、區域以及 時區。
4、 根據權利要求2所述的方法,其中,所述過濾包括使候選查 詢參數值的查詢參數類型與模式的査詢參數類型相交,以確定查詢參 數類型的集合,所述查詢參數類型的集合與交集相對應,并且對于所 述查詢參數類型的集合來說,模式的所有查詢參數類型與候選查詢參 數值的查詢參數類型相交;以及所述選擇包括選擇與所確定的集合 的查詢參數類型相關聯的候選査詢參數值。
5、 根據權利要求2所述的方法,還包括利用所述計算設備,通 過考慮到對結果類型與查詢參數類型的組合中的查詢參數類型之間的 關聯進行證實的歷史數據,在統計上使結果類型與所述査詢參數類型 的組合相關,來產生所述多個模式。
6、 根據權利要求l所述的方法,還包括利用所述計算設備,以所選擇的查詢參數值及其相關聯的類型來查詢數據庫,以確定與結果 類型相關聯的一個或更多個結果。
7、 根據權利要求6所述的方法,還包括-利用所述計算設備,接收針對每個所選擇的査詢參數值的結果以 及針對每個結果的相關聯權重值,以及利用所述計算設備,合計相同結果的權重值。
8、 根據權利要求7所述的方法,還包括利用所述計算設備提供 對搜索請求的響應,所述響應包括至多最大數目的結果,并且僅包括 其權重值在量值上大于預定閾值的結果,所述最大數目和所述預定閾 值是已在所述搜索請求中規定的。
9、 一種設備,包括 處理器;以及由所述處理器操作的邏輯,該邏輯用于接收搜索請求,所述搜索請求指定結果類型以及一個或更多 個候選查詢參數值,通過考慮到與結果類型相關聯的多個模式,對一個或更多個 候選查詢參數值進行過濾,來選擇查詢參數值,以所選擇的查詢參數值來查詢數據庫,從而確定一個或更多 個結果。
10、 根據權利要求9所述的設吝,其中,所述多個模式中的每個模式包括一個或更多個査詢參數類型。
11、 根據權利要求10所述的設備,其中,所述多個模式包括第一模式、第二模式、第三模式、第四模式或第五模式當中的至少一個,所述第一模式包括權標,所述第二模式包括MACA和WIND,所述第 三模式包括WIND、 WPID、 HDID以及IEID,所述第四模式包括帳戶 標識符和服務提供商標識符,所述第五模式包括城市、國家、區域以 及時區。
12、 根據權利要求10所述的設備,其中,所述邏輯用于所述過濾,所述過濾還包括使候選查詢參數值的查詢參數類型與模式的査詢參數類型相交,以確定查詢參數類型的集合,所述査詢 參數類型的集合與交集相對應,并且對于所述查詢參數的集合來說, 模式的所有查詢參數類型與候選查詢參數值的查詢參數類型相交,以及所述選擇,所述選擇還包括選擇與所確定的集合的查詢參數類 型相關聯的候選查詢參數值。
13、 根據權利要求10所述的設備,其中,所述邏輯還用于通過 考慮到對結果類型與查詢參數類型的組合中的查詢參數類型之間的關 聯進行證實的歷史數據,在統計上使結果類型與所述查詢參數類型的 組合相關,來產生所述多個模式。
14、 根據權利要求9所述的設備,其中,所述邏輯用于所述查詢, 所述查詢包括以所選擇的查詢參數值及其相關聯的類型來査詢數據 庫,以確定一個或更多個結果,所述結果與結果類型相關聯。
15、 根據權利要求14所述的設備,其中,所述邏輯還用于接收針對每個所選擇的查詢參數值的結果以及針對每個結果的 相關聯權重值,以及合計相同結果的權重值。
16、 根據權利要求15所述的設備,其中,所述邏輯還用于提供對 搜索請求的響應,所述響應包括至多最大數目的結果,并且僅包括其 權重值在量值上大于預定閾值的結果,所述最大數目和所述預定閾值 是已在所述搜索請求中規定的。
17、 一種制品,包括 存儲介質;以及存儲在所述存儲介質上的多個程序指令,被配置為使設備能夠進行如下操作接收搜索請求,所述搜索請求指定結果類型以及一個或更多 個候選査詢參數值,考慮到與結果類型相關聯的多個模式,對一個或更多個候選 查詢參數值進行過濾,來選擇查詢參數值,以所選擇的查詢參數值查詢數據庫,從而確定一個或更多個 結果。
18、 根據權利要求17所述的制品,其中,所述多個模式中的每個模式包括一個或更多個查詢參數類型。
19、 根據權利要求18所述的制品,其中,所述多個模式包括第一 模式、第二模式、第三模式、第四模式或第五模式當中的至少一個,所述第一模式包括權標,所述第二模式包括MACA和WIND,所述第 三模式包括WIND、 WPID、 HDID以及IEID,所述第四模式包括帳戶 標識符和服務提供商標識符,所述第五模式包括城市、國家、區域以 及時區。
20、 根據權利要求18所述的制品,其中,所述程序指令還被配置 為使所述設備能夠進行如下操作所述過濾,所述過濾還包括使候選查詢參數值的査詢參數類型與模式的查詢參數類型相交以確定查詢參數類型的集合,所述查詢參 數類型的集合與交集相對應,并且對于所述査詢參數類型的集合來說, 模式的所有查詢參數類型與候選査詢參數值的査詢參數類型相交,以 及所述選擇,所述選擇還包括選擇與所確定的集合的査詢參數類 型相關聯的候選査詢參數值。
全文摘要
此處描述了利用計算設備來接收搜索請求的方法、設備以及產品,所述搜索請求指定結果類型以及一個或更多個候選查詢參數值。計算設備還可以通過考慮到與結果類型相關聯的多個模式來對候選查詢參數值進行過濾,以選擇候選查詢參數值當中的一些或全部,從而便于以所選擇的查詢參數值來查詢數據庫。
文檔編號G06F7/00GK101563670SQ200780040058
公開日2009年10月21日 申請日期2007年10月25日 優先權日2006年10月25日
發明者丹尼爾·盧立齊, 巴特·倫查, 格雷戈·皮爾遜 申請人:約維申有限公司