[發明專利]虛擬化查詢中的對象有效
| 申請號: | 200980122239.3 | 申請日: | 2009-05-15 |
| 公開(公告)號: | CN102057377A | 公開(公告)日: | 2011-05-11 |
| 發明(設計)人: | G·L·休斯;C·凱雷;B·M·奧蘭尼科 | 申請(專利權)人: | 微軟公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30;G06F17/40;G06F17/00 |
| 代理公司: | 上海專利商標事務所有限公司 31100 | 代理人: | 胡利鳴;錢靜芳 |
| 地址: | 美國華*** | 國省代碼: | 美國;US |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 虛擬 查詢 中的 對象 | ||
背景
1.背景和相關技術
計算機系統和相關技術影響社會的許多方面。的確,計算機系統處理信息的能力已轉變了人們生活和工作的方式。計算機系統現在通常執行在計算機系統出現以前手動執行的許多任務(例如,文字處理、日程安排和會計等)。最近,計算機系統彼此耦合并耦合到其他電子設備以形成計算機系統和其他電子設備可以在其上傳輸電子數據的有線和無線計算機網絡。因此,許多計算任務的執行分布在多個不同的計算機系統和/或多個不同的計算環境上。
大多數(即使不是全部)計算任務通常包括對數據執行諸如例如創建、修改、刪除等操作來獲得所需結果的軟件(例如,應用程序或操作系統)。由此,對于要獲得所需結果的軟件,該軟件必須能夠訪問適當的數據。例如,為了對文字處理文檔做出編輯,用戶必須定位該文字處理文檔(例如,在文件系統中)并將命令輸入到文字處理程序來指示該文字處理程序打開該文字處理文檔。
如果用戶不知道文檔位置,則用戶可使用各種搜索工具來定位文檔。用戶可將各種搜索項輸入到搜索模塊(例如,文件查找器)中。搜索模塊可在文件系統中搜索包括在搜索項中標識的特征的文檔并將任何所標識的文檔的位置返回給用戶。因此,在某種程度上,用戶將查詢(搜索項)提交給搜索模塊,搜索模塊處理查詢(標識任何匹配),然后搜索模塊返回結果(任何所標識的匹配)。
在許多環境中,使用更復雜的數據操作來創建并訪問較大一部分數據的數據子集。例如在數據庫系統中,數據創建語句可用于創建對數據庫中的數據的視圖。查詢可針對對數據庫(或甚至整個)的視圖(或其他對象)來發出以檢索所需數據子集。基于數據庫中的數據的安排和數據量,數據創建語句和查詢可相對復雜。此外,一系列數據創建語句和查詢可彼此結合使用來更細粒度地訪問數據,導致額外的復雜度。
另外,常常有請求少于全部分組數據集(或子集)來執行所需計算操作的情況。例如,數據庫可包含含有若干顧客的企業地址的地址對象。每一地址對象可包含街道、城市、州和郵政編碼字段。然而,為了執行所需操作(例如,確定每個郵政編碼的顧客數量),只有郵政編碼字段中的值是相關的。因此,可以發出查詢來從每一地址對象的郵政編碼字段中獲得值。
不幸的是,在大部分(即使不是全部)數據庫系統中,當查詢引用對象的一部分(例如,其中的字段)時,整個對象被實例化,從而需要立即對整個對象求值。即,在處理只引用對象的一部分的查詢之前對整個對象求值。例如,郵政編碼查詢可能需要在處理郵政編碼查詢之前實例化整個地址對象。實例化與查詢無關的數據并對其求值不必要地消耗了計算機系統資源并導致查詢處理的低效性。
此外,隨著對象大小增加,計算機系統資源的不必要的消耗以及查詢處理的低效性也增加。例如,考慮下列描述了創建表示訂單的對象的對象查詢:
Order?order=
????????new?Order()
????????{
??????????ItemCount=items.Count(),
??????????ShippingAddress=
?????????????new?Address()
?????????????{
???????????????Street=“123?Abc?Lane”,
???????????????City=“Tukwila”,
???????????????State=“WA”,
???????????????ZipCode=LookupZipCode(…)
?????????????},
??????????TotalCost=
?????????????(from?it?in?items
?????????????select?item.Price).Sum()
????????}
且對對象的查詢是:
Address?address=order.Address
通常對該查詢的求值需要首先實例化Order(訂單)對象,導致此時需要立即對ItemCount(項目計數)、ShippingAddress(送貨地址)和TotalCost(總成本)屬性的表達式求值。然后,ShippingAddress屬性的值將從Order對象實例中檢索。Order對象的創建和對ItemCount和TotalCost屬性的表達式的求值不被第二查詢使用,但無論如何在其創建和求值時使用了計算機系統資源和時間。
簡要概述
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于微軟公司,未經微軟公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200980122239.3/2.html,轉載請聲明來源鉆瓜專利網。





