System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請實施例涉及云計算領域,并且更為具體地,涉及一種推薦預取頁面的方法和裝置。
技術介紹
1、數據庫為了加速數據讀取,會把部分頁面放在緩沖池中,避免每次都去讀取磁盤,從而降低輸入/輸出(input/output,i/o)延遲,提升數據庫性能。由于緩沖池容量有限,緩沖池管理器會根據最近最少使用(least?recently?used,lru)或最近不經常使用(leastfrequently?used,lfu)等算法將部分頁面淘汰出去置換新頁面。
2、但是,由于數據庫頁面采用樹形結構組織,其邏輯結構和物理存放結構不一致,導致頁面不一定是按照空間局部性的順序被讀取的。此外,緩沖池中的頁面還具有很強的時效性,需要根據用戶當前讀取的頁面序列準確預測用戶接下來可能讀取的頁面才能夠更有效地緩沖預取頁面。因此,如何提高向數據庫推薦緩存至緩沖池的預取頁面的準確性成為亟需解決的技術問題。
技術實現思路
1、本申請實施例提供一種推薦預取頁面的方法和裝置,通過提取歷史被讀取頁面序列的特征,并與當前被讀取頁面序列比較,使得預取頁面能夠根據歷史被讀取頁面序列確定,從而提高推薦預取頁面的準確性。
2、第一方面,提供了一種推薦預取頁面的方法,該方法應用于數據庫,數據庫中包括緩沖池,緩沖池用于緩存數據庫中的頁面,該方法包括:接受用戶的查詢請求,并根據查詢請求讀取數據庫中的頁面;獲取第一序列,第一序列中包括n個頁面序號,n個頁面序號與數據庫中被讀取的n個頁面一一對應,n個頁面序號按照n個頁面被
3、根據本申請提供的技術方案,通過提取歷史被讀取頁面的第一序列中多個固定提取窗口長度的子序列(窗口序列)的特征,并與長度小于該固定提取窗口的當前被讀取頁面的第二序列比較,使得預取頁面能夠根據窗口序列的特征確定,從而提高推薦預取頁面的準確性,進而降低i/o延遲,提升數據庫性能。
4、結合第一方面,在第一方面的某些實現方式中,窗口序列的特征信息用于指示窗口序列中m個頁面序號的排列順序,根據至少一個窗口序列的特征信息和第二序列,從第一序列的至少一個窗口序列中確定至少一個預取頁面的頁面序號,包括:根據每個窗口序列的特征信息,從至少一個窗口序列中確定l個第三序列,l個第三序列是至少一個窗口序列中前k個頁面序號與第二序列相似度最高的l個擦混港口序列,l為正整數;根據l個第三序列中后h個頁面序號,確定至少一個預取頁面的頁面序號,h為m減k的值。
5、根據上述技術方案,通過提取并保存窗口序列的特征信息,使得預取頁面是根據窗口序列中與第二序列特征相似度最高的一個或多個序列(第三序列)預測的,從而進一步提高推薦預取頁面的準確性。
6、結合第一方面,在第一方面的某些實現方式中,根據l個第三序列中后h個頁面序號,確定至少一個預取頁面的頁面序號,包括:確定第四序列中后h個頁面序號為至少一個預取頁面的頁面序號,第四序列為l個第三序列中前k個頁面序號與第二序列相似度最高的一個序列。
7、根據上述技術方案,第四序列為第三序列中與第二序列相似度最高的一個序列,使得預取頁面根據最接近的特征信息進行預測,從而提高預測預取頁面的成功率。
8、結合第一方面,在第一方面的某些實現方式中,根據l個第三序列中后h個頁面序號,確定至少一個預取頁面的頁面序號,包括:確定第五序列中后h個頁面序號為至少一個預取頁面的頁面序號,第五序列為l個第三序列中最后一個頁面序號所對應的頁面被讀取時間最晚的一個序列。
9、根據上述技術方案,第五序列為第三序列中頁面的讀取時間最晚的一個序列,使得預取頁面根據最新的特征信息進行預測,從而提高預測預取頁面的成功率。
10、結合第一方面,在第一方面的某些實現方式中,在l為大于1的正整數的情況下,根據l個第三序列中后h個頁面序號,確定至少一個預取頁面的頁面序號,包括:從l個第三序列的后h個頁面序號中確定至少一個預取頁面的頁面序號,其中,l個第三序列中每個第三序列的后h個頁面序號中包括至少一個預取頁面的頁面序號。
11、根據上述技術方案,通過根據多個第三序列的交集預測預取頁面,降低預測結果的偶然性,從而提高預測預取頁面的成功率。
12、結合第一方面,在第一方面的某些實現方式中,該方法還包括:在保存的特征信息數量大于第一閾值的情況下,刪除第六序列的特征信息,第六序列為至少一個窗口序列中第一個頁面序號所對應的頁面被讀取的時間最早的一個窗口序列。
13、根據上述技術方案,通過定期淘汰保存時間較早的序列的特征信息,使得在特征信息的存儲空間有限的情況下,保持保存的特征信息的時效性,從而提高基于保存的特征信息預測預取頁面的準確性。
14、結合第一方面,在第一方面的某些實現方式中,該方法還包括:獲取反饋信息,反饋信息用于指示至少一個預取頁面被讀取的比例;在比例小于第二閾值的情況下,刪除l個第三序列的特征信息。
15、根據上述技術方案,通過獲取預取頁面的預測命中率,刪除預測命中率較低的特征信息,使得保存的特征信息根據預測結果動態更新,從而提高基于保存的特征信息預測預取頁面的準確性。
16、結合第一方面,在第一方面的某些實現方式中,該每個窗口序列中的m個頁面序號中包括至少兩個相鄰的頁面序號的值不連續。
17、根據上述技術方案,由于按照頁面序號順序被讀取的序列的預取頁面不需要預測,因此通過只提取第一序列中在固定長度的提取窗口內沒有完全按照頁面序號順序被讀取的特定子序列,能夠在存儲空間和/或算力有限的情況下,提取更多有效子序列用于推薦預取頁面,從而提高推薦預取頁面的準確性。
18、第二方面,提供了一種推薦預取頁面的裝置,該裝置設置于數據庫,數據庫中包括緩沖池,緩沖池用于緩存數據庫中的頁面,該裝置包括:查詢模塊,用于接受用戶的查詢請求,并根據查詢請求讀取數據庫中的頁面;采集模塊,用于獲取第一序列,第一序列中包括n個頁面序號,n個頁面序號與數據庫中被讀取的n個頁面一一對應,n個頁面序號按照n個頁面被讀取的時間順序排列,n為大于1的正整數;學習模塊,用于根據提取窗口,提取第一序列的至少一個窗口序列的特征信息,每個窗口序列中包括m個頁面序號,m為提取窗口的大小,m為大于1且小于或等于n的正整數;采集模塊,還用于獲取第二序列,第二序列中包括k個頁面序號,k個頁面序號與數據庫中被讀取時間最晚的k個頁面一一對應,k本文檔來自技高網...
【技術保護點】
1.一種推薦預取頁面的方法,其特征在于,所述方法應用于數據庫,所述數據庫中包括緩沖池,所述緩沖池用于緩存所述數據庫中的頁面,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,窗口序列的特征信息用于指示所述窗口序列中M個頁面序號的排列順序,
3.根據權利要求2所述的方法,其特征在于,所述根據所述L個第三序列中后H個頁面序號,確定所述至少一個預取頁面的頁面序號,包括:
4.根據權利要求2或3所述的方法,其特征在于,所述根據所述L個第三序列中后M-K個頁面序號,確定所述至少一個預取頁面的頁面序號,包括:
5.根據權利要求2所述的方法,其特征在于,在L為大于1的正整數的情況下,所述根據所述L個第三序列中后H個頁面序號,確定所述至少一個預取頁面的頁面序號,包括:
6.根據權利要求2至5中任意一項所述的方法,其特征在于,所述方法還包括:
7.根據權利要求2至6中任意一項所述的方法,其特征在于,所述方法還包括:
8.根據權利要求1至7中任意一項所述的方法,其特征在于,所述每個窗口序列中的M個頁面序號中包
9.一種推薦預取頁面的裝置,其特征在于,所述裝置設置于數據庫,所述數據庫中包括緩沖池,所述緩沖池用于緩存所述數據庫中的頁面,所述裝置包括:
10.根據權利要求9所述的裝置,其特征在于,窗口序列的特征信息用于指示所述窗口序列中M個頁面序號的排列順序,
11.根據權利要求10所述的裝置,其特征在于,所述學習模塊,用于:
12.根據權利要求10或11所述的裝置,其特征在于,所述學習模塊,用于:
13.根據權利要求10所述的裝置,其特征在于,在L為大于1的正整數的情況下,所述學習模塊,用于:
14.根據權利要求10至13中任意一項所述的裝置,其特征在于,所述學習模塊還用于:
15.根據權利要求10至14中任意一項所述的裝置,其特征在于,所述學習模塊還用于:
16.根據權利要求9至15中任意一項所述的裝置,其特征在于,所述每個窗口序列中的M個頁面序號中包括至少兩個相鄰的頁面序號的值不連續。
17.一種計算設備,其特征在于,包括處理器和存儲器,所述處理器用于執行所述存儲器中存儲的指令,以使得所述計算設備執行如權利要求1至8中任一項所述的方法。
18.一種計算設備集群,其特征在于,包括至少一個計算設備,每個計算設備包括處理器和存儲器;
19.一種計算機可讀存儲介質,其特征在于,包括計算機程序指令,當所述計算機程序指令由計算設備集群執行時,使得所述計算設備集群執行如權利要求1至8中任一項所述的方法。
...【技術特征摘要】
1.一種推薦預取頁面的方法,其特征在于,所述方法應用于數據庫,所述數據庫中包括緩沖池,所述緩沖池用于緩存所述數據庫中的頁面,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,窗口序列的特征信息用于指示所述窗口序列中m個頁面序號的排列順序,
3.根據權利要求2所述的方法,其特征在于,所述根據所述l個第三序列中后h個頁面序號,確定所述至少一個預取頁面的頁面序號,包括:
4.根據權利要求2或3所述的方法,其特征在于,所述根據所述l個第三序列中后m-k個頁面序號,確定所述至少一個預取頁面的頁面序號,包括:
5.根據權利要求2所述的方法,其特征在于,在l為大于1的正整數的情況下,所述根據所述l個第三序列中后h個頁面序號,確定所述至少一個預取頁面的頁面序號,包括:
6.根據權利要求2至5中任意一項所述的方法,其特征在于,所述方法還包括:
7.根據權利要求2至6中任意一項所述的方法,其特征在于,所述方法還包括:
8.根據權利要求1至7中任意一項所述的方法,其特征在于,所述每個窗口序列中的m個頁面序號中包括至少兩個相鄰的頁面序號的值不連續。
9.一種推薦預取頁面的裝置,其特征在于,所述裝置設置于數據庫,所述數據庫中包括緩沖池,所述緩沖池用于緩存所述數據庫中的頁面,所述裝置包括:<...
【專利技術屬性】
技術研發人員:宋立勇,朱冠宇,
申請(專利權)人:華為云計算技術有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。