US2017004196A1PendingUtilityA1
Data replication framework
Est. expiryDec 28, 2030(~4.4 yrs left)· nominal 20-yr term from priority
G06F 16/245G06F 16/273G06F 17/30424G06F 17/30578
51
PatentIndex Score
0
Cited by
0
References
0
Claims
Abstract
Generally described, the present disclosure is directed to an eventually consistent replicated data store that uses, for its underlying storage, a computer software library that provides a high-performance embedded database for data. The replicated data store employs a plurality of hosts interconnected to one another, allowing for writes to any host and full awareness of membership across all hosts. With the data replication framework disclosed herein, various modes are allowed to be built up on top of the core system.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method of communicating between hosts members while preventing permanent network partitions, the method comprising:
accepting a session from a peer member; querying a member store for an availability state associated with the peer member; synchronizing member store information with the peer member if the availability state of the peer member indicates the peer member as available; and ignoring member store information from the peer member if the availability state of the peer member indicates the peer member as permanently unavailable; wherein the method is performed on a computing device comprising a processor and memory.
2 . The method of claim 1 , wherein a peer member is assigned a unique member identity.
3 . The method of claim 2 , wherein the member identity is stored in the member store.
4 . The method of claim 2 further comprising: storing the member identity of a permanently unavailable member for an extended period of time.
5 . The method of claim 4 , wherein the extended period of time is one year.
6 . The method of claim 4 further comprising: assigning the permanently unavailable member a new member identity if the member becomes available.
7 . A computing system of communicating between hosts members while preventing permanent network partitions, the computing system comprising:
a plurality of host members, wherein each host member is in communication with any other host members, a member store, within each host member, wherein the member store maintains availability information regarding availability state of each of the plurality of host members, a computer processer, within each host member, programmed by computer executable instructions to at least:
query the member store for an availability state associated with a peer member;
synchronize member store information with the peer member if the availability state of the peer member indicates the peer member as available; and
ignore member store information from the peer member if the availability state of the peer member indicates the peer member as permanently unavailable.
8 . The computing system of claim 7 , wherein the availability state of each peer member is at least one of available or unavailable.
9 . The computing system of claim 7 , wherein the computer processor is further programmed by the computer-executable instructions to receive availability state changes of the peer member.
10 . The computing system of claim 9 , wherein availability state changes comprise at least one of a change from available to unavailable state and a change from unavailable to available state.
11 . The computing system of claim 7 further comprising:
a membership module configured to:
maintain availability information regarding availability state of each of the plurality of host members in a member store,
identify an unavailable host member among the plurality of hosts,
attempt a first attempt to reconnect with an unavailable host member with a first time delay,
attempt to reconnect with the unavailable host member with subsequent time delays;
attempt to reconnect with the unavailable host member for a threshold period of time, and
update the availability information to indicate that the unavailable host member is permanently unavailable based on unsuccessful subsequent attempts to reconnect for the threshold period of time;
12 . The computing system of claim 11 , wherein the availability state of each individual host member is accessible to a new host from any one of the plurality of host members.
13 . The computing system of claim 11 , wherein the membership module is configured to first attempt to reconnect with the unavailable host member within one second.
14 . The computing system of claim 11 , wherein the membership module is configured to attempt to reconnect with the unavailable host member within increasingly longer subsequent time delays.
15 . The computing system of claim 14 , wherein the subsequent time delays increase up to two minutes.
16 . The computing system of claim 11 , wherein the threshold period of time is 20 hours.
17 . A non-transitory computer-readable storage medium having stored thereon computer-executable instructions for communicating between host members while preventing permanent network partitions, the computer-executable instructions configured to cause computing hardware to at least:
accept a session from a peer member; query a member store for an availability state associated with the peer member; synchronize member store information with the peer member if the availability state of the peer member indicates the peer member as available; and ignore member store information from the peer member if the availability state of the peer member indicates the peer member as permanently unavailable.
18 . The non-transitory computer-readable storage medium of claim 17 , wherein the computer-executable instructions are further configured to cause the computer hardware to:
query the member store for the availability state associated with the peer member again with time delays if the availability state of the peer member indicated the peer member as unavailable in the last query; synchronize member store information with the peer member if the availability state of the peer member indicates the peer member as available; ignore member store information from the peer member if the availability state of the peer member indicates the peer member as permanently unavailable.
19 . The non-transitory computer-readable storage medium of claim 17 , wherein the time delays are determined based on a previous time delay.
20 . The non-transitory computer-readable storage medium of claim 17 , wherein the time delays are multiples of a previous time delay.Join the waitlist — get patent alerts
Track US2017004196A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.