Caching DML Statement Context During Asynchronous Database System Replication
US-2018260287-A1 · Sep 13, 2018 · US
US11829260B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11829260-B2 |
| Application number | US-202117525415-A |
| Country | US |
| Kind code | B2 |
| Filing date | Nov 12, 2021 |
| Priority date | May 13, 2019 |
| Publication date | Nov 28, 2023 |
| Grant date | Nov 28, 2023 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
The present disclosure relates to fault repair methods for a database system. In one example method, when working normally, a master node backs up, to a global buffer pool (GBP) node by using a data transmission protocol with a low latency and a high throughput (for example, a remote direct memory access (RDMA) protocol), a modified page generated because of transaction modification. When the master node is faulty, a standby node does not need to replay all remaining replay logs that are not replayed, but only needs to replay redo logs corresponding to a page that does not exist on the GBP node and pages that are not sequentially arranged and obtain the pages.
Opening claim text (preview).
What is claimed is: 1. A fault repair method for a database system, comprising: sending, by a master node, a plurality of pages to a global buffer pool (GBP) node using a first data transmission protocol, when the master node works normally; writing, by the GBP node, the plurality of pages into a cache queue of the GBP node, log sequence numbers (LSNs) corresponding to the plurality of pages are in ascending order from a header to a tail of the cache queue; determining, by a standby node, a GBP start point, a GBP recovery point, and a GBP end point when the master node is faulty, the GBP start point indicating a smallest LSN comprised in all pages stored on the GBP node, the GBP recovery point indicating a smallest LSN comprised in a most recently received batch of pages received by the GBP node, and the GBP end point indicating a largest LSN comprised in the most recently received batch of pages received by the GBP node; and replaying, by the standby node, all redo logs between a redo log corresponding to the GBP recovery point and a redo log corresponding to the disk end point when a disk recovery point is greater than or equal to the GBP start point and a disk end point is greater than or equal to the GBP end point, the disk recovery point indicating a smallest LSN comprised in a batch of a plurality of most recently written pages in a disk of the standby node, and the disk end point indicating a LSN of a last redo log received by the standby node. 2. The fault repair method according to claim 1 , wherein no redo logs between a redo log corresponding to the disk recovery point and the redo log corresponding to the GBP recovery point are replayed. 3. The fault repair method according to claim 1 , wherein the GBP node maintains the GBP recovery point and the GBP end point, and after the GBP node writes the plurality of pages into the cache queue of the GBP node, the method further comprises: updating, by the GBP node, the GBP recovery point and the GBP end point based on the plurality of pages; and the determining, by the standby node, the GBP start point, the GBP recovery point, and the GBP end point comprises obtaining, by the standby node, an updated GBP recovery point and an updated GBP end point from the GBP node. 4. The fault repair method according to claim 1 , wherein the GBP node maintains the GBP start point, and when the GBP node receives a new page that does not exist in a page buffer of the GBP node and the page buffer of the GBP node is full, the method further comprises: evicting, by the GBP node, a page located in the header of the cache queue; updating the GBP start point to a LSN corresponding to a new header page of the cache queue; and the determining, by the standby node, the GBP start point, the GBP recovery point, and the GBP end point comprises obtaining, by the standby node, an updated GBP start point from the GBP node. 5. The fault repair method according to claim 1 , wherein: when the GBP node receives a new page that does not exist in a page buffer of the GBP node, the writing, by the GBP node, the plurality of pages into the cache queue of the GBP node comprises placing, by the GBP node, the new page at the tail of the cache queue; or when the GBP node receives the new page that exists in the page buffer of the GBP node, the writing, by the GBP node, the plurality of pages into the cache queue of the GBP node comprises updating, by the GBP node, an existing page corresponding to the new page based on the received new page; and placing the updated page at the tail of the cache queue. 6. The fault repair method according to claim 1 , further comprising: starting, by the standby node, a background thread when the disk recovery point is greater than or equal to the GBP start point and the disk end point is greater than or equal to the GBP end point; the background thread being configured to pull all the pages stored on the GBP node to a page buffer of the standby node. 7. The fault repair method according to claim 6 , wherein the background thread is configured to pull the all the pages stored on the GBP node to the page buffer of the standby node using a second data transmission protocol. 8. The fault repair method according to claim 1 , wherein after the standby node completes the replaying step, when a page that needs to be accessed by an application on the standby node is still located in a page buffer of the GBP node, the application reads the page that needs to be accessed from the page buffer of the GBP node. 9. A database system, comprising: a master node configured to send a plurality of pages to a global buffer pool (GBP) node using a first data transmission protocol; a standby node; and the GBP node, the GBP node being configured to write the plurality of pages into a cache queue of the GBP node, log sequence numbers (LSNs) corresponding to the plurality of pages are in ascending order from a header to a tail of the cache queue; the standby node is configured to determine a GBP start point, a GBP recovery point, and a GBP end point when the master node is faulty, the GBP start point indicating a smallest log sequence number (LSN) comprised in all pages stored on the GBP node, the GBP recovery point indicating a smallest LSN comprised in a most recently received batch of pages received by the GBP node, and the GBP end point indicating a largest LSN comprised in the most recently received batch of pages received by the GBP node; and the standby node is further configured to replay all redo logs between a redo log corresponding to the GBP recovery point and a redo log corresponding to the disk end point when a disk recovery point is greater than or equal to the GBP start point and a disk end point is greater than or equal to the GBP end point, the disk recovery point indicating a smallest LSN comprised in a batch of a plurality of most recently written pages in a disk of the standby node, and the disk end point indicating a LSN of a last redo log received by the standby node. 10. The system according to claim 9 , wherein no redo logs between a redo log corresponding to the disk recovery point and the redo log corresponding to the GBP recovery point are replayed. 11. The system according to claim 9 , wherein after writing the plurality of pages into the cache queue of the GBP node, the GBP node is further configured to update the GBP recovery point and the GBP end point based on the plurality of pages; and the standby node is further configured to obtain an updated GBP recovery point and an updated GBP end point from the GBP node. 12. The system according to claim 9 , wherein when the GBP node receives a new page that does not exist in a page buffer of the GBP node and the page buffer of the GBP node is full, the GBP node is further configured to: evict a page located in the header of the cache queue; and update the GBP start point to a LSN corresponding to a new header page of the cache queue; and the standby node is further configured to obtain an updated GBP start point from the GBP node. 13. The system according to claim 9 , wherein: when the GBP node receives a new page that does not exist in a page buffer of the GBP node, the GBP node is further configured to place the new page at the tail of the cache queue; or when the GBP node receives the new page that exists in the page buffer of the GBP node, the GBP node is further configured to: update an existing page corresponding to the new page based on the received new page; and place the updated page at the tail of the cache queue. 14. The system according to claim 9 , wherein the standby node is further configured t
Backup restoration techniques · CPC title
by reconfiguration of node membership · CPC title
involving logging of persistent data for recovery · CPC title
Design, administration or maintenance of databases · CPC title
eliminating a faulty processor or activating a spare · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.