[發明專利]為快速超標量處理對數據規格化有效
| 申請號: | 201110122796.4 | 申請日: | 2011-05-04 |
| 公開(公告)號: | CN102236699A | 公開(公告)日: | 2011-11-09 |
| 發明(設計)人: | A·瑟納;E·伊斯梅爾;S·蘭加拉杰;N·S·哈諾卡 | 申請(專利權)人: | 微軟公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30;G06F9/38 |
| 代理公司: | 上海專利商標事務所有限公司 31100 | 代理人: | 蔡悅 |
| 地址: | 美國華*** | 國省代碼: | 美國;US |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 快速 標量 處理 數據 規格化 | ||
技術領域
本發明涉及計算機領域,尤其涉及計算機領域的數據處理。
背景技術
每時鐘周期可執行不止一個指令的超標量中央處理單元(CPU)對于計算系統正變得越來越常見。與流水線式的架構不同,超標量架構包括可對許多指令并行操作的多個冗余功能單元。超標量架構和流水線化可被一起使用以提供甚至更多的CPU效率。超標量處理部分取決于處理器擁有(或獨立檢測)固有地并行的指令流,這意味著該流包含對獨立數據集操作或按各操作之間的執行次序不會導致不同結果的方式操作的各操作。這允許處理器同時執行多個操作。
絕大多數數據庫系統在超標量CPU開始支配市場之前被實現。只要在小指令窗口內存在足夠的獨立指令(例如大約多達~100個指令),超標量CPU會更快地處理數據。在這樣的情況下,超標量處理器可檢測足夠的獨立操作以利用多個可用的CPU執行單元。獨立操作是其間不帶有數據或控制流依賴性的那些操作。數據庫系統常常依賴于對超標量架構不再高效的優化。例如,數據庫實現可包括帶有許多條件分支的長的功能。
為利用超標量CPU,數據庫需要改進數據倉庫處理以在對大多數數據倉庫特定數據值的處理中實現更高效率。當前的內部數據表示不適用于高效標量處理。數據庫系統提供可各自包括不同類型的內部數據結構或其他表示的諸如整數、串、浮點、二進制團塊等許多數據類型。這些數據類型中的某些比其他更適合超標量處理。必須小心構造代碼路徑以確保非常高效的處理以及高密度的獨立CPU指令,而這通常不是用在超標量處理器上的數據庫系統的情況。已經建立了各種專用數據倉庫引擎來利用超標量CPU,諸如Monet?DB/X100和Microsoft?Analysis?Service(微軟分析服務)。然而,這些引擎不是通用的關系型數據庫管理系統(RDBMS)引擎并且僅在不解決關于數據庫系統核的超標量問題的有限情形中提供優點。
發明內容
此處描述了以規格化的形式表示數據庫系統內常見的多個數據類型的數據規格化系統,該規格化形式可被統一地處理以在超標量CPU架構上實現對數據更快的處理。數據規格化系統包括對數據庫系統的內部數據表示的改變,以及利用高密度的獨立可執行的CPU指令的的規格化內部數據表示的功能處理改變。由于數據庫中大多數數據是小的,因此大多數數據可以用規格化格式表示。系統包括樂觀地嘗試將所有數據批量處理成規格化的數據的功能,并且以很少的控制流依賴性來緊密地這樣做。在快速處理期間,算法標識沒有被規格化的數據,并且留出該數據以供稍后通過可能不如超標量高效那樣的傳統且較慢算法來處理。由此,數據規格化系統在各種常見情況下允許在數據庫系統中的快速超標量處理,同時維持與現有數據集的兼容性。
提供本發明內容以便以簡化形式介紹將在以下的具體實施方式中進一步描述的一些概念。本發明內容并不旨在標識出所要求保護的主題的關鍵特征或必要特征,也不旨在用于限定所要求保護的主題的范圍。
附圖說明
圖1是示出在一個實施例中的數據規格化系統的各組件的框圖。
圖2是示出在一個實施例中數據規格化系統以存儲器內表示來規格化所存儲的數據的處理的流程圖。
圖3是示出在一個實施例中數據規格化系統執行對具有行和列的表格數據集的操作的處理的流程圖。
圖4是示出在一個實施例中的使用此處描述的規格化表示存儲的數據值的框圖。
具體實施方式
此處描述了以規格化形式表示數據庫系統內常見的多個數據類型的數據規格化系統,該規格化表示可被統一地處理以在超標量CPU架構上實現對數據更快的處理。數據規格化系統包括對數據庫系統的內部數據表示的改變,以及利用高密度的獨立可執行的CPU指令的規格化內部數據表示的功能處理改變。在某些實施例中,系統使用64位二進制值來存儲數據,該64位二進制值可表示規格化數據類型或者用作指向不適合規格化方案的那些數據類型的非規格化數據類型的指針。例如,64位可能不足以存儲某些類型的數據,如長的串或長的二進制團塊。在某些實施例中,64位二進制值中的一位被保留以指示該值是否表示規格化數據類型(例如可使用有效位用于該目的,使得可使用單個CPU移位指令從剩余的63個位中提取數據)。一旦按常見格式表示了所有數據,就更容易提供按超標量高效方式對這種數據進行操作的功能處理。由于數據庫中大多數數據小于64位數據值的大小(例如街道號碼、電話號碼、地區的銷售量等),因此大多數數據可以用規格化格式表示。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于微軟公司,未經微軟公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110122796.4/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種軸流葉輪用定位件
- 下一篇:一種軸流葉輪用定位件
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





