[發明專利]數據處理方法、裝置、電子設備及計算機可讀介質在審
| 申請號: | 202010011632.3 | 申請日: | 2020-01-06 |
| 公開(公告)號: | CN113076220A | 公開(公告)日: | 2021-07-06 |
| 發明(設計)人: | 尚燦芳;黃貴;王劍英 | 申請(專利權)人: | 阿里巴巴集團控股有限公司 |
| 主分類號: | G06F11/14 | 分類號: | G06F11/14 |
| 代理公司: | 北京合智同創知識產權代理有限公司 11545 | 代理人: | 李杰;舒道宏 |
| 地址: | 英屬開曼群島大開*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數據處理 方法 裝置 電子設備 計算機 可讀 介質 | ||
1.一種數據處理方法,其特征在于,所述方法包括:
基于采用LSM樹結構的存儲引擎的內存表的快照數據,確定所述內存表中的寫入數據的轉儲位點;
基于所述轉儲位點,構建用于所述內存表中的寫入數據的轉儲任務;
通過執行所述轉儲任務,將所述內存表中位于所述轉儲位點之前的寫入數據,轉儲至持久化存儲設備中不支持讀操作的數據層,以推進所述存儲引擎的檢查點。
2.根據權利要求1所述的方法,其特征在于,所述基于采用LSM樹結構的存儲引擎的內存表的快照數據,確定所述內存表中的寫入數據的轉儲位點,包括:
基于所述存儲引擎中事務提交所產生的提交數據的快照數據,獲取當前時刻全局提交數據的第一最大數據版本號;
基于所述存儲引擎的內存表的快照數據,獲取所述當前時刻所述內存表中的寫入數據的第二最大數據版本號;
將所述第一最大數據版本號和所述第二最大數據版本號中的較小者作為所述內存表中的寫入數據的轉儲位點。
3.根據權利要求1所述的方法,其特征在于,所述將所述內存表中位于所述轉儲位點之前的寫入數據,轉儲至持久化存儲設備中不支持讀操作的數據層,包括:
掃描所述內存表中位于所述轉儲位點之前的寫入數據;
將所述內存表中位于所述轉儲位點之前的寫入數據,按照所述持久化存儲設備的數據存儲格式寫到所述持久化存儲設備中不支持讀操作的數據層。
4.根據權利要求3所述的方法,其特征在于,所述方法還包括:
如果確定所述持久化存儲設備中存在舊的所述數據層,則刪除舊的所述數據層。
5.根據權利要求1所述的方法,其特征在于,所述方法還包括:
如果在所述內存表的寫入數據刷盤時確定所述持久化存儲設備中存在所述數據層,則確定所述內存表中刷盤的寫入數據是否與所述數據層的數據冗余;
如果確定所述內存表中刷盤的寫入數據與所述數據層的數據冗余,則刪除所述數據層。
6.根據權利要求1所述的方法,其特征在于,所述方法還包括:
使用日志文件記錄所述轉儲任務對所述持久化存儲設備的所有數據層的元數據的更改操作。
7.根據權利要求1所述的方法,其特征在于,所述方法還包括:
當所述存儲引擎宕機恢復時,將所述數據層轉換為所述持久化存儲設備的最高數據層,以支持讀操作,并通過回放所述內存表中位于所述轉儲位點之后的寫入數據對應的日志數據,恢復所述內存表中位于所述轉儲位點之后的寫入數據。
8.根據權利要求7所述的方法,其特征在于,所述將所述數據層轉換為所述持久化存儲設備的最高數據層,包括:
通過更改所述數據層的元數據,將所述數據層轉換為所述持久化存儲設備的最高數據層。
9.根據權利要求7所述的方法,其特征在于,所述將所述數據層轉換為所述持久化存儲設備的最高數據層之前,所述方法還包括:
基于所述持久化存儲設備的所有數據層的元數據的檢查點和用于記錄所述轉儲任務對所述持久化存儲設備的所有數據層的元數據的更改操作的日志文件,將所述持久化存儲設備的所有數據層的元數據恢復于所述存儲引擎的內存中。
10.一種數據處理裝置,其特征在于,所述裝置包括:
第一確定模塊,用于基于采用LSM樹結構的存儲引擎的內存表的快照數據,確定所述內存表中的寫入數據的轉儲位點;
構建模塊,用于基于所述轉儲位點,構建用于所述內存表中的寫入數據的轉儲任務;
轉儲模塊,用于通過執行所述轉儲任務,將所述內存表中位于所述轉儲位點之前的寫入數據,轉儲至持久化存儲設備中不支持讀操作的數據層,以推進所述存儲引擎的檢查點。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于阿里巴巴集團控股有限公司,未經阿里巴巴集團控股有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010011632.3/1.html,轉載請聲明來源鉆瓜專利網。





