Patents Assigned to SNOWFLAKE INC.
  • Patent number: 11838293
    Abstract: Providing access to consumer information on a private data exchange is described. In an example, privileges are assigned to a share object, granting access to consumer information obtained from a query against data referenced by a data listing of a data exchange. The data exchange comprises one or more data listings provided by one or more data providers. In response to the share object being added to a list of consumed share objects of a data provider that provided the data listing, a database is generated that references the consumer information based on the share object. Access to the database is granted to the data provider that provided the data listing.
    Type: Grant
    Filed: February 7, 2023
    Date of Patent: December 5, 2023
    Assignee: Snowflake Inc.
    Inventors: Benoit Dageville, Matthew Glickman, Christian Kleinerman, Prasanna Krishnan, Justin Langseth
  • Patent number: 11822582
    Abstract: Embodiments of the present disclosure describe systems, methods, and computer program products for improving query processing of a database. An example method can include: storing table data for a table in a plurality of micro-partitions, each micro-partition comprising a portion of the table data for the table; for each micro-partition of the plurality of micro-partitions, storing metadata for the micro-partition in at least one of a plurality of expression properties; and selecting, by a processing device, a subset of the plurality of expression properties to be grouped into a grouping expression property based at least partially on the metadata of the subset of the plurality of the expression properties. The grouping expression property may include cumulative metadata associated with the metadata of the subset of the plurality of expression properties.
    Type: Grant
    Filed: August 26, 2022
    Date of Patent: November 21, 2023
    Assignee: Snowflake Inc.
    Inventors: Yi Fang, Varun Ganesh, Xinglian Liu, Ryan Michael Thomas Shelly, Jiaqi Yan, Yizhi Zhu
  • Patent number: 11822689
    Abstract: Embodiments of the present disclosure relate to sharing database roles using hidden roles. A database role may be generated within a database container having a plurality of data objects, wherein the database role exists exclusively within the database container. A set of grants to a particular subset of the plurality of data objects of the database container may be assigned to the database role and the database role may be granted to the share object. The share object is mounted within a consumer account to generate an imported database container within the consumer account, the imported database container including an imported copy of the database role. The imported copy of the database role may be granted to each of one or more account level roles of the consumer account to share the particular subset of the plurality of data objects without creating proxy objects in the consumer account that represent the particular subset of the plurality of data objects.
    Type: Grant
    Filed: February 13, 2023
    Date of Patent: November 21, 2023
    Assignee: Snowflake Inc.
    Inventors: Damien Carru, Pui Kei Johnston Chu, Benoit Dageville, Shreyas Narendra Desai, Subramanian Muralidhar, Bowen Zhang
  • Patent number: 11822554
    Abstract: First and second database accounts respectively share first and second source datasets with one another in a data clean room. The first database account stores a first approved-statements table that contains database statements that are permitted by the first database account to be executed against a combination of the shared first source dataset and the shared second source dataset. The second database account stores a second approved-statements table that contains database statements that are permitted by the second database account to be executed against the combination of the shared first source dataset and the shared second source dataset. One or more queries received from the first database account that are included in the second approved-statements table are processed, as are one or more queries received from the second database account that are included in the first approved-statements table.
    Type: Grant
    Filed: January 31, 2023
    Date of Patent: November 21, 2023
    Assignee: Snowflake Inc.
    Inventors: Rachel Frances Blum, Justin Langseth, Michael Earle Rainey
  • Patent number: 11824899
    Abstract: The disclosure relates generally to methods, systems, and apparatuses for managing network connections. An example method includes receiving one or more messages from a plurality of computing devices connected through a network, the one or more messages indicating actual connections among the plurality of computing devices. The example method further includes comparing, by one or more processors, the actual connections to a list of expected connections indicated by a connections master file that comprises connection information for the plurality of computing devices. The method further includes, responsive to detecting one or more differences between the list of expected connections and the actual connections, providing a notification indicating the one or more differences to a log file or a notification area of a user interface.
    Type: Grant
    Filed: October 20, 2022
    Date of Patent: November 21, 2023
    Assignee: Snowflake Inc.
    Inventors: James Calvin Armstrong, Jonathan Claybaugh
  • Patent number: 11822645
    Abstract: A method for tracing function execution includes instantiating, by at least one hardware processor of a computing node, a user code runtime configured with access to an operating system (OS) kernel of the computing node. The user code runtime is configured with a first set of filtering policies associated with a first set of allowed system calls. The OS kernel is configured with a second set of filtering policies associated with a second set of allowed system calls. A system call initiated by the user code runtime is detected to violate one or both of the first set of allowed system calls and the second set of allowed system calls. A trace of the system call is initiated based on the detecting.
    Type: Grant
    Filed: January 30, 2023
    Date of Patent: November 21, 2023
    Assignee: Snowflake Inc.
    Inventors: Brandon S. Baker, Derek Denny-Brown, Mark M. Manning, Andong Zhan
  • Patent number: 11816107
    Abstract: A pruning index is generated for a source table organized into a set of batch units. The source table comprises a column of semi-structured data. The pruning index comprises a set of filters that index distinct values in each column of the source table. Rather than reassembling an entire tree structure of the semi-structured data prior to indexing, the generating of the pruning index comprises traversing a reassembly hook object that represents a first portion of the semi-structured data that is subcolumnarized and traversing a residual object that represents a second portion of the semi-structured data that is not subcolumnarized. The reassembly hook object is traversed to identify values corresponding to the first portion of the semi-structured data and the residual object is traversed to identify values corresponding to the second portion. The pruning index is stored with an association with the source table.
    Type: Grant
    Filed: December 27, 2022
    Date of Patent: November 14, 2023
    Assignee: Snowflake Inc.
    Inventors: Mahmud Allahverdiyev, Selcuk Aya, Bowei Chen, Ismail Oukid
  • Patent number: 11816239
    Abstract: Techniques described herein can allow users to share cached results of an original query with other users while protecting sensitive information. The techniques described herein can check whether the other users have access to the underlying data queried before allowing those users to see the stored query results. That is, the system may perform privilege checks on the shared users before giving them access to the stored query results but without having to re-run the original query.
    Type: Grant
    Filed: October 21, 2022
    Date of Patent: November 14, 2023
    Assignee: Snowflake Inc.
    Inventors: Damien Carru, Thierry Cruanes, Subramanian Muralidhar, Nicola Dan Onose, Ryan Michael Thomas Shelly, Brian Smith, Jaeyun Noh
  • 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: 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: 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: 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: 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: 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