发明名称 Multi-master data replication in a distributed multi-tenant system
摘要 A multi-master replication system is disclosed. The multi-master replication system allows a large set of peer instances to collaboratively replicate data to each other.
申请公布号 US9396242(B2) 申请公布日期 2016.07.19
申请号 US201113252214 申请日期 2011.10.04
申请人 salesforce.com, inc. 发明人 Varley Ian;Hansma Scott;Burstein Paul
分类号 G06G7/00;G06F17/30 主分类号 G06G7/00
代理机构 Blakely, Sokoloff, Taylor & Zafman 代理人 Blakely, Sokoloff, Taylor & Zafman
主权项 1. A method comprising: monitoring for changes to a replicated database by an instance of the replicated database, wherein the instance is one of a plurality instances of the replicated database, and each instance is separately responsible for multiple database tables local to the respective instances, and wherein the plurality of instances of the replicated database comprise two or more data centers each data center having a leader instance and one or more non-leader instances, the one or more non-leader instances to communicate with other non-leader instances of the same data center and the leader instance of the same data center and not to instances of other data centers, the leader instance to communicate with leader instances of other data centers and not with non-leader instances of other data centers, the monitoring including detecting by the instance a change to at least one record of the local database tables; in response to the detecting, adding information to a chunk, wherein a chunk stores metadata about record changes and corresponds to a discrete unit of progress and is specific to a single instance and provide a single consistent unit for both change detection and transport; andserving the chunk to another instance of the replicated database via one or more leader instances to replicate the detected change to the other instance; and receiving by the instance a chunk from a remote instance of the replicated database, which has metadata identifying a set of changed records for database tables of the remote instance; in response to the receiving, requesting underlying data for changed records indicated in the received chunk via the one or more leader instances; andupserting the changed records into the local database tables.
地址 San Francisco CA US