[發明專利]分布式系統的數據庫處理方法、裝置、設備及存儲介質有效
| 申請號: | 202010003357.0 | 申請日: | 2020-01-02 |
| 公開(公告)號: | CN111241195B | 公開(公告)日: | 2023-03-21 |
| 發明(設計)人: | 王潤澤;郭娟 | 申請(專利權)人: | 騰訊云計算(北京)有限責任公司 |
| 主分類號: | G06F16/27 | 分類號: | G06F16/27 |
| 代理公司: | 北京派特恩知識產權代理有限公司 11270 | 代理人: | 趙翠萍;張穎玲 |
| 地址: | 100190 北京市*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 分布式 系統 數據庫 處理 方法 裝置 設備 存儲 介質 | ||
1.一種分布式系統的數據庫處理方法,其特征在于,所述方法包括:
獲取目標數據庫,并檢測所述目標數據庫的數據量大小;
當所述目標數據庫的數據量大小超過數據量閾值時,
基于分裂系數,將所述目標數據庫進行拆分,得到對應的第一層級的多個第一子數據庫,其中,所述分裂系數表征所述多個第一子數據庫的數量;
當所述多個第一子數據庫中,存在數據量大小超過所述數據量閾值的第一子數據庫時,將數據量大小超過所述數據量閾值的第一子數據庫進行拆分,得到對應的第二層級的多個第二子數據庫,直至各所述第二子數據庫的數據量大小未超過所述數據量閾值時停止拆分,其中,各層級的所述子數據庫的數量與所述分裂系數相匹配;
將至少一層級的子數據庫構成所述目標數據庫對應的多個子數據庫;
確定待分配的各服務實例所對應的可用存儲空間的大小,所述服務實例用于供所述分布式系統中的服務節點實現數據存儲;
基于各所述服務實例所對應的可用存儲空間的大小,以及各所述子數據庫的數據量大小,為各所述服務實例分配適配數量的子數據庫。
2.如權利要求1所述的方法,其特征在于,所述確定待分配的各服務實例所對應的可用存儲空間的大小,包括:
獲取待分配的各所述服務實例的當前使用狀態信息;
基于各所述服務實例的當前使用狀態信息,分別確定各所述服務實例所對應的可用存儲空間的大小。
3.如權利要求1所述的方法,其特征在于,所述多個子數據庫位于至少兩個層級,所述兩個層級包括第一層級和第二層級;所述方法還包括:
當監聽到請求執行的事件的類型為新增目標數據時,確定所述目標數據對應在所述第一層級的第一目標位置;
確定處于所述第一目標位置的子數據庫的存儲狀態;
當所述存儲狀態表示處于所述第一目標位置的子數據庫的存儲空間未滿時,將所述目標數據路由至所述第一目標位置的子數據庫中;
當所述存儲狀態表示處于所述第一目標位置的子數據庫的存儲空間已滿時,遍歷所述第二層級的子數據庫,以確定第二目標位置的子數據庫,將所述目標數據路由至所述第二目標位置的子數據庫中。
4.如權利要求3所述的方法,其特征在于,所述確定所述目標數據對應在所述第一層級的第一目標位置,包括:
將所述目標數據進行哈希處理,得到所述目標數據對應的哈希散列值;
基于所述哈希散列值以及所述分裂系數,確定對應所述第一層級的子數據庫的標識;
將所述子數據庫的標識所指示的子數據庫,確定為所述目標數據對應在所述第一層級的第一目標位置。
5.如權利要求1所述的方法,其特征在于,所述多個子數據庫位于至少兩個層級,所述兩個層級包括第一層級和第二層級;所述方法還包括:
當監聽到請求執行的事件的類型為刪除目標數據時,從所述第一層級的子數據庫中查找是否存在所述目標數據;
當所述第一層級的子數據庫中存在所述目標數據時,將在所述第一層級中查找到的所述目標數據進行刪除;
當所述第一層級的子數據庫中未存在所述目標數據時,從所述第二層級的子數據庫中查找是否存在所述目標數據;
當所述第二層級的子數據庫中存在所述目標數據時,將在所述第二層級中查找到的所述目標數據進行刪除。
6.如權利要求5所述的方法,其特征在于,所述方法還包括:
當所述第二層級的子數據庫中未存在所述目標數據時,返回通知消息;
其中,所述通知消息用于指示請求刪除的所述目標數據未存在于所述目標數據庫中。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于騰訊云計算(北京)有限責任公司,未經騰訊云計算(北京)有限責任公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010003357.0/1.html,轉載請聲明來源鉆瓜專利網。





