[發明專利]數據庫的數據重分布方法、裝置、設備和存儲介質有效
| 申請號: | 202010969854.6 | 申請日: | 2020-09-15 |
| 公開(公告)號: | CN112115146B | 公開(公告)日: | 2023-09-15 |
| 發明(設計)人: | 王鴻翔 | 申請(專利權)人: | 北京人大金倉信息技術股份有限公司 |
| 主分類號: | G06F16/22 | 分類號: | G06F16/22;G06F16/27 |
| 代理公司: | 北京開陽星知識產權代理有限公司 11710 | 代理人: | 安偉 |
| 地址: | 100102 北京市朝陽區容*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數據庫 數據 分布 方法 裝置 設備 存儲 介質 | ||
本公開提供一種數據庫的數據重分布方法、裝置、設備和存儲介質。該方法包括:接收客戶端發送的重分布命令,重分布命令用于指示對第一數據表存儲的基礎數據進行重分布以生成第二數據表,第一數據表按照第一預設規則存儲數據,第二數據表按照第二預設規則存儲數據,對基礎數據進行重分布,將基礎數據寫入第二數據表,在對基礎數據進行重分布的時間段內,接收到客戶端發送的增量數據的寫入指令,將增量數據寫入到第一數據表,在對基礎數據進行重分布結束后,對增量數據進行重分布,將增量數據寫入第二數據表,在對增量數據進行重分布的時間段內,禁止第一數據表寫入數據,在對增量數據進行重分布結束后,將第一數據表的指針指向第二數據表。
技術領域
本公開涉及數據庫技術領域,尤其涉及一種數據庫的數據重分布方法、裝置、設備和存儲介質。
背景技術
在業務需求變化的情況下,無共享的分布式數據庫需要進行擴容或者縮容,也就是增加或者減少節點,從而實現改變其存儲或者計算能力的目的,以適應業務的變化需求。
以數據庫擴容為例,傳統的數據庫擴容方法需要將數據庫停機,把節點加入的數據庫中,然后把表數據重分布到新的數據庫的各個節點中,然而,傳統的擴容方法在數據重分布過程中,無法對數據庫進行訪問,導致無法進行相應的數據庫業務。
為解決傳統的數據庫擴容方法的上述問題,可以采用在線擴容的方法,也就是無需停機,可以在線添加新節點,在線進行各個數據表的數據重分布,對于未正在執行數據重分布的數據表可以執行正常的讀/寫等任何操作,對于正在重分布的表上無法執行任何操作。
然而,這將導致需要訪問正在重分布的表的業務中斷或者長時間無響應,降低了數據庫的可用性。
發明內容
為了解決上述技術問題或者至少部分地解決上述技術問題,本公開提供了一種數據庫的數據重分布方法、裝置、設備和存儲介質。
第一方面,本公開提供了一種數據庫的數據重分布方法,包括:
接收客戶端發送的重分布命令,所述重分布命令用于指示對第一數據表存儲的基礎數據進行重分布以生成第二數據表,所述第一數據表按照第一預設規則存儲數據,所述第二數據表按照第二預設規則存儲數據;
對所述基礎數據進行重分布,將所述基礎數據寫入所述第二數據表;
在對所述基礎數據進行重分布的時間段內,接收到所述客戶端發送的增量數據的寫入指令,將所述增量數據寫入到所述第一數據表;
在對所述基礎數據進行重分布結束后,對所述增量數據進行重分布,將所述增量數據寫入第二數據表;
在對所述增量數據進行重分布的時間段內,禁止所述第一數據表寫入數據;
在對所述增量數據進行重分布結束后,將所述第一數據表的指針指向第二數據表。
可選的,所述將所述第一數據表的指針指向第二數據表之后,還包括:
接收到所述客戶端發送的寫入指令,將所述寫入指令對應的數據寫入所述第二數據表。
可選的,在對所述基礎數據進行重分布結束后,在禁止所述第一數據表寫入數據之前,還包括:
對未完成的寫事務進行中斷。
可選的,所述接收客戶端發送的重分布命令之前,還包括:
接收客戶端發送的第二預設規則。
可選的,所述接收客戶端發送的第二預設規則之前,還包括:
接收客戶端發送節點變化指令,所述節點變化指令用于指示增加存儲節點或者減少存儲節點。
第二方面,本公開提供一種數據庫的數據重分布裝置,包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京人大金倉信息技術股份有限公司,未經北京人大金倉信息技術股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010969854.6/2.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





