Access Consistency in High-Availability Databases

US2024004746A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2024004746-A1
Application numberUS-202318203388-A
CountryUS
Kind codeA1
Filing dateMay 30, 2023
Priority dateOct 21, 2020
Publication dateJan 4, 2024
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Techniques are disclosed relating to maintaining a high availability (HA) database. In some embodiments, a computer system receives, from a plurality of host computers, a plurality of requests to access data stored in a database implemented using a plurality of clusters. In some embodiments, the computer system responds to the plurality of requests by accessing data stored in an active cluster. The computer system may then determine, based on the responding, health information for ones of the plurality of clusters, wherein the health information is generated based on real-time traffic for the database. In some embodiments, the computer system determines, based on the health information, whether to switch from accessing the active cluster to accessing a backup cluster. In some embodiments, the computer system stores, in respective clusters of the database, a changeover decision generated based on the determining.

First claim

Opening claim text (preview).

1 . (canceled) 2 . A non-transitory computer-readable medium having instructions stored thereon that are executable by a gatekeeper device to perform operations comprising: determining, based on accessing transaction data stored in one or more clusters of a database implemented using a plurality of clusters, health information for the one or more clusters; determining, based on the health information, whether to switch from accessing an active cluster to accessing a backup cluster of the database; storing, in respective clusters of the database, a changeover decision generated based on determining whether to switch from the active cluster to the backup cluster; periodically receiving, from access host computers included in a pool of access host computers configured to respond to a plurality of requests to access transaction data stored in the database, updated health information, wherein the updated health information is generated based on changes in real-time traffic for the database; and updating, based on the updated health information, the changeover decision. 3 . The non-transitory computer-readable medium of claim 2 , wherein the transaction data is for electronic transactions initiated between two or more computing devices prior to determining the health information, and wherein accessing the transaction data is based on: receiving, from a plurality of host computers, a plurality of requests to access the transaction data stored in the database, wherein the plurality of requests are from a plurality of host computers; and responding, by accessing transaction data stored in the active cluster, to the plurality of requests. 4 . The non-transitory computer-readable medium of claim 2 , wherein the updated health information is received every minute. 5 . The non-transitory computer-readable medium of claim 2 , wherein the operations further comprise: periodically determining, based on a cleanup time threshold, whether one or more access host computers have been removed from a pool of access host computers used in responding to the plurality of requests; and removing, from the health information, one or more health ballots associated with one or more access host computers that have been removed from the pool. 6 . The non-transitory computer-readable medium of claim 2 , wherein determining the health information includes determining whether one or more database accesses were successful, wherein the health information indicates inferior characteristics of the active cluster, and wherein the health information is further generated by: determining whether failure ratios for one or more clusters in the database, calculated based on health values for a plurality of requests for data, satisfy a health threshold, wherein the health information indicates whether one or more clusters in the database are healthy. 7 . The non-transitory computer-readable medium of claim 2 , wherein the database is a key-value database, wherein the stored changeover decision is accessible to one or more access host computers for determining whether to access the active cluster or the backup cluster included in the database based on receiving requests from ones of a plurality of host computers, wherein the stored changeover decision includes health ballots for clusters of the key-value database, and wherein the health ballots specify for respective clusters in the database: a name of an access host computer as an entry in a key field; and a timestamp and a health vote as an entry in a value field. 8 . The non-transitory computer-readable medium of claim 2 , wherein the database is a key-value database, wherein the gatekeeper device is a distributed micro-service acting as a data access layer (DAL) for the key-value database, and wherein the gatekeeper device includes a pool of access host computers that maintain a plurality of connections to the database. 9 . A method, comprising: determining, by a computer system based on accessing transaction data stored in one or more clusters of a transaction database implemented using a plurality of clusters, health information for one or more of the plurality of clusters of the transaction database; determining, by the computer system based on the health information, whether to switch from accessing an active cluster of the transaction database to accessing a backup cluster; storing, by the computer system in respective clusters of the transaction database, a changeover decision generated based on determining whether to switch from the active cluster to the backup cluster; periodically receiving, by the computer system from access host computers included in a pool of access host computers configured to respond to a plurality of requests to access transaction data stored in the transaction database, updated health information, wherein the updated health information is generated based on changes in real-time traffic for the transaction database; and updating, by the computer system based on the updated health information, the changeover decision. 10 . The method of claim 9 , further comprising: periodically determining, by the computer system based on a cleanup time threshold, whether one or more access host computers have been removed from a pool of access host computers used in responding to the plurality of requests; and removing, by the computer system from the health information, one or more health ballots associated with one or more access host computers that have been removed from the pool. 11 . The method of claim 9 , wherein the updated health information is received every hour. 12 . The method of claim 10 , wherein the transaction database is a non-relational database, and wherein the active cluster and the backup cluster include redundant data. 13 . The method of claim 10 , wherein the transaction database is a key-value database, wherein the changeover decision includes health ballots for clusters of the key-value database, and wherein the health ballots specify for respective clusters in the transaction database: a name of an access host computer as an entry in a key field; and a timestamp and a health vote as an entry in a value field. 14 . The method of claim 10 , wherein the transaction database is a non-relational database, and wherein the computer system is a gatekeeper for the non-relational database such that it facilitates communication between a plurality of host computers and the transaction database. 15 . A system, comprising: a processor; and a non-transitory computer-readable medium having stored thereon instructions that are executable by the processor to cause the system to perform operations comprising: determining, based on accessing transaction data stored in one or more clusters of a database implemented using a plurality of clusters, health information for one or more of the plurality of clusters of the database; determining, based on the health information, whether to switch from accessing an active cluster of the database to accessing a backup cluster; storing, in respective clusters of the database, a changeover decision generated based on determining whether to switch from the active cluster to the backup cluster; periodically receiving, from access host computers included in a pool of access host computers configured to respond to requests to access transaction data stored in the database, updated health information; and updating, based on the updated health information, the changeover decision. 16 . The system of claim 15 , wherein the instructions are executable by the processor to cause the system to

Assignees

Inventors

Classifications

  • Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers · CPC title

  • by exceeding a time limit, i.e. time-out, e.g. watchdogs · CPC title

  • by exceeding a count or rate limit, e.g. word- or bit count limit · CPC title

  • by selection of backup contents · CPC title

  • for networked environments · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2024004746A1 cover?
Techniques are disclosed relating to maintaining a high availability (HA) database. In some embodiments, a computer system receives, from a plurality of host computers, a plurality of requests to access data stored in a database implemented using a plurality of clusters. In some embodiments, the computer system responds to the plurality of requests by accessing data stored in an active cluster.…
Who is the assignee on this patent?
Paypal Inc
What technology area does this patent fall under?
Primary CPC classification G06F11/0772. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Jan 04 2024 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).