[發明專利]數據訪問方法及計算設備在審
| 申請號: | 202110601072.1 | 申請日: | 2021-05-31 |
| 公開(公告)號: | CN113392087A | 公開(公告)日: | 2021-09-14 |
| 發明(設計)人: | 尚燦芳;黃貴;王劍英 | 申請(專利權)人: | 阿里巴巴新加坡控股有限公司 |
| 主分類號: | G06F16/21 | 分類號: | G06F16/21;G06F16/22 |
| 代理公司: | 北京太合九思知識產權代理有限公司 11610 | 代理人: | 劉戈;曹威 |
| 地址: | 新加坡珊頓道*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數據 訪問 方法 計算 設備 | ||
本申請實施例提供一種數據訪問方法及計算設備。其中,所述方法包括:在全部讀取請求訪問第一版本索引數據的情況下,檢測所述索引數據版本更新,執行如下切流操作;其中,所述第一版本為當前最新版本;跟隨所述索引數據的版本更新,控制由少到多的讀取請求逐步切換至訪問最新版本索引數據,以及控制其余讀取請求訪問歷史版本索引數據;檢測全部讀取請求切換至訪問最新版本索引數據的情況下,停止執行所述切流操作。本申請實施例提供的技術方案降低了對數據讀取效率的影響。
技術領域
本申請實施例涉及數據處理技術領域,尤其涉及一種數據訪問方法及計算設備。
背景技術
采用LSM-Tree(The Log-Structured Merge-Tree,日志結構合并樹)架構的存儲系統,是以追加方式寫入數據,不更新原有數據。寫入操作會首先寫入內存,當內存數據達到相應閾值,會凍結為一層之后寫入持久化存儲介質中,并和持久化存儲介質中的數據進行合并。持久化存儲介質上的數據也可以按照層級組織進行分層存儲,每一層中的數據達到相應閾值之后就會和下一層中的數據進行合并。所有寫入的數據,無論是在內存中,還是持久化存儲介質中都以主鍵(Key)排序好后存放。
現有的一種采用LSM-Tree架構的存儲系統,在持久化存儲介質中是以數據塊形式存儲數據,并為每個數據塊建立索引信息以快速定位數據塊。數據塊的索引信息及內存數據會組織形成索引數據,可知數據寫入操作及數據合并操作均會更新索引數據,此外,為了提高數據讀取效率,會將持久化存儲介質中的熱數據塊緩存至內存中。當接收到對目標key對應目標數據的讀取請求時,會首先訪問索引數據中記錄的內存數據,若內存數據中不存在該目標數據,再基于數據塊的索引信息,確定目標數據所在目標數據塊,之后,會首先讀取緩存數據中,若緩存數據中存在該目標數據塊即可以從中讀取目標數據,若不存在,再逐層讀取持久化存儲介質直至找到該目標數據塊以讀取目標數據。
由于合并操作會將相鄰層的數據重新排序,生成新數據塊,并更新索引數據,而在緩存數據沒有更新的情況,若接收到讀取請求,基于更新之后的索引數據,目標數據若在新數據塊中,而緩存數據中并未緩存該新數據塊的情況下,就會從持久化存儲介質中讀取,可能造成大量讀取請求都會訪問持久化存儲介質,導致讀取性能抖動,產生讀取延遲,影響數據讀取效率。
發明內容
本申請實施例提供一種數據訪問方法及計算設備,用以解決現有技術中影響數據讀取效率的技術問題。
第一方面,本申請實施例中提供了一種數據訪問方法,包括:
在全部讀取請求訪問第一版本索引數據的情況下,檢測所述索引數據版本更新,執行如下切流操作;其中,所述第一版本為當前最新版本;
跟隨所述索引數據的版本更新,控制由少到多的讀取請求逐步切換至訪問最新版本索引數據,以及控制其余讀取請求訪問歷史版本索引數據;
檢測全部讀取請求切換至訪問最新版本索引數據的情況下,停止執行所述切流操作。
可選地,停止所述切流操作之后,所述方法還包括:
刪除歷史版本的索引數據。
可選地,還包括:
釋放持久化存儲介質中未被任意版本索引數據引用的數據塊。
可選地,所述控制其余讀取請求訪問歷史版本索引數據包括:
控制其余讀取請求訪問所述第一版本索引數據。
可選地,還包括:
停止訪問任一歷史版本索引數據之后,刪除該歷史版本索引數據。
可選地,所述切流操作進一步包括:
確定是否寫入新數據;
若是,控制全部讀取請求切換至訪問最新版本索引數據;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于阿里巴巴新加坡控股有限公司,未經阿里巴巴新加坡控股有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110601072.1/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:分布式事務處理方法、設備及存儲介質
- 下一篇:一種具有提示功能的光伏發電系統
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





