Patents Assigned to SNOWFLAKE INC.
  • Patent number: 11816582
    Abstract: A device searches for an anonymization of a data set using a heuristic search. The device receives a generalization lattice and one or more scoring functions. The device further can include selecting a start node in the generalization lattice. For each of the one or more scoring functions, the device can further include computing a path the generalization lattice from the start node that traverses the generalization lattice. In addition, the device can include determining an optimal path node from each of the one or more paths. Furthermore, the method can include selecting an optimal node from the one or more optimal path nodes.
    Type: Grant
    Filed: October 21, 2021
    Date of Patent: November 14, 2023
    Assignee: Snowflake Inc.
    Inventor: David Jensen
  • Patent number: 11816248
    Abstract: A distributed database generates a cross reference table that cross references a first dataset from a first database account and a second dataset from a second database account. The distributed database receives a query directed to a combination of the first and second datasets, and generates an interim table in the first database account by applying the query to the cross reference table and the first dataset. The distributed database generates results data in the second database account by applying the query to the interim table and the second dataset, and stores the results data in the first database account.
    Type: Grant
    Filed: January 31, 2023
    Date of Patent: November 14, 2023
    Assignee: Snowflake Inc.
    Inventors: Rachel Frances Blum, Justin Langseth, Michael Earle Rainey
  • Patent number: 11811639
    Abstract: A system may include a processing device and a memory storing instructions that, when executed by the processing device, causes the processing device to discover one or more endpoints of a service in view of a name that is unique to the service. In response to receiving a request to resolve the name from a client, the processing device may obtain the one or more endpoints of that service in view of the name. The processing device may filter the one or more endpoints, in view of the name and return the one or more endpoints which are filtered, to the client.
    Type: Grant
    Filed: December 2, 2022
    Date of Patent: November 7, 2023
    Assignee: Snowflake Inc.
    Inventors: Jonathan C. Allie, Seth Hettich, Aaron S. Joyner
  • Patent number: 11809408
    Abstract: Systems, methods, and devices for incrementally refreshing a materialized view are disclosed. A method includes generating a materialized view based on a source table. The method includes merging the source table and the materialized view to generate a merged table to identify whether an update has been executed on the source table that is not reflected in the materialized view. The method includes, in response to detecting an update made to the source table that is not reflected in the materialized view, applying the update to the materialized view.
    Type: Grant
    Filed: September 7, 2022
    Date of Patent: November 7, 2023
    Assignee: Snowflake Inc.
    Inventors: Thierry Cruanes, Benoit Dageville, Prasanna Rajaperumal, Jiaqi Yan
  • Patent number: 11809591
    Abstract: Systems and methods for managing column hiding are provided. The systems and methods receive, from a client device, a query associated with a table. The systems and methods determine an access restriction associated with the client device. The systems and methods identify a column of the table that is restricted by the access restriction associated with the client device. In response to identifying the column of the table that is restricted by the access restriction associated with the client device, the systems and methods provide a result of the query that excludes data corresponding to the column.
    Type: Grant
    Filed: February 22, 2023
    Date of Patent: November 7, 2023
    Assignee: Snowflake Inc.
    Inventors: Raja Suresh Krishna Balakrishnan, Khalid Zaman Bijon, Subramanian Muralidhar, David Schultz, Jian Xu
  • Patent number: 11809428
    Abstract: Embodiments of the present disclosure may provide a dynamic query execution model. This query execution model may provide acceleration by scaling out parallel parts of a query (also referred to as a fragment) to additional computing resources, for example computing resources leased from a pool of computing resources. Execution of the parts of the query may be coordinated by a parent query coordinator, where the query originated, and a fragment query coordinator.
    Type: Grant
    Filed: August 31, 2022
    Date of Patent: November 7, 2023
    Assignee: Snowflake Inc.
    Inventors: Thierry Cruanes, Igor Demura, Varun Ganesh, Prasanna Rajaperumal, Libo Wang, Jiaqi Yan
  • Patent number: 11809425
    Abstract: A data platform that implements memoizable functions for database objects. The data platform detects a first execution of a memoizable function and generates a first key based on metadata of one or more database objects operated on by the memoizable function and generates a first result for the memoizable function based on the one or more database objects. The data platform detects a second execution of the memoizable function and generates a second key based on the metadata of the one or more database objects operated on by the memoizable function. When the first key and the second key are equal, the data platform reuses the first result of the memoizable function. When the first key and second key do not match, the data platform generates a second result for the second execution of the memoizable function.
    Type: Grant
    Filed: August 15, 2022
    Date of Patent: November 7, 2023
    Assignee: Snowflake Inc.
    Inventors: Raja Suresh Krishna Balakrishnan, Thierry Cruanes, Yujie Li, Subramanian Muralidhar, David Schultz, Jiaqi Yan
  • Patent number: 11809916
    Abstract: The subject technology performs a locking operation on a first set of keys by a first statement of a first transaction. The subject technology determines that a conflict occurred between the first statement and a second transaction. The subject technology determines that the second transaction has yet to complete after a predetermined period of time. The subject technology performs a deadlock detection process where the subject technology stores a key and value in a table indicating the first transaction and the second transaction, detects, based at least in part on a graph traversal of the table starting from the first transaction, a cycle between the first transaction and the second transaction, and determines that the first transaction is a youngest transaction in the detected cycle. The subject technology ceases execution of the first transaction in response to the first transaction being a youngest transaction in a detected cycle.
    Type: Grant
    Filed: January 12, 2022
    Date of Patent: November 7, 2023
    Assignee: Snowflake Inc.
    Inventors: Chen Luo, Alexander Miller, William Waddington
  • Patent number: 11809414
    Abstract: A distributed database system can implement a column-based database system and a row-based database system for processing data. The row-based database system can store data organized into key value pairs, and data to be processed by the row-based database system is converted to a key-value format compressing keys that correspond to values. The distributed database system can perform serialization and compression in converting the data to the key-value format for efficient data storage performance. The distributed database system can unpack portions of the converted serialized compressed data in response to queries that process a portion of serialized compressed data without unpacking the entire converted dataset.
    Type: Grant
    Filed: November 30, 2021
    Date of Patent: November 7, 2023
    Assignee: Snowflake Inc.
    Inventors: Khaled Yagoub, Wumengjian Zhu, Benoit Dageville, William Waddington
  • Patent number: 11809586
    Abstract: A consumer account may invoke an operation referencing a set of shared objects stored within a database of a provider account using an imported database that makes the set of shared objects available within the consumer account. A call context of the operation may be updated to cache the imported database, which references a share created from the provider account database, the share having grants to the set of shared objects. One or more database level objects may be discovered in a context of the share and each role granted to the share may be obtained based on the one or more database level objects. Whether any role granted to the share has access to any of the set of shared objects may be determined and the operation may be executed for each of the set of shared objects to which any role granted to the share has access.
    Type: Grant
    Filed: November 3, 2022
    Date of Patent: November 7, 2023
    Assignee: Snowflake Inc.
    Inventors: Damien Carru, Jeremy Yujui Chen, Pui Kei Johnston Chu, Benoit Dageville, Subramanian Muralidhar
  • Patent number: 11809451
    Abstract: Example caching systems and methods are described. In one implementation, a method identifies multiple files used to process a query and distributes each of the multiple files to a particular execution node to execute the query. Each execution node determines whether the distributed file is stored in the execution node's cache. If the execution node determines that the file is stored in the cache, it processes the query using the cached file. If the file is not stored in the cache, the execution node retrieves the file from a remote storage device, stores the file in the execution node's cache, and processes the query using the file.
    Type: Grant
    Filed: October 20, 2014
    Date of Patent: November 7, 2023
    Assignee: Snowflake Inc.
    Inventors: Benoit Dageville, Thierry Cruanes, Marcin Zukowski
  • Patent number: 11810089
    Abstract: A method includes receiving, from a client device, a request to access data of a data exchange platform. The method further includes receiving a selection corresponding to a monetization option for the data. The method further includes executing, by one or more processors, a monetization operation corresponding to the selection without directing the client device outside of the data exchange platform. The method further includes granting the client device access to the data of the data exchange platform in response to successfully performing the monetization operation.
    Type: Grant
    Filed: January 13, 2021
    Date of Patent: November 7, 2023
    Assignee: Snowflake Inc.
    Inventors: Matthew Glickman, Christian Kleinerman, Prasanna Krishnan, Justin Langseth, Benoit Dageville
  • Patent number: 11809922
    Abstract: Disclosed is an execution information sharing system that duplicates execution information to a provider target (and other targets) as it is being loaded to a consumer target. A consumer account of a data sharing platform executes an application shared with it by a provider account of the platform. Consumer and provider configurations indicating consumer and provider targets respectively are generated. The consumer configuration and provider configurations are provided to an event context to generate a first and second event unloaders respectively, wherein the event context maintains a mapping linking both the first event unloader and the second event unloader to the application. In response to receiving execution information from the application, the first event unloader and the second event unloader are retrieved. The execution information is then written to the consumer target and the provider target using the first event unloader and the second event unloader respectively.
    Type: Grant
    Filed: April 25, 2023
    Date of Patent: November 7, 2023
    Assignee: Snowflake Inc.
    Inventors: Damien Carru, Pui Kei Johnston Chu, Unmesh Jagtap, Xiaodi Ke, Haroldo Level, Subramanian Muralidhar, James Pan, Steven Parkes, Xie Xu, Tyson J. Hamilton
  • Patent number: 11809600
    Abstract: Embodiments of the present disclosure may provide a data clean room allowing secure data analysis across multiple accounts, without the use of third parties. Each account may be associated with a different company or party. The data clean room may provide security functions to safeguard sensitive information. For example, the data clean room may restrict access to data in other accounts. The data clean room may also restrict which data may be used in the analysis and may restrict the output. The overlap data may be anonymized to prevent sensitive information from being revealed.
    Type: Grant
    Filed: January 31, 2023
    Date of Patent: November 7, 2023
    Assignee: Snowflake Inc.
    Inventors: Rachel Frances Blum, Joshua James Chacona, Christian Kleinerman, Justin Langseth, William L. Stratton, Jr.
  • Patent number: 11803552
    Abstract: An external function system can be implemented on a database to perform processing on one or more external network services. The external function system can comprise a particular external function for a particular external service, an outbound serializer function, and an inbound serializer function that are linked with the particular external function. The outbound serializer function can be configured to transform the data of a query from a database format to a different format of the particular external network service. The inbound deserializer function can be configured to receive data returned from the external service and transform the data to the format of the database.
    Type: Grant
    Filed: July 19, 2022
    Date of Patent: October 31, 2023
    Assignee: Snowflake Inc.
    Inventors: Elliott Brossard, Srilakshmi Chintala, Istvan Cseri, Rodger N. Kline, Nitya Kumar Sharma, Igor Zinkovsky
  • Patent number: 11803432
    Abstract: In an embodiment, a data platform creates an application in a data-provider account. The application includes one or more APIs corresponding to one or more underlying code blocks. The data platform shares provider data with the application in the data-provider account, and also installs, in a data-consumer account, an application instance of the application. The application instance includes one or more APIs corresponding to the one or more APIs in the application in the data-provider account. The data platform shares consumer data with the application instance in the data-consumer account, and invokes one or more of the APIs of the application instance to execute respective associated underlying code blocks, which are not visible to the data-consumer account. The data platform also saves output of the one or more respective associated underlying code blocks locally within the data-consumer account.
    Type: Grant
    Filed: October 31, 2022
    Date of Patent: October 31, 2023
    Assignee: Snowflake Inc.
    Inventors: Artin Avanes, Thierry Cruanes, Monica J. Holboke, Allison Waingold Lee, Subramanian Muralidhar, David Schultz
  • Patent number: 11803373
    Abstract: Methodologies for upgrading and patching an in-database application package and its application instances. A data platform determines a number of objects of an application instance running on the data platform at a previous version level of an application package of the application instance. In response to determining the number of objects of the application package running on the data platform at the previous version level of the application package is one or more, the data platform continues determining the number of objects running on the data platform at a previous version level of the application package. In response to determining the number of objects of the application instance running on the data platform at the previous version level of the application package is none, the data platform upgrades the application instance to the new version of the application package.
    Type: Grant
    Filed: February 15, 2023
    Date of Patent: October 31, 2023
    Assignee: Snowflake Inc.
    Inventors: Damien Carru, Jeremy Yujui Chen, Pui Kei Johnston Chu, Benoit Dageville, Scott C. Gray, Unmesh Jagtap, Subramanian Muralidhar
  • Patent number: 11805167
    Abstract: Sharing data in a data exchange across multiple cloud computing platforms and/or cloud computing platform regions is described. An example computer-implemented method can include creating a listing in a data exchange, the listing including a data set hosted by a first cloud computing entity. The data set can be shared with a second cloud computing entity. The method further includes receiving a request associated with a customer account of the second cloud computing entity to access the data set of the listing hosted by the first cloud computing entity and replicating at least a subset of the data set of the listing from the first cloud computing entity to a provider account at the second cloud computing entity to be accessible by the customer account at the second cloud computing entity.
    Type: Grant
    Filed: April 29, 2021
    Date of Patent: October 31, 2023
    Assignee: Snowflake Inc.
    Inventors: Pui Kei Johnston Chu, Benoit Dageville, Matthew Glickman, Christian Kleinerman, Prasanna Krishnan, Justin Langseth
  • Patent number: 11803551
    Abstract: A source table organized into a set of micro-partitions is accessed by a network-based data warehouse. A pruning index is generated based on the source table. The pruning index comprises a set of filters that indicate locations of distinct values in each column of the source table. A query directed at the source table is received at the network-based data warehouse. The query is processed using the pruning index. The processing of the query comprises pruning the set of micro-partitions of the source table to scan for data matching the query, the pruning of the plurality of micro-partitions comprising identifying, using the pruning index, a sub-set of micro-partitions to scan for the data matching the query.
    Type: Grant
    Filed: March 15, 2022
    Date of Patent: October 31, 2023
    Assignee: Snowflake Inc.
    Inventors: Thierry Cruanes, Benoit Dageville, Ismail Oukid, Stefan Richter
  • Patent number: 11797497
    Abstract: Techniques for creating, sharing, and using bundles (also referred to as packages) in a multi-tenant database are described herein. A bundle is a schema object with associated hidden schemas. A bundle can be created by a provider user and can be shared with a plurality of consumer users. The bundle can be used to enable code sharing and distribution without losing control while maintaining security protocols.
    Type: Grant
    Filed: December 20, 2022
    Date of Patent: October 24, 2023
    Assignee: Snowflake Inc.
    Inventors: Damien Carru, Benoit Dageville, Subramanian Muralidhar, Eric Robinson, Sahaj Saini, David Schultz