US 12,475,142 B2
System for list-based database replication
Pui Kei Johnston Chu, Richmond Hill (CA); Shreyas Narendra Desai, Bellevue, WA (US); German Alberto Gil Echeverri, San Francisco, CA (US); Prasanna Krishnan, Palo Alto, CA (US); Nithin Mahesh, Redmond, WA (US); Subramanian Muralidhar, Mercer Island, WA (US); Eric Robinson, Sammamish, WA (US); and Sahaj Saini, Seattle, WA (US)
Assigned to Snowflake Inc., Bozeman, MT (US)
Filed by Snowflake Inc., Bozeman, MT (US)
Filed on Oct. 25, 2023, as Appl. No. 18/494,599.
Application 18/494,599 is a continuation of application No. 17/807,956, filed on Jun. 21, 2022, granted, now 11,841,877.
Application 17/807,956 is a continuation of application No. 17/352,044, filed on Jun. 18, 2021, granted, now 11,436,257.
Application 17/352,044 is a continuation of application No. 16/944,988, filed on Jul. 31, 2020, granted, now 11,055,315.
Claims priority of provisional application 63/032,163, filed on May 29, 2020.
Prior Publication US 2024/0054147 A1, Feb. 15, 2024
Int. Cl. G06F 16/27 (2019.01); G06F 16/22 (2019.01); G06F 16/23 (2019.01); G06Q 30/018 (2023.01); G06Q 30/0204 (2023.01)
CPC G06F 16/275 (2019.01) [G06F 16/2282 (2019.01); G06F 16/2379 (2019.01); G06Q 30/0185 (2013.01); G06Q 30/0205 (2013.01)] 24 Claims
OG exemplary drawing
 
1. A computer-implemented method of implementing sub-table replication comprising:
receiving, by a replication controller of a data platform, a first inclusion list indicating a first subset of rows from a data table of the data platform to replicate to a first provider account of the data platform;
replicating, by the replication controller, the first subset of rows to the first provider account based on the first inclusion list;
responsive to a provider user updating an entitlements table in the first provider account, performing operations comprising:
updating, by the replication controller, a virtual entitlements column stored in the data table indicating a change in provider accounts associated with a client identifier, the virtual entitlements column indicating a provider account associated with the first subset of rows of the data table;
identifying, by the replication controller, a second subset of rows in the data table associated with the client identifier by performing a filtering of the data table using file-level filtering of partitions of the data table based on metadata associated with the client identifier and the virtual entitlements column, the file-level filtering performed using the metadata without opening the partitions;
generating, by the replication controller, a second inclusion list comprising the second subset of rows associated with the client identifier based on the update to the virtual entitlements column; and
performing, by the replication controller, an incremental replication to replicate the second subset of rows to a second provider account based on the second inclusion list.