Patents Assigned to SNOWFLAKE INC.
  • Patent number: 11977560
    Abstract: Example resource management systems and methods are described. In one implementation, a resource manager is to be coupled to one or more virtual data warehouse instances that each comprise a plurality of computing resources. A resource manager receives a query directed to database data. The resource manager determines a plurality of tasks associated with the query. The resource manager distributes the plurality of tasks among the one or more virtual data warehouse instances to cause each computing resource of the plurality of computing resources of the one or more virtual data warehouse instances to process a respective task of the plurality of tasks. The resource manager receives results obtained from the processing of the plurality of tasks. The resource manager uses the results to respond to the query.
    Type: Grant
    Filed: December 28, 2021
    Date of Patent: May 7, 2024
    Assignee: Snowflake Inc.
    Inventors: Benoit Dageville, Thierry Cruanes, Marcin Zukowski
  • Patent number: 11971856
    Abstract: Data in a micro-partition of a table is stored in a compressed form. In response to a database query on the table comprising a filter, the portion of the data on which the filter operates is decompressed, without decompressing other portions of the data. Using the filter on the decompressed portion of the data, the portions of the data that are responsive to the filter are determined and decompressed. The responsive data is returned in response to the database query. When a query is run on a table that is compressed using dictionary compression, the uncompressed data may be returned along with the dictionary look-up values. The recipient of the data may use the dictionary look-up values for memoization, reducing the amount of computation required to process the returned data.
    Type: Grant
    Filed: January 31, 2020
    Date of Patent: April 30, 2024
    Assignee: Snowflake Inc.
    Inventors: Selcuk Aya, Bowei Chen, Florian Andreas Funke
  • Patent number: 11971783
    Abstract: A method includes decoding, by at least one hardware processor, a notification of a changed database code of a database. A query is executed responsive to the notification. The query indicates a data processing command and a data object in the database. A regression in the changed database code is detected based on multiple regression testing operations applied to the data processing command and the data object. Analysis of the regression is performed to detect a rollout parameter of a plurality of rollout parameters as a root cause of the regression. The plurality of rollout parameters are associated with the changed database code. A determination is made on whether to perform a mitigation action for the regression based on the rollout parameter.
    Type: Grant
    Filed: June 23, 2023
    Date of Patent: April 30, 2024
    Assignee: Snowflake Inc.
    Inventors: Vlad Bunescu, Yan Huang, Jaeha Lee, Shiyu Qu, Jiaqi Yan
  • Patent number: 11973763
    Abstract: Embodiments of the present disclosure provide a region-specific events account that is used as a central place to store the events shared by consumers of shared applications in that region. Use of such an account helps reduce the operational burden of a provider of the applications as they do not need to determine which accounts have shared events for each different consumer. The provider only needs to login to the events account which is in the same region as the consumer and can query all shared events from different applications that are being used in that region. Also, since the provider can designate an events account in each region, the shared events could be directly ingested into the events account without traveling to a different region.
    Type: Grant
    Filed: March 28, 2023
    Date of Patent: April 30, 2024
    Assignee: SNOWFLAKE INC.
    Inventors: Damien Carru, Pui Kei Johnston Chu, Unmesh Jagtap, Xiaodi Ke, Subramanian Muralidhar, James Pan
  • Patent number: 11971888
    Abstract: The subject technology receives a query plan, the query plan comprising a set of query operations, the set of query operations including at least one aggregation and at least one join operation. The subject technology analyzes the query plan to identify an aggregation that is redundant. The subject technology removes the aggregation based at least in part on the analyzing. The subject technology determines at least one aggregation property corresponding to at least one query operation of the query plan. The subject technology inserts at least one adaptive aggregation operator in the query plan based at least in part on the at least one aggregation property, the at least one aggregation property comprising a set of aggregation properties. The subject technology provides a modified query plan based at least in part on the inserted at least one adaptive aggregation operator in the query plan.
    Type: Grant
    Filed: February 19, 2021
    Date of Patent: April 30, 2024
    Assignee: Snowflake Inc.
    Inventors: Bowei Chen, Thierry Cruanes, Florian Andreas Funke, Allison Waingold Lee, Jiaqi Yan
  • Patent number: 11973748
    Abstract: Techniques for sharing query results in a multi-tenant database system are described. The query results can be shared between users of the same account or organization in the multi-tenant network-based database system using security tokens. A first user executes a query, and the results are stored in the network-based database system. The first user can invoke a function to create a security token to provide access to the stored query results to other users in the same account. The first user can share the security token with the other users, who can directly access the stored results in the network-based database system instead of having to download local copies of the query results.
    Type: Grant
    Filed: October 30, 2023
    Date of Patent: April 30, 2024
    Assignee: Snowflake Inc.
    Inventors: Damien Carru, Thierry Cruanes, Jiaqi Yan
  • Patent number: 11971876
    Abstract: A database platform receives an object identifier from a client in association with a database session. The client is associated with a customer account of the database platform, and the database session is associated with the client. The customer account includes multiple disjoint account-level namespaces, each of which represents a distinct context for resolution of object identifiers, such that matching object identifiers in different account-level namespaces in the customer account do not collide with respect to object-identifier resolution. The database platform determines that the object identifier does not specify an account-level namespace, and responsively resolves the object identifier with reference to a current account-level namespace of the database session by identifying an object corresponding to the object identifier in the customer account.
    Type: Grant
    Filed: January 13, 2022
    Date of Patent: April 30, 2024
    Assignee: Snowflake Inc.
    Inventors: Damien Carru, Thierry Cruanes, Istvan Cseri, Benoit Dageville, Zheng Mi, Subramanian Muralidhar
  • Patent number: 11971799
    Abstract: Automated query retry includes selecting a first node of a plurality of nodes of an execution platform in response to a query. The first node is configured with a first version of a database platform. A first execution of the query is performed using the first version of the database platform at the first node. The method further includes detecting the first execution results in a failed execution. A second execution of the query is scheduled. The second execution uses at least one of the first version of the database platform or a second version of the database platform configured at a second node of the plurality of nodes. The second version is released after the first version. A cause of the failed execution of the query at the first node is determined based at least in part on a result of the second execution of the query.
    Type: Grant
    Filed: January 27, 2023
    Date of Patent: April 30, 2024
    Assignee: Snowflake Inc.
    Inventors: Benoit Dageville, Johan Harjono, Simon Holm Jensen, Kunal Prafulla Nabar, Steven James Pelley
  • Patent number: 11966416
    Abstract: Techniques for triggering pipeline execution based on data change (transaction commit) are described. The pipelines can be used for data ingestion or other specified tasks. These tasks can be operational across account, organization, cloud region, and cloud provider boundaries. The tasks can be triggered by commit post-processing. Gates in the tasks can be set up to reference change data capture information. If the gate is satisfied, tasks can be executed to set up data pipelines.
    Type: Grant
    Filed: January 31, 2023
    Date of Patent: April 23, 2024
    Assignee: Snowflake Inc.
    Inventors: Tyler Arthur Akidau, Istvan Cseri, Tyler Jones, Dinesh Chandrakant Kulkarni, Daniel Mills, Daniel E. Sotolongo, Di Fei Zhang
  • Patent number: 11966368
    Abstract: The subject technology selects a particular zone among multiple zones based on a target skew to meet a global balancing of cluster instances. The subject technology deploys a particular type of cluster instance to the particular zone. The subject technology, for each zone from the multiple zones, determines a respective number of cluster instances. The subject technology identifies a second particular type of cluster instance to add based on a total number of the second particular type of cluster instance in the multiple zones and a second total number of the particular type of cluster instance in the multiple zones. The subject technology adds the second particular type of cluster instance to a second particular zone to meet the global balancing of cluster instances in the multiple zones.
    Type: Grant
    Filed: May 31, 2023
    Date of Patent: April 23, 2024
    Assignee: Snowflake Inc.
    Inventors: Johan Harjono, Daniel Geoffrey Karp, Rares Radut, Samir Rehmtulla, Arthur Kelvin Shi, Thanakul Wattanawong
  • Patent number: 11966417
    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: May 26, 2023
    Date of Patent: April 23, 2024
    Assignee: SNOWFLAKE INC.
    Inventors: Thierry Cruanes, Benoit Dageville, Marcin Zukowski
  • Patent number: 11968258
    Abstract: Provided herein are systems and methods to provide a way to share metrics regarding shared data access and accesses associated with data providers for different data listings of the data exchange. For example, the method may comprise detecting one or more client interactions with a set of data listings of a data exchange, the set of data listings associated with one or data providers. The method may further comprise collecting metrics corresponding to the one or more client interactions. In addition, the method may share metrics relevant to the one or more data providers with the one or more data providers.
    Type: Grant
    Filed: October 27, 2023
    Date of Patent: April 23, 2024
    Assignee: SNOWFLAKE INC.
    Inventors: Edmond T. Chan, Pui Kei Johnston Chu, Chao Ren, Stephanie Stillman, Dangfu Wang
  • Patent number: 11960505
    Abstract: A database export system exports data using a plurality of nodes that process the data to generate structured result files that are partitioned by an export parameter in an export request. The database export system distributes the data and merges the files to avoid small file creation and increase processing speed via parallelism. The database export system generates the result files of a specified maximum size in a final format, where the files are processed merged in a temporary file format. The parallel processing is optimized and constrained per the amount of processing nodes, available memory, requested final file sizes, and operation based ordering to complete data exports in a scalable multi-stage approach.
    Type: Grant
    Filed: May 19, 2022
    Date of Patent: April 16, 2024
    Assignee: Snowflake Inc.
    Inventors: Vasile Paraschiv, Saurin Shah, Marianne Shaw, Nileema Shingte
  • Patent number: 11954224
    Abstract: Embodiments of the present disclosure describe systems, methods, and computer program products for redacting sensitive data within a database. An example method can include receiving a masking policy for a column of a database, the masking policy identifying a category of sensitive data, examining a column of a database to identify a category of sensitive data in a first location of the column, and, in response to a data query accessing the column, the first location of the column exceeding a threshold probability of comprising sensitive data, executing a redaction operation to redact the category of sensitive data from the first location of the column to generate redacted data for a response to the data query.
    Type: Grant
    Filed: August 29, 2023
    Date of Patent: April 9, 2024
    Assignee: SNOWFLAKE INC.
    Inventors: Yimeng Li, Carl Yates Perry, Raghavendran Ramakrishnan, Frantisek Rolinek, Yunqiao Zhang
  • Patent number: 11954229
    Abstract: A method for identity resolution and data enrichment is performed by at least one hardware processor and includes detecting at an account of a data provider, a shared data object that is shared by an account of a data consumer with the account of the data provider. An application executing at the account of the data consumer is enabled for an identity resolution process based on the detecting of the shared data object. A request for source data received from the application is detected at the account of the data provider. The source data is managed by the account of the data provider. The source data is communicated to the application executing at the account of the data consumer, based on a verification that the application is enabled for the identity resolution process. The identity resolution process is performed at the account of the data consumer using the source data.
    Type: Grant
    Filed: January 27, 2023
    Date of Patent: April 9, 2024
    Assignee: Snowflake Inc.
    Inventors: Marcus A. Henderson, Justin Langseth
  • Patent number: 11948025
    Abstract: Methods, systems, and computer programs are presented for providing stored procedures stored within a database to invoke specified functionality in a cloud data platform. A response to a database query is received at a compute node of a cloud data platform. A java database connectivity (JDBC) instance executing within a sandbox process converts the response into a remote procedure call. The remote procedure call is provided to a stored procedure executing within the sandbox process as the response to the database query.
    Type: Grant
    Filed: May 31, 2023
    Date of Patent: April 2, 2024
    Assignee: Snowflake Inc.
    Inventors: Isaac Kunen, Srinath Shankar, Zihan Li, Khushboo Bhatia, Edward Ma
  • Patent number: 11947533
    Abstract: A method includes parsing, by at least one hardware processor, a query to determine query comments and query code associated with the query. A query execution plan is generated based on the query code. Query execution using the query code is performed at a first computing node associated with a query processing pipeline. A detection is made that the query comments are indicative of a software bug in the query code based on analysis of the query comments. The detection is performed at a second computing node associated with a query analysis pipeline. A notification of the software bug and a result of the query execution is output.
    Type: Grant
    Filed: May 16, 2023
    Date of Patent: April 2, 2024
    Assignee: Snowflake Inc.
    Inventor: Orestis Kostakis
  • Patent number: 11943203
    Abstract: A method includes selecting, by at least one hardware processor of a first database deployment, data for transmission to a second database deployment. The data includes a plurality of files forming a data stream. At least a first file of the plurality of files is encoded using a first encryption key which is stored in at least a second file of the plurality of files. The at least a first file is further encoded to include a second encryption key associated with at least a third file of the plurality of files. A set of nodes is identified in a virtual private network connected to the first and second database deployments. The data stream is transmitted from the first database deployment to the second database deployment via the set of nodes of the virtual private network that is connected to the first database deployment and the second database deployment.
    Type: Grant
    Filed: November 15, 2022
    Date of Patent: March 26, 2024
    Assignee: Snowflake Inc.
    Inventors: Robert Bengt Benedikt Gernhardt, Mikhail Kazhamiaka, Eric Robinson, Rodney Weaver
  • Patent number: 11940995
    Abstract: The subject technology determines a derived encryption key using a cryptographic hash function applied to a hybrid tenant master encryption key and a local random generated identifier. The subject technology encrypts a record value and a key value associated with a transaction using the derived encryption key. The subject technology determines a non-leaf node using a tenant prefix of a tenant. The subject technology inserts the encrypted record value at a leaf node below a non-leaf node of a tree structure associated with the tenant. The subject technology receives a second transaction for performing a read operation on a distributed database. The subject technology retrieves a set of encryption keys based at least in part on an account and the tenant. The subject technology decrypts, using the set of encryption keys, data from the distributed database. The subject technology provides the decrypted data as a result of the second transaction.
    Type: Grant
    Filed: July 31, 2023
    Date of Patent: March 26, 2024
    Assignee: Snowflake Inc.
    Inventors: Stephen R. Atherton, Ata E. Husain Bohra, Yi Wu
  • Patent number: 11934927
    Abstract: Systems and methods for managing input and output error of a machine learning (ML) model in a database system are presented herein. A set of test queries is executed on a first version of a database system to generate first test data, wherein the first version of the system comprises a ML model to generate an output corresponding to a function of the database system. An error model is trained based on the first test data and second test data generated based on a previous version of the system. The error model determines an error associated with the ML model between the first and previous versions of the system. The first version of the system is deployed with the error model, which corrects an output or an input of the ML model until sufficient data has been produced by the error model to retrain the ML model.
    Type: Grant
    Filed: December 22, 2022
    Date of Patent: March 19, 2024
    Assignee: Snowflake Inc.
    Inventors: Orestis Kostakis, Qiming Jiang, Boxin Jiang