US 12,175,112 B2
Global heterogeneous data mirroring
Sophia Chrisoula Sakellariadis, San Francisco, CA (US); and Anand Balaji, San Francisco, CA (US)
Assigned to Stripe, Inc., South San Francisco, CA (US)
Filed by Stripe, Inc., San Francisco, CA (US)
Filed on Jun. 30, 2023, as Appl. No. 18/217,191.
Application 18/217,191 is a continuation of application No. 16/715,862, filed on Dec. 16, 2019, granted, now 11,755,228.
Prior Publication US 2023/0350596 A1, Nov. 2, 2023
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 3/06 (2006.01); G06F 9/30 (2018.01); G06F 9/46 (2006.01); H04L 9/08 (2006.01)
CPC G06F 3/065 (2013.01) [G06F 3/0622 (2013.01); G06F 3/067 (2013.01); G06F 9/30043 (2013.01); G06F 9/466 (2013.01); H04L 9/0838 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method comprising:
capturing a set of transaction data associated with a set of transactions into a first cloud-based storage resource associated with a first cloud-based storage provider;
determining that the first cloud-based storage resource resides in a first location and is unavailable for use in a second location, different than the first location, and that a second cloud-based storage resource, associated with a second cloud-based storage provider, is available for use in the second location;
creating a configuration file in the first cloud-based storage resource, the configuration file comprising: a set of filter criteria to reduce the set of transaction data to a location-specific subset of transaction data, a target destination in the second cloud-based storage resource, and an encryption policy to encrypt the location-specific subset of transaction data; and
mirroring data across a heterogeneous set of cloud-based storage providers using a plurality of stages executed by one or more processors, the heterogeneous set of cloud-based storage providers comprising the first cloud-based storage provider and the second cloud-based storage provider, the mirroring comprising:
filtering, at a reduction stage, according to the configuration file, the set of transaction data and writing the location-specific subset of transaction data to the target destination; and
monitoring, at a replication stage, the second cloud-based storage resource and, in response to new location-specific data of the location-specific subset of transaction data being added to the second cloud-based storage resource from the reduction stage, performing a replication task to mirror the location-specific subset of transaction data, in accordance with the encryption policy, to the target destination defined in the configuration file.