国产精品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>

      順序索引生成系統(tǒng)及方法

      文檔序號:6488919閱讀:110來源:國知局
      順序索引生成系統(tǒng)及方法
      【專利摘要】一種順序索引生成系統(tǒng)及方法,應(yīng)用于計(jì)算機(jī)中,該計(jì)算機(jī)包括輸入設(shè)備以及存儲器。該方法包括步驟:接收從輸入設(shè)備輸入的需要插入的資料索引信息;檢查存儲在存儲器中的資料庫中索引列表的最末尾索引序號;根據(jù)資料庫中的資料容量產(chǎn)生一個(gè)m位進(jìn)制數(shù);計(jì)算索引列表的最末尾索引序號的m位進(jìn)制數(shù)生成一個(gè)有序數(shù)列值;將有序數(shù)列值與需要插入的資料索引信息組合產(chǎn)生一個(gè)有序的資料索引;將該有序資料索引插入索引列表的最末位置,并將該索引列表保存在存儲器的資料庫中。本發(fā)明能夠在資料插入資料庫過程中避免產(chǎn)生磁盤碎片而使存儲空間不連續(xù)的問題,從而提高資料庫的運(yùn)行效率。
      【專利說明】順序索引生成系統(tǒng)及方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及一種資料索引生成系統(tǒng)及方法,特別是關(guān)于一種生成順序索引的系統(tǒng)及方法。
      【背景技術(shù)】
      [0002]在資料庫的設(shè)計(jì)基礎(chǔ)上,能有效地使用索引是資料庫取得高性能的基礎(chǔ)。如果有索引指向資料,則查詢資料時(shí)只需讀幾次磁盤,可以避免掃描整個(gè)資料庫。如果建立了合理的索引,就能利用索引加速資料的查詢過程。但是,索引并不是總能提高系統(tǒng)性能,在增加、刪除、修改等操作更新索引會增加一定的工作量。因?yàn)橘Y料庫的更新會消耗掉已有的存儲空間,這就會導(dǎo)致資料頁(data page)被拆分,降低了索引的性能,因而使用該索引的查詢會影響數(shù)據(jù)存儲的性能。
      [0003]SQL Server聚集索引是通過二叉樹結(jié)構(gòu)來組織數(shù)據(jù)頁的,只有葉子節(jié)點(diǎn)實(shí)際存儲資料。每一個(gè)葉子節(jié)點(diǎn)為一資料頁,每一資料頁是不可分割的。當(dāng)葉子節(jié)點(diǎn)中新插入的節(jié)點(diǎn)或更新的節(jié)點(diǎn)使得葉子節(jié)點(diǎn)無法容納當(dāng)前更新或者插入的節(jié)點(diǎn)時(shí),此時(shí)分頁就產(chǎn)生了。在分頁的過程中,就會產(chǎn)生磁盤碎片。很多情況下分頁后和原來的資料頁在磁盤上并不連續(xù),大大提升系統(tǒng)資源的消耗,造成性能下降。
      [0004]為了消除磁盤碎片,需要停止舊有索引并重建索引,并重新設(shè)置用于指示該索引中資料頁百分比的填充因子。在絕大多數(shù)情況下,重建索引可以更好的消除碎片,但是這會操作當(dāng)前發(fā)生在該索引所在資料列表的資料,這將影響到當(dāng)前資料庫的運(yùn)行,使資料庫的易用性降低。

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

      [0005]鑒于以上內(nèi)容,有必要提供一種順序索引生成系統(tǒng)及方法,能夠在資料插入資料庫過程中避免產(chǎn)生磁盤碎片而使存儲器的存儲空間不連續(xù)的問題,從而提高資料庫的運(yùn)行效率。
      [0006]所述的順序索引生成系統(tǒng)安裝并運(yùn)行于計(jì)算機(jī)中,該計(jì)算機(jī)包括輸入設(shè)備以及存儲器。該順序索引生成系統(tǒng)包括:資料接收模塊,用于接收從輸入設(shè)備輸入的需要插入的資料索引信息,并檢查存儲在存儲器中的資料庫中索引列表的最末尾索引序號;有序值計(jì)算模塊,用于根據(jù)資料庫中的資料容量產(chǎn)生一個(gè)m位進(jìn)制數(shù),以及計(jì)算索引列表的最末尾索引序號的m位進(jìn)制數(shù)生成一個(gè)有序數(shù)列值;索引生成模塊,用于將有序數(shù)列值與需要插入的資料索引信息組合產(chǎn)生一個(gè)有序的資料索引;索引保存模塊,用于將該有序資料索引插入索引列表的最末位置,并將該索引列表保存在存儲器的資料庫中。
      [0007]所述的順序索引生成方法應(yīng)用于計(jì)算機(jī)中,該計(jì)算機(jī)包括輸入設(shè)備以及存儲器。該方法包括步驟:接收從輸入設(shè)備輸入的需要插入的資料索引信息;檢查存儲在存儲器中的資料庫中索引列表的最末尾索引序號;根據(jù)資料庫中的資料容量產(chǎn)生一個(gè)m位進(jìn)制數(shù);計(jì)算索引列表的最末尾索引序號的m位進(jìn)制數(shù)生成一個(gè)有序數(shù)列值;將有序數(shù)列值與需要插入的資料索引信息組合產(chǎn)生一個(gè)有序的資料索引;以及將該有序資料索引插入索引列表的最末位置,并將該索引列表保存在存儲器的資料庫中。
      [0008]相較于現(xiàn)有技術(shù),本發(fā)明所述的順序索引生成系統(tǒng)及方法,能夠保證每次插入到資料庫時(shí)產(chǎn)生的索引都排在索引列表的最末位置,避免在新增資料時(shí),資料庫需重建索引造成的存儲空間開銷,提高資料庫的運(yùn)行效率。
      【專利附圖】

      【附圖說明】
      [0009]圖1是本發(fā)明順序索引生成系統(tǒng)較佳實(shí)施例的架構(gòu)圖。
      [0010]圖2是本發(fā)明順序索引生成方法較佳實(shí)施例的流程圖。 [0011]圖3是一種資料庫中索引列表的示意圖。
      [0012]圖4是在資料索引插入資料庫中索引列表的示意圖。
      [0013]主要元件符號說明
      [0014]計(jì)算機(jī)1
      [0015]順序索引生成系統(tǒng) 10
      [0016]資料接收模塊101
      [0017]有序值計(jì)算模塊102
      [0018]索引生成模塊103
      [0019]索引保存模塊104
      [0020]輸入設(shè)備11
      [0021]存儲器12
      [0022]處理器13
      【具體實(shí)施方式】
      [0023]如圖1所示,是本發(fā)明順序索引生成系統(tǒng)10較佳實(shí)施例的架構(gòu)圖。在本實(shí)施例中,所述的順序索引生成系統(tǒng)10安裝并運(yùn)行于計(jì)算機(jī)1中,能夠保證每次插入到資料庫時(shí)產(chǎn)生的索引都排在索引列表的最末位置,避免在新增資料時(shí),資料庫需重建索引造成的存儲空間開銷,提高資料庫的運(yùn)行效率。在本實(shí)施例中,所述的計(jì)算機(jī)1還包括,但不僅限于,輸入設(shè)備11、存儲器12以及處理器13。
      [0024]所述的存儲器12可以為一種磁盤或網(wǎng)絡(luò)存儲裝置,其包括用于存儲索引列表以及資料內(nèi)容的資料庫。參考圖3所示,是一種資料庫中索引列表的示意圖。該索引列表存儲有序數(shù)列值、資料索引以及資料內(nèi)容。其中,有序數(shù)列值用于識別不同類別的資料內(nèi)容,例如有序數(shù)列值10000001、10000002等。每一資料索引分別對應(yīng)有存儲在存儲器12中的資料內(nèi)容。例如資料索引Index_l對應(yīng)于資料內(nèi)容Data_l,以及資料索引Index_2對應(yīng)于資料內(nèi)容Data_2。
      [0025]在本實(shí)施例中,所述的順序索引生成系統(tǒng)10包括資料接收模塊101、有序值計(jì)算模塊102、索引生成模塊103以及索引保存模塊104。本發(fā)明所稱的模塊是指一種能夠被計(jì)算機(jī)1的處理器13所執(zhí)行并且能夠完成固定功能的一系列程序指令段,其存儲于計(jì)算機(jī)1的存儲器12中。
      [0026]所述的資料接收模塊101用于接收從輸入設(shè)備11輸入的需要插入資料庫中的資料索引信息,并檢查資料庫中索引列表的最末尾索引序號。在本實(shí)施例中,所述的資料索引信息包括資料索引以及資料內(nèi)容。參考圖3所示,資料索引Index_l對應(yīng)于資料內(nèi)容Data_l,資料索引Index_2對應(yīng)于資料內(nèi)容Data_2。
      [0027]所述的有序值計(jì)算模塊102用于根據(jù)資料庫中的資料容量產(chǎn)生一個(gè)m位進(jìn)制數(shù),以及計(jì)算索引列表的最末尾索引序號的m位進(jìn)制數(shù)生成一個(gè)有序數(shù)列值。在本實(shí)施例中,所述的m位進(jìn)制數(shù)包括二進(jìn)制數(shù)、四進(jìn)制數(shù)、八進(jìn)制數(shù)、十進(jìn)制數(shù)、十六進(jìn)制數(shù),以及三十二進(jìn)制數(shù)等。例如,當(dāng)資料庫中的資料容量行數(shù)為1632960行,則有序值計(jì)算模塊102產(chǎn)生4位十六進(jìn)制數(shù)。當(dāng)資料庫中的資料容量行數(shù)為58786560行,則有序值計(jì)算模塊102產(chǎn)生一個(gè)5位三十二進(jìn)制數(shù)。所述的有序數(shù)列值是根據(jù)最末尾索引序號產(chǎn)生的按順序遞增的序列數(shù)值。
      [0028]所述的索引生成模塊103用于將有序數(shù)列值與需要插入的資料索引信息組合產(chǎn)生一個(gè)有序的資料索引。在本實(shí)施例中,索引生成模塊103將有序數(shù)列值與索引信息疊加組合或者利用hash函數(shù)產(chǎn)生一個(gè)有序的唯一資料索引。其中,所述的唯一資料索引可以是一種全球唯一標(biāo)示符(Globally Unique Identifier,⑶ID),也可以是其它能保證唯一性的數(shù)據(jù)列或多列組合數(shù)據(jù)。
      [0029]所述的索引保存模塊104用于將資料索引插入索引列表的最末位置,并將該有序索引列表保存在存儲器12的資料庫中。參考圖4所示,是在資料索引插入資料庫中的索引列表的示意圖。當(dāng)需要插入資料庫的資料索引序號為“35”時(shí),索引生成模塊103根據(jù)資料索引序號“35”廣生的有序資料索引為“50”,并將該有序資料索引插入到索引列表的最末位置“40”處。因此,在資料插入資料庫過程中,能夠避免磁盤碎片而使存儲器12的存儲空間不連續(xù)的問題。
      [0030]參考圖2所示,是本發(fā)明順序索引生成方法較佳實(shí)施例的流程圖。在本實(shí)施例中,該方法能夠保證每次插入到資料庫時(shí)產(chǎn)生的索引都排在索引列表的最末位置,避免在新增數(shù)據(jù)時(shí)資料庫需重建索引造成的存儲空間開銷,從而提高資料庫的運(yùn)行效率。
      [0031]步驟S21,資料接收模塊101接收從輸入設(shè)備11輸入的需要插入資料庫中的資料索引信息。在本實(shí)施例中,所述的資料索引信息包括資料索引以及資料內(nèi)容。參考圖3所示,資料索引Index_l對應(yīng)于資料內(nèi)容Data_l,資料索引Index_2對應(yīng)于資料內(nèi)容Data_2。
      [0032]步驟S22,資料接收模塊101檢查資料庫中索引列表的最末尾索引序號。參考圖3所示,資料接收模塊101掃描資料庫中索引列表,并檢查出索引列表的最末尾索引序號為“40”。
      [0033]步驟S23,有序值計(jì)算模塊102根據(jù)資料庫中的資料容量產(chǎn)生一個(gè)m位進(jìn)制數(shù)。例如資料庫中的資料容量行數(shù)為1632960行,則有序值計(jì)算模塊102產(chǎn)生4位十六進(jìn)制數(shù)。例如資料庫中的資料容量行數(shù)為58786560行,則有序值計(jì)算模塊102產(chǎn)生一個(gè)5位三十二進(jìn)制數(shù)。
      [0034]步驟S24,有序值計(jì)算模塊102計(jì)算索引列表的最末尾索引序號的m位進(jìn)制數(shù)生成一個(gè)有序數(shù)列值。在本實(shí)施例中,有序值計(jì)算模塊102產(chǎn)生一個(gè)指定位數(shù)的m進(jìn)制位進(jìn)制數(shù)后,利用該m進(jìn)制位進(jìn)制數(shù)根據(jù)該最末尾索引序號計(jì)算有序數(shù)列值,如圖4所示的有序數(shù)列值“50,,。
      [0035]步驟S25,索引生成模塊103將有序數(shù)列值與需要插入的資料索引信息組合產(chǎn)生一個(gè)有序的資料索引。在本實(shí)施例中,索引生成模塊103將有序數(shù)列值與索引信息疊加組合或者利用hash函數(shù)產(chǎn)生一個(gè)有序的唯一資料索引。
      [0036]步驟S26,索引保存模塊104將資料索引插入索引列表的最末位置,并將該有序索引列表保存在存儲器12的資料庫中。參考圖4所示,當(dāng)需要插入資料庫的資料索引序號為“35”時(shí),索引生成模塊103根據(jù)資料索引序號“35”產(chǎn)生的有序數(shù)列值“50”作為有序資料索引,并將該有序資料索引插入到索引列表的最末位置“40”處。
      [0037]以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案而非限制,盡管參照以上較佳實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可以對本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換都不應(yīng)脫離本發(fā)明技術(shù)方案的精神和范圍。
      【權(quán)利要求】
      1.一種順序索引生成系統(tǒng),安裝并運(yùn)行于計(jì)算機(jī)中,該計(jì)算機(jī)包括輸入設(shè)備以及存儲器,其特征在于,所述的順序索引生成系統(tǒng)包括: 資料接收模塊,用于接收從輸入設(shè)備輸入的需要插入的資料索引信息,并檢查存儲在存儲器中的資料庫中索引列表的最末尾索引序號; 有序值計(jì)算模塊,用于根據(jù)資料庫中的資料容量產(chǎn)生一個(gè)m位進(jìn)制數(shù),以及計(jì)算索引列表的最末尾索引序號的m位進(jìn)制數(shù)生成一個(gè)有序數(shù)列值; 索引生成模塊,用于將有序數(shù)列值與需要插入的資料索引信息組合產(chǎn)生一個(gè)有序的資料索引;以及 索引保存模塊,用于將該有序資料索引插入索引列表的最末位置,并將該索引列表保存在存儲器的資料庫中。
      2.如權(quán)利要求1所述的順序索引生成系統(tǒng),其特征在于,所述的索引生成模塊將有序數(shù)列值與索引信息進(jìn)行疊加組合或者利用hash函數(shù)處理有序數(shù)列值與索引信息來產(chǎn)生有序資料索引。
      3.如權(quán)利要求1所述的順序索引生成系統(tǒng),其特征在于,所述的有序數(shù)列值是根據(jù)最末尾索引序號產(chǎn)生的按順序遞增的序列數(shù)值。
      4.如權(quán)利要求1所述的順序索引生成系統(tǒng),其特征在于,所述的索引列表存儲有序數(shù)列值、資料索引以及資料內(nèi)容,該有序數(shù)列值用于識別不同類別的資料內(nèi)容,每一資料索引分別對應(yīng)有資料內(nèi)容。
      5.如權(quán)利要求1所述的順序索引生成系統(tǒng),其特征在于,所述的m位進(jìn)制數(shù)包括二進(jìn)制數(shù)、四進(jìn)制數(shù)、八進(jìn)制數(shù)、十進(jìn)制數(shù)、十六進(jìn)制數(shù),以及三十二進(jìn)制數(shù)。
      6.一種順序索引生成方法,應(yīng)用于計(jì)算機(jī)中,該計(jì)算機(jī)包括輸入設(shè)備以及存儲器,其特征在于,該方法包括步驟: 接收從輸入設(shè)備輸入的需要插入的資料索引信息; 檢查存儲在存儲器中的資料庫中索引列表的最末尾索引序號; 根據(jù)資料庫中的資料容量產(chǎn)生一個(gè)m位進(jìn)制數(shù); 計(jì)算索引列表的最末尾索引序號的m位進(jìn)制數(shù)生成一個(gè)有序數(shù)列值; 將有序數(shù)列值與需要插入的資料索引信息組合產(chǎn)生一個(gè)有序的資料索引;以及 將該有序資料索引插入索引列表的最末位置,并將該索引列表保存在存儲器的資料庫中。
      7.如權(quán)利要求6所述的順序索引生成方法,其特征在于,所述的有序資料索引是通過將有序數(shù)列值與索引信息進(jìn)行疊加組合或者利用hash函數(shù)處理有序數(shù)列值與索引信息而產(chǎn)生的。
      8.如權(quán)利要求6所述的順序索引生成方法,其特征在于,所述的有序數(shù)列值是根據(jù)最末尾索引序號產(chǎn)生的按順序遞增的序列數(shù)值。
      9.如權(quán)利要求6所述的順序索引生成方法,其特征在于,所述的索引列表存儲有序數(shù)列值、資料索引以及資料內(nèi)容,該有序數(shù)列值用于識別不同類別的資料內(nèi)容,每一資料索引分別對應(yīng)有資料內(nèi)容。
      10.如權(quán)利要求6所述的順序索引生成方法,其特征在于,所述的m位進(jìn)制數(shù)包括二進(jìn)制數(shù)、四進(jìn)制數(shù)、八進(jìn)制數(shù)、十進(jìn)制數(shù)、十六進(jìn)制數(shù),以及三十二進(jìn)制數(shù)。
      【文檔編號】G06F17/30GK103678384SQ201210346446
      【公開日】2014年3月26日 申請日期:2012年9月18日 優(yōu)先權(quán)日:2012年9月18日
      【發(fā)明者】李忠一, 謝德意, 陳海云, 羅安勝 申請人:鴻富錦精密工業(yè)(深圳)有限公司, 鴻海精密工業(yè)股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1