Data clean room using defined access via native applications
AssigneeSnowflake Inc.
InventorsRachel Frances Blum, Justin Langseth, Michael Earle Rainey
Life of this patent
Estimating the term…
Abstract
Embodiments of the present disclosure may provide a data sharing system implemented as a local application of a distributed database. A query from a query template can be validated and executed against shared dataset that comprises portions of data from the database dataset and additional portions of data from another database of the distributed database.
Claims25
A method comprising:
- generating, using one or more processors of a machine, a data clean room as a local application in a data-consumer database account of a distributed database system;
- generating a query from a query template shared with the data-consumer database account by a data-provider database account of the distributed database system, the query comprising one or more fields;
- validating that the query does not differ from the query template in a way that would violate a data share policy managed by the data-provider database account;
- and
- based on validating that the query does not differ from the query template in a way that would violate a data share policy managed by the data-provider database account:
- providing access to a portion of a data-provider protected dataset to the data-consumer database account, the data-provider protected dataset protected by the data share policy managed by the data-provider database account;
- executing the query on a shared dataset that comprises the portion of the data-provider protected dataset joined with a portion of data from the data-consumer database account to generate results data;
- and
- storing the results data.
A computing system comprising:
- a processor;
- and
- a memory storing instructions that, when executed by the processor, execute operations comprising:
- generating, using one or more processors of a machine, a data clean room as a local application in a data-consumer database account of a distributed database system;
- generating a query from a query template shared with the data-consumer database account by a data-provider database account of the distributed database system, the query comprising one or more fields;
- validating that the query does not differ from the query template in a way that would violate a data share policy managed by the data-provider database account;
- and
- based on validating that the query does not differ from the query template in a way that would violate a data share policy managed by the data-provider database account:
- providing access to a portion of a data-provider protected dataset to the data-consumer database account, the data-provider protected dataset protected by a data share policy managed by the data-provider database account;
- executing the query on a shared dataset that comprises the portion of the data-provider protected dataset joined with a portion of data from the data-consumer database account to generate results data;
- and
- storing the results data.
A non-transitory computer-readable storage medium, the computer-readable storage medium including instructions that when executed by a computer, cause the computer to perform operations comprising:
- generating, using one or more processors of a machine, a data clean room as a local application in a data-consumer database account of a distributed database system;
- generating a query from a query template shared with the data-consumer database account by a data-provider database account of the distributed database system, the query comprising one or more fields;
- validating that the query does not differ from the query template in a way that would violate a data share policy managed by the data-provider database account;
- and
- based on validating that the query does not differ from the query template in a way that would violate a data share policy managed by the data-provider database account:
- providing access to a portion of a data-provider protected dataset to the data-consumer database account, the data-provider protected dataset protected by a data share policy managed by the data-provider database account;
- executing the query on a shared dataset that comprises the portion of the data-provider protected dataset joined with a portion of data from the data-consumer database account to generate results data;
- and
- storing the results data.
Dependencies are inferred from the claim text.