国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      用于數(shù)據(jù)庫(kù)索引的方法和系統(tǒng)的制作方法

      文檔序號(hào):9810559閱讀:662來(lái)源:國(guó)知局
      用于數(shù)據(jù)庫(kù)索引的方法和系統(tǒng)的制作方法
      【技術(shù)領(lǐng)域】
      [0001] 本發(fā)明涉及數(shù)據(jù)庫(kù),具體的,本發(fā)明涉及用于數(shù)據(jù)庫(kù)索引的方法和系統(tǒng)。
      【背景技術(shù)】
      [0002] 為了提高數(shù)據(jù)庫(kù)查詢的性能,現(xiàn)有技術(shù)中在數(shù)據(jù)庫(kù)的索引中引入了非鍵列(index include)。通常情況下,由數(shù)據(jù)庫(kù)管理員指定需要在數(shù)據(jù)庫(kù)的索引中引入的非鍵列。由于 數(shù)據(jù)庫(kù)管理員并不知道隨后的數(shù)據(jù)庫(kù)操作的實(shí)際情況,因而這種由數(shù)據(jù)庫(kù)管理員指定需要 在數(shù)據(jù)庫(kù)的索引中引入的非鍵列的做法往往不能達(dá)到其初衷,更有甚者,反而使得數(shù)據(jù)庫(kù) 查詢的性能下降。

      【發(fā)明內(nèi)容】

      [0003] 針對(duì)現(xiàn)有技術(shù)中存在的上述問題,本發(fā)明提出了一種用于數(shù)據(jù)庫(kù)索引的方法和系 統(tǒng),使得引入的非鍵列能夠顯著提高數(shù)據(jù)庫(kù)的查詢性能。
      [0004] 根據(jù)本發(fā)明的說(shuō)明性實(shí)施例,提供了一種用于數(shù)據(jù)庫(kù)索引的方法,所述數(shù)據(jù)庫(kù)索 引包括至少一個(gè)非鍵列,所述方法包括:分別獲取一定時(shí)間內(nèi)多個(gè)結(jié)構(gòu)化查詢語(yǔ)句的每一 個(gè)的執(zhí)行次數(shù),其中所述多個(gè)結(jié)構(gòu)化查詢語(yǔ)句利用所述數(shù)據(jù)庫(kù)索引;針對(duì)所述至少一個(gè)非 鍵列的每一個(gè):根據(jù)所述多個(gè)結(jié)構(gòu)化查詢語(yǔ)句的每一個(gè)的執(zhí)行次數(shù)計(jì)算該非鍵列的命中次 數(shù);獲取該非鍵列的長(zhǎng)度;利用該非鍵列的命中次數(shù)和長(zhǎng)度計(jì)算該非鍵列的命中密度,其 中:命中密度=命中次數(shù)/長(zhǎng)度。
      [0005] 根據(jù)本發(fā)明的說(shuō)明性實(shí)施例,提供了一種用于數(shù)據(jù)庫(kù)索引的系統(tǒng),所述數(shù)據(jù)庫(kù)索 引包括至少一個(gè)非鍵列,所述系統(tǒng)包括:執(zhí)行次數(shù)獲取單元,配置為分別獲取一定時(shí)間內(nèi)多 個(gè)結(jié)構(gòu)化查詢語(yǔ)句的每一個(gè)的執(zhí)行次數(shù),其中所述多個(gè)結(jié)構(gòu)化查詢語(yǔ)句利用所述數(shù)據(jù)庫(kù)索 弓丨;命中密度計(jì)算單元,配置為針對(duì)所述至少一個(gè)非鍵列的每一個(gè):根據(jù)所述多個(gè)結(jié)構(gòu)化 查詢語(yǔ)句的每一個(gè)的執(zhí)行次數(shù)計(jì)算該非鍵列的命中次數(shù);獲取該非鍵列的長(zhǎng)度;利用該非 鍵列的命中次數(shù)和長(zhǎng)度計(jì)算該非鍵列的命中密度,其中:命中密度=命中次數(shù)/長(zhǎng)度。
      [0006] 利用說(shuō)明性實(shí)施例的方法和系統(tǒng),通過(guò)計(jì)算每一個(gè)非鍵列的命中密度,使得引入 的非鍵列能夠顯著提高數(shù)據(jù)庫(kù)的查詢性能,從而能夠優(yōu)化數(shù)據(jù)庫(kù)索引。
      【附圖說(shuō)明】
      [0007] 通過(guò)結(jié)合附圖對(duì)本公開示例性實(shí)施方式進(jìn)行更詳細(xì)的描述,本公開的上述以及其 它目的、特征和優(yōu)勢(shì)將變得更加明顯,其中,在本公開示例性實(shí)施方式中,相同的參考標(biāo)號(hào) 通常代表相同部件。
      [0008] 圖1示出了適于用來(lái)實(shí)現(xiàn)本發(fā)明實(shí)施方式的示例性計(jì)算機(jī)系統(tǒng)/服務(wù)器12的框 圖;
      [0009] 圖2示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的用于數(shù)據(jù)庫(kù)索引的方法200的流程圖;
      [0010] 圖3示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的用于數(shù)據(jù)庫(kù)索引的系統(tǒng)300的框圖;
      [0011] 圖4示出了包含非鍵列的數(shù)據(jù)庫(kù)索引的示意圖400。
      【具體實(shí)施方式】
      [0012] 下面將參照附圖更詳細(xì)地描述本公開的優(yōu)選實(shí)施方式。雖然附圖中顯示了本公開 的優(yōu)選實(shí)施方式,然而應(yīng)該理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施方 式所限制。相反,提供這些實(shí)施方式是為了使本公開更加透徹和完整,并且能夠?qū)⒈竟_的 范圍完整地傳達(dá)給本領(lǐng)域的技術(shù)人員。
      [0013] 圖1示出了適于用來(lái)實(shí)現(xiàn)本發(fā)明實(shí)施方式的示例性計(jì)算機(jī)系統(tǒng)/服務(wù)器12的框 圖。圖1顯示的計(jì)算機(jī)系統(tǒng)/服務(wù)器12僅僅是一個(gè)示例,不應(yīng)對(duì)本發(fā)明實(shí)施例的功能和使 用范圍帶來(lái)任何限制。
      [0014] 如圖1所示,計(jì)算機(jī)系統(tǒng)/服務(wù)器12以通用計(jì)算設(shè)備的形式表現(xiàn)。計(jì)算機(jī)系統(tǒng) /服務(wù)器12的組件可以包括但不限于:一個(gè)或者多個(gè)處理器或者處理單元16,系統(tǒng)存儲(chǔ)器 28,連接不同系統(tǒng)組件(包括系統(tǒng)存儲(chǔ)器28和處理單元16)的總線18。
      [0015] 總線18表示幾類總線結(jié)構(gòu)中的一種或多種,包括存儲(chǔ)器總線或者存儲(chǔ)器控制器, 外圍總線,圖形加速端口,處理器或者使用多種總線結(jié)構(gòu)中的任意總線結(jié)構(gòu)的局域總線。舉 例來(lái)說(shuō),這些體系結(jié)構(gòu)包括但不限于工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)總線,微通道體系結(jié)構(gòu)(MAC) 總線,增強(qiáng)型ISA總線、視頻電子標(biāo)準(zhǔn)協(xié)會(huì)(VESA)局域總線以及外圍組件互連(PCI)總線。
      [0016] 計(jì)算機(jī)系統(tǒng)/服務(wù)器12典型地包括多種計(jì)算機(jī)系統(tǒng)可讀介質(zhì)。這些介質(zhì)可以是 任何能夠被計(jì)算機(jī)系統(tǒng)/服務(wù)器12訪問的可用介質(zhì),包括易失性和非易失性介質(zhì),可移動(dòng) 的和不可移動(dòng)的介質(zhì)。
      [0017] 系統(tǒng)存儲(chǔ)器28可以包括易失性存儲(chǔ)器形式的計(jì)算機(jī)系統(tǒng)可讀介質(zhì),例如隨機(jī)存 取存儲(chǔ)器(RAM) 30和/或高速緩存存儲(chǔ)器32。計(jì)算機(jī)系統(tǒng)/服務(wù)器12可以進(jìn)一步包括其 它可移動(dòng)/不可移動(dòng)的、易失性/非易失性計(jì)算機(jī)系統(tǒng)存儲(chǔ)介質(zhì)。僅作為舉例,存儲(chǔ)系統(tǒng)34 可以用于讀寫不可移動(dòng)的、非易失性磁介質(zhì)(圖1未顯示,通常稱為"硬盤驅(qū)動(dòng)器")。盡管 圖1中未示出,可以提供用于對(duì)可移動(dòng)非易失性磁盤(例如"軟盤")讀寫的磁盤驅(qū)動(dòng)器, 以及對(duì)可移動(dòng)非易失性光盤(例如⑶-ROM,DVD-ROM或者其它光介質(zhì))讀寫的光盤驅(qū)動(dòng)器。 在這些情況下,每個(gè)驅(qū)動(dòng)器可以通過(guò)一個(gè)或者多個(gè)數(shù)據(jù)介質(zhì)接口與總線18相連。存儲(chǔ)器28 可以包括至少一個(gè)程序產(chǎn)品,該程序產(chǎn)品具有一組(例如至少一個(gè))程序模塊,這些程序模 塊被配置以執(zhí)行本發(fā)明各實(shí)施例的功能。
      [0018] 具有一組(至少一個(gè))程序模塊42的程序/實(shí)用工具40,可以存儲(chǔ)在例如存儲(chǔ)器 28中,這樣的程序模塊42包括--但不限于--操作系統(tǒng)、一個(gè)或者多個(gè)應(yīng)用程序、其它 程序模塊以及程序數(shù)據(jù),這些示例中的每一個(gè)或某種組合中可能包括網(wǎng)絡(luò)環(huán)境的實(shí)現(xiàn)。程 序模塊42通常執(zhí)行本發(fā)明所描述的實(shí)施例中的功能和/或方法。
      [0019] 計(jì)算機(jī)系統(tǒng)/服務(wù)器12也可以與一個(gè)或多個(gè)外部設(shè)備14(例如鍵盤、指向設(shè)備、 顯示器24等)通信,還可與一個(gè)或者多個(gè)使得用戶能與該計(jì)算機(jī)系統(tǒng)/服務(wù)器12交互的 設(shè)備通信,和/或與使得該計(jì)算機(jī)系統(tǒng)/服務(wù)器12能與一個(gè)或多個(gè)其它計(jì)算設(shè)備進(jìn)行通信 的任何設(shè)備(例如網(wǎng)卡,調(diào)制解調(diào)器等等)通信。這種通信可以通過(guò)輸入/輸出(I/O)接 口 22進(jìn)行。并且,計(jì)算機(jī)系統(tǒng)/服務(wù)器12還可以通過(guò)網(wǎng)絡(luò)適配器20與一個(gè)或者多個(gè)網(wǎng)絡(luò) (例如局域網(wǎng)(LAN),廣域網(wǎng)(WAN)和/或公共網(wǎng)絡(luò),例如因特網(wǎng))通信。如圖所示,網(wǎng)絡(luò)適 配器20通過(guò)總線18與計(jì)算機(jī)系統(tǒng)/服務(wù)器12的其它模塊通信。應(yīng)當(dāng)明白,盡管圖中未示 出,可以結(jié)合計(jì)算機(jī)系統(tǒng)/服務(wù)器12使用其它硬件和/或軟件模塊,包括但不限于:微代 碼、設(shè)備驅(qū)動(dòng)器、冗余處理單元、外部磁盤驅(qū)動(dòng)陣列、RAID系統(tǒng)、磁帶驅(qū)動(dòng)器以及數(shù)據(jù)備份存 儲(chǔ)系統(tǒng)等。
      [0020] 除了圖1顯示傳統(tǒng)的計(jì)算機(jī)系統(tǒng)/服務(wù)器12,適于用來(lái)實(shí)現(xiàn)本發(fā)明實(shí)施方式還可 以包括移動(dòng)電子設(shè)備,包括但不限于移動(dòng)電話、PDA、平板電腦等。典型的,移動(dòng)電子設(shè)備具 有輸入設(shè)備包括但不限于接觸式輸入設(shè)備,如觸摸屏、觸摸板等。
      [0021] 下面參考圖2,其中顯示了根據(jù)本發(fā)明一個(gè)實(shí)施例的用于數(shù)據(jù)庫(kù)索引的方法200 的流程圖。根據(jù)本發(fā)明一個(gè)實(shí)施例,數(shù)據(jù)庫(kù)索引包括至少一個(gè)非鍵列。方法200從步驟202 開始。
      [0022] 接下來(lái),方法200進(jìn)入步驟204,其中分別獲取一定時(shí)間內(nèi)多個(gè)結(jié)構(gòu)化查詢語(yǔ)句的 每一個(gè)的執(zhí)行次數(shù),其中所述多個(gè)結(jié)構(gòu)化查詢語(yǔ)句利用所述數(shù)據(jù)庫(kù)索引。
      [0023] 接下來(lái),方法200進(jìn)入步驟206,其中針對(duì)所述至少一個(gè)非鍵列的每一個(gè)執(zhí)行步驟 208至步驟210,其中:
      [0024] 在步驟208,根據(jù)多個(gè)結(jié)構(gòu)化查詢語(yǔ)句的每一個(gè)的執(zhí)行次數(shù)計(jì)算該非鍵列的命中 次數(shù);
      [0025] 在步驟210,獲取該非鍵列的長(zhǎng)度;
      [0026] 在步驟212,利用該非鍵列的命中次數(shù)和長(zhǎng)度計(jì)算該非鍵列的命中密度,其中:
      [0027] 命中密度=命中次數(shù)/長(zhǎng)度。
      [0028] 接下來(lái),在至少一個(gè)非鍵列的每一個(gè)的命中密度計(jì)算完畢之后,方法200進(jìn)入步 驟214,結(jié)束。
      [0029] 根據(jù)本發(fā)明的一個(gè)實(shí)施例,方法200進(jìn)一步包括,根據(jù)預(yù)定的標(biāo)準(zhǔn)保留非鍵列。
      [0030] 根據(jù)本發(fā)明的一個(gè)實(shí)施例,其中根據(jù)預(yù)定的標(biāo)準(zhǔn)保留非鍵列包括:保留命中密度 大于預(yù)定閾值的非鍵列。
      [0031] 根據(jù)本發(fā)明的一個(gè)實(shí)施例,其中根據(jù)預(yù)定的標(biāo)準(zhǔn)保留非鍵列包括:根據(jù)命中密度 降序排列至少一個(gè)非鍵列,以及保留命中密度靠前的預(yù)定數(shù)量的非鍵列。
      [0032] 根據(jù)本發(fā)明的一個(gè)實(shí)施例,其中根據(jù)預(yù)定的標(biāo)準(zhǔn)保留非鍵列包括:根據(jù)命中密度 升序排列至少一個(gè)非鍵列,以及保留命中密度靠后的預(yù)定數(shù)量的非鍵列。
      [0033] 根據(jù)本
      當(dāng)前第1頁(yè)1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1