[發明專利]一種在高速緩存中預讀的方法和裝置在審
| 申請號: | 201510655737.1 | 申請日: | 2015-10-12 |
| 公開(公告)號: | CN105302743A | 公開(公告)日: | 2016-02-03 |
| 發明(設計)人: | 莊建波 | 申請(專利權)人: | 北海市云盛科技有限公司;深圳市安云信息科技有限公司 |
| 主分類號: | G06F12/0862 | 分類號: | G06F12/0862 |
| 代理公司: | 北京德琦知識產權代理有限公司 11018 | 代理人: | 王一斌;王琦 |
| 地址: | 536000 廣西壯族自治區北海市臺*** | 國省代碼: | 廣西;45 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 高速緩存 中預讀 方法 裝置 | ||
技術領域
本申請涉及計算機技術領域,更具體地,涉及一種在高速緩存中預讀的方法和裝置。
背景技術
預讀是指文件系統為應用程序一次讀出比預期更多的文件內容并緩存在高速緩存(CACHE)中,這樣下一次讀請求到來時直接從CACHE讀取即可。當然,這個細節對應用程序透明,運行應用程序可能唯一感覺就是下次讀取的速度會更快。
目前CACHE預讀一般是基于邏輯(LV)卷的,當LV卷上的IO流是順序的時候,才會進行預讀,這樣前端業務IO指令下來時,就不需要去訪問磁盤,而是直接從CACHE獲取數據返回,這樣性能會有很大的提高。
但在流媒體的應用,同一個LV卷里,同時讀寫多個文件,進而導致整個LV卷有多個順序的IO流。由于多個順序的IO流組合后得到的IO流不是順序的,則無法預讀,而需要從磁盤讀取數據,降低性能。
另外,考慮到在流媒體的應用中,使用快放等非順序播放操作,下發的IO流是有規律的,并非常規的順序IO流,因而不能進行預讀。
發明內容
本發明實施例提出一種在高速緩存中預讀的方法,能夠在流媒體應用中實現預讀,進而提高預讀的效率。
本發明實施例還提出一種在高速緩存中預讀的裝置,能夠在流媒體應用中實現預讀,進而提高預讀的效率。
本發明實施例的技術方案如下:
一種在高速緩存中預讀的方法,所述方法包括:
高速緩存CACHE接收到的第一IO流可以與已經存在的順序IO流第二IO流形成連續的順序IO流第三IO流,則第一IO流加入第二IO流,然后按照第三IO流的長度和CACHE塊的剩余容量順序預讀;
第一IO流與第二IO流無法形成連續的順序IO流,確定第一IO流與第二IO流的規律后,第一IO流加入第二IO流形成第四IO流,然后按照所述規律和CACHE塊的剩余容量依序預讀。
所述按照第三IO流的長度和CACHE塊的剩余容量順序預讀包括:
按照第三IO流的長度和CACHE塊的剩余容量確定在CACHE塊中可以預讀的IO流數目N;
在第三IO流后順序預讀N個IO流。
所述按照所述規律和CACHE塊的剩余容量依序預讀包括:
按照所述規律確定與第四IO流順序的IO流,依照CACHE塊的剩余容量確定在CACHE塊中可以預讀的IO流數目M;
在第四IO流后依序預讀M個IO流。
所述方法進一步包括:
第一IO流已經存在于第二IO流中,則按照第二IO流的長度和CACHE塊的剩余容量確定在CACHE塊中可以預讀的IO流數目K;
在第二IO流后順序讀取K個IO流。
所述方法進一步包括:
第一IO流與第二IO流無法形成連續的順序IO流,且無法確定第一IO流與第二IO流之間的規律,創建新的順序IO流第五IO流,第一IO流加入第五IO流;
按照第五IO流的長度和CACHE塊的剩余容量確定在CACHE塊中可以預讀的IO流數目L;
在第五IO流后順序讀取L個IO流。
一種在高速緩存中預讀的裝置,所述裝置包括:
判斷模塊,用于判斷高速緩存CACHE接收到的第一IO流可以與已經存在的順序IO流第二IO流形成連續的順序IO流第三IO流;第一IO流與第二IO流無法形成連續的順序IO流,確定第一IO流與第二IO流的規律;
控制模塊,第一IO流可以與第二IO流形成第三IO流時,將第一IO流加入第二IO流,然后按照第三IO流的長度和CACHE塊的剩余容量順序預讀;確定第一IO流與第二IO流的規律后,第一IO流加入第二IO流形成第四IO流,然后按照所述規律和CACHE塊的剩余容量依序預讀。
所述控制模塊進一步用于,按照第三IO流的長度和CACHE塊的剩余容量確定在CACHE塊中可以預讀的IO流數目N;在第三IO流后順序預讀N個IO流。
所述控制模塊進一步用于,按照所述規律確定與第四IO流順序的IO流,依照CACHE塊的剩余容量確定在CACHE塊中可以預讀的IO流數目M;在第四IO流后依序預讀M個IO流。
所述判斷模塊進一步用于,判斷第一IO流已經存在于第二IO流中;
所述控制模塊進一步用于,第一IO流已經存在于第二IO流時,按照第二IO流的長度和CACHE塊的剩余容量確定在CACHE塊中可以預讀的IO流數目K;在第二IO流后順序讀取K個IO流。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北海市云盛科技有限公司;深圳市安云信息科技有限公司,未經北海市云盛科技有限公司;深圳市安云信息科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510655737.1/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:民用電動車多功能充電器
- 下一篇:基于SOPC的LED顯示屏控制器





