Patents by Inventor Thierry Cruanes

Thierry Cruanes has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 11615118
    Abstract: A method for a multi-cluster warehouse includes allocating processing units as part of a data warehouse. The processing units access data within one or more databases in cloud storage resources. The method also includes providing one or more queries to each processing unit within the data warehouse. In response to the queries, each processing unit performs database operations on a particular portion of a database table. The method also includes monitoring a workload of the processing units to determine that a processing capacity of the processing units has reached a threshold processing capacity. The method also includes dynamically adding additional processing units to and removing processing units from the data warehouse as needed based on a workload of the processing units.
    Type: Grant
    Filed: April 29, 2020
    Date of Patent: March 28, 2023
    Assignee: Snowflake Inc.
    Inventors: Thierry Cruanes, Benoit Dageville, Florian Andreas Funke, Peter Povinec
  • Publication number: 20230084069
    Abstract: A query directed at a source table organized into a set of batch units is received. The query comprises a regular expression search pattern. The regular expression search pattern is converted to a pruning index predicate comprising a set of substring literals extracted from the regular expression search pattern. A set of N-grams is generated based on the set of substring literals extracted from the regular expression search pattern. A pruning index associated with the source table is accessed. The pruning index indexes distinct N-grams in each column of the source table. A subset of batch units to scan for data matching the query are identified based on the pruning index and the set of N-grams. The query is processed by scanning the subset of batch units.
    Type: Application
    Filed: September 23, 2022
    Publication date: March 16, 2023
    Inventors: Thierry Cruanes, Ismail Oukid, Stefan Richter, Alejandro Salinger
  • Publication number: 20230084682
    Abstract: The logging techniques described herein can enable using logging tools without having to use different methods for sandbox implementations and push out the log data to storage without problems. The log data is treated as sensitive data and is protected according to the defined security policies. Further, the results may be compressed and encrypted.
    Type: Application
    Filed: September 29, 2022
    Publication date: March 16, 2023
    Inventors: Thierry Cruanes, Ganeshan Ramachandran Iyer, Isaac Kunen
  • Publication number: 20230079405
    Abstract: Embodiments of the present disclosure may provide dynamic and fair assignment techniques for allocating resources on a demand basis. Assignment control may be separated into at least two components: a local component and a global component. Each component may have an active dialog with each other; the dialog may include two aspects: 1) a demand for computing resources, and 2) a total allowed number of computing resources. The global component may allocate resources from a pool of resources to different local components, and the local components in turn may assign their allocated resources to local competing requests. The allocation may also be throttled or limited at various levels.
    Type: Application
    Filed: October 28, 2022
    Publication date: March 16, 2023
    Inventors: Thierry Cruanes, Igor Demura, Varun Ganesh, Prasanna Rajaperumal, Libo Wang, Jiaqi Yan
  • Publication number: 20230071465
    Abstract: Resource provisioning systems and methods are described. In an embodiment, a system includes a plurality of shared storage devices collectively storing database data, an execution platform, and a compute service manager. The compute service manager is configured to determine a task to be executed in response to a trigger event and determine a query plan for executing the task, wherein the query plan comprises a plurality of discrete subtasks. The compute service manager is further configured to assign the plurality of discrete subtasks to one or more nodes of a plurality of nodes of the execution platform, determine whether execution of the task is complete, and in response to determining the execution of the task is complete, store a record in the plurality of shared storage devices indicating the task was completed.
    Type: Application
    Filed: October 27, 2022
    Publication date: March 9, 2023
    Inventors: Jeffrey Rosen, Abdul Munir, Jiaqi Yan, William Waddington, Prasanna Rajaperumal, Thierry Cruanes
  • Patent number: 11599537
    Abstract: Joining data using a disjunctive operator is described. An example computer-implemented method can include receiving a query that includes a first disjunctive predicate involving a first table and a second table. The method may also include determining a first set of rows from the first table and generating a filter from the first set of rows. The method may also further include applying the filter to the second table to generate a second set of rows. Additionally, the method may also include joining the first set of rows and the second set of rows using a first disjunctive operator of the first disjunctive predicate to generate a first results set.
    Type: Grant
    Filed: November 25, 2020
    Date of Patent: March 7, 2023
    Assignee: Snowflake Inc.
    Inventors: Thierry Cruanes, Florian Andreas Funke, Guangyan Hu, Jiaqi Yan
  • Patent number: 11599556
    Abstract: A method and apparatus managing a set of processors for a set of queries is described. In an exemplary embodiment, a device receives a set of queries for a data warehouse, the set of queries including one or more queries to be processed by the data warehouse. The device further provisions a set of processors from a first plurality of processors, where the set of processors to process the set of queries, and a set of storage resources to store data for the set of queries. In addition, the device monitors a utilization of the set of processors as the set of processors processes the set of queries. The device additionally updates a number of the processors in the set of processors provisioned based on the utilization/Furthermore, the device processes the set of queries using the updated set of processors.
    Type: Grant
    Filed: February 4, 2022
    Date of Patent: March 7, 2023
    Assignee: Snowflake Inc.
    Inventors: Benoit Dageville, Thierry Cruanes, Marcin Zukowski
  • Publication number: 20230064151
    Abstract: A source table organized into a set of batch units is accessed. The source table comprises a column of data corresponding to a semi-structured data type. One or more indexing transformations for an object in the column are generated. The generating of the one or more indexing transformation includes converting the object to one or more stored data types. A pruning index is generated for the source table based in part on the one or more indexing transformations. The pruning index comprises a set of filters that index distinct values in each column of the source table, and each filter corresponds to a batch unit in the set of batch units. The pruning index is stored in a database with an association with the source table.
    Type: Application
    Filed: October 18, 2022
    Publication date: March 2, 2023
    Inventors: Mahmud Allahverdiyev, Thierry Cruanes, Ismail Oukid, Stefan Richter
  • Patent number: 11593509
    Abstract: Embodiments of the present disclosure enable users of a data sharing system to build native applications that can be shared with other users of the data sharing system. The native applications can be published and discovered in the data sharing system like any other data listing, and consumers can install them in their local data sharing system account to serve their data processing needs. A provider may define an installation script for installing an application and create a share object to which the installation script may be attached. In response to an imported database being created in a consumer account based on the share object, a native application framework may automatically execute the installation script in the consumer account and may create a set of database roles to manage execution of the application in the consumer account.
    Type: Grant
    Filed: August 10, 2022
    Date of Patent: February 28, 2023
    Assignee: Snowflake Inc.
    Inventors: Damien Carru, Jeremy Yujui Chen, Pui Kei Johnston Chu, Thierry Cruanes, Istvan Cseri, Benoit Dageville, Unmesh Jagtap, Subramanian Muralidhar
  • Patent number: 11593403
    Abstract: A method for a multi-cluster warehouse includes allocating processing units as part of a data warehouse. The processing units access data within one or more databases in cloud storage resources. The method also includes providing one or more queries to each processing unit within the data warehouse. In response to the queries, each processing unit performs database operations on a particular portion of a database table. The method also includes monitoring a workload of the processing units to determine that a processing capacity of the processing units has reached a threshold processing capacity. The method also includes dynamically adding additional processing units to and removing processing units from the data warehouse as needed based on a workload of the processing units.
    Type: Grant
    Filed: March 18, 2020
    Date of Patent: February 28, 2023
    Assignee: Snowflake Inc.
    Inventors: Thierry Cruanes, Benoit Dageville, Florian Andreas Funke, Peter Povinec
  • Patent number: 11593354
    Abstract: A database platform authenticates a system user for access via an application to a database that is associated with a customer account of the database platform. The system user is a first object in a first account-level namespace of the customer account, and the first account-level namespace is distinct from a default account-level namespace of the customer account. The database platform sends, as the system user, a query to the database via the application. The database platform receives, as the system user, results of the query from the database, and stores, as the system user, the results of the query in a first-namespace stage, which is a second object in the first account-level namespace.
    Type: Grant
    Filed: July 31, 2020
    Date of Patent: February 28, 2023
    Assignee: Snowflake Inc.
    Inventors: Damien Carru, Thierry Cruanes, Istvan Cseri, Benoit Dageville, Zheng Mi, Subramanian Muralidhar
  • Patent number: 11593404
    Abstract: A method for a multi-cluster warehouse includes allocating processing units as part of a data warehouse. The processing units access data within one or more databases in cloud storage resources. The method also includes providing one or more queries to each processing unit within the data warehouse. In response to the queries, each processing unit performs database operations on a particular portion of a database table. The method also includes monitoring a workload of the processing units to determine that a processing capacity of the processing units has reached a threshold processing capacity. The method also includes dynamically adding additional processing units to and removing processing units from the data warehouse as needed based on a workload of the processing units.
    Type: Grant
    Filed: April 30, 2020
    Date of Patent: February 28, 2023
    Assignee: Snowflake Inc.
    Inventors: Thierry Cruanes, Benoit Dageville, Florian Andreas Funke, Peter Povinec
  • Patent number: 11586621
    Abstract: Multiple execution threads process a query directed to a database organized into a plurality of files. In processing the query, a first thread downloads a file from the plurality of files. The file comprises a set of blocks. A parallel scan of the set of blocks is performed by at least the first thread and a second thread to identify data that matches the query. A response to the query is provided based in part on the parallel scan of the set of blocks.
    Type: Grant
    Filed: January 27, 2022
    Date of Patent: February 21, 2023
    Assignee: Snowflake Inc.
    Inventors: Selcuk Aya, Thierry Cruanes, Florian Andreas Funke
  • Publication number: 20230046201
    Abstract: A method for a first set of processors and a second set of processors comprises, the first set of processors processing a set of queries, as a result of a change in utilization of the first set of processors, processing the set of queries using the second set of processors. The change in processors is independent of a change in storage resources, the storage resources shared by the first set of processors and the second set of processors.
    Type: Application
    Filed: October 28, 2022
    Publication date: February 16, 2023
    Inventors: Thierry Cruanes, Benoit Dageville, Marcin Zukowski
  • Patent number: 11580070
    Abstract: A query directed to database data stored across a set of files is received. The query includes predicates and each file from the set of files is associated with metadata stored in a metadata store that is separate from a storage platform that stores the set of files. One or more files are removed from the set of files whose metadata does not satisfy a predicate of the plurality of predicates to generate a pruned set of files. One or more predicates are removed that are satisfied by the metadata of the pruned set of files to generate a modified query.
    Type: Grant
    Filed: February 26, 2021
    Date of Patent: February 14, 2023
    Assignee: Snowflake Inc.
    Inventors: Benoit Dageville, Thierry Cruanes, Marcin Zukowski, Allison Waingold Lee, Philipp Thomas Unterbrunner
  • Patent number: 11580103
    Abstract: Joining data using a disjunctive operator using a lookup table is described. An example computer-implemented method can include receiving a query with a set of conjunctive predicates and a set of disjunctive predicates. The method may also include generating a lookup table for each predicate in the sets of conjunctive predicates and disjunctive predicates. The method, for each row in a probe-side table, may also further include looking up a value associated with that row in each of the lookup tables and adding the row to a results set when there is a match. Additionally, the method may also include returning the results set.
    Type: Grant
    Filed: April 20, 2021
    Date of Patent: February 14, 2023
    Assignee: Snowflake Inc.
    Inventors: Thierry Cruanes, Florian Andreas Funke, Guangyan Hu, Jiaqi Yan
  • Publication number: 20230042949
    Abstract: A system and method for managing data storage and data access with querying data in a distributed system without buffering the results of intermediate operations in persistent storage. The method includes pushing, by a first operator, as a result of executing a query plan, an intermediate result to a plurality of secondary operators. Processing of the intermediate result by the plurality of secondary operators is delayed to coordinate generation of a plurality of second results based on beginning a final consumption operation of the plurality of second results.
    Type: Application
    Filed: October 24, 2022
    Publication date: February 9, 2023
    Inventors: Thierry Cruanes, Benoit Dageville, Allison Waingold Lee
  • Patent number: 11574072
    Abstract: A shared database platform implements dynamic masking on data shared between users where specific data is masked, transformed, or otherwise modified based on preconfigured functions that are associated with user roles. The shared database platform can implement the masking at runtime dynamically in response to users requesting access to a database object that is associated with one or more masking policies.
    Type: Grant
    Filed: May 28, 2021
    Date of Patent: February 7, 2023
    Assignee: Snowflake Inc.
    Inventors: Artin Avanes, Khalid Zaman Bijon, Damien Carru, Thierry Cruanes, Vikas Jain, Zheng Mi, Subramanian Muralidhar
  • Patent number: 11568079
    Abstract: Systems, methods, and devices for generating a secure join of database data are disclosed. A method creates a secure view of datapoints of a consumer account and processes, using a secure user defined function (UDF), the datapoints of the consumer account and datapoints of a provider account to generate a secure join key. The secure UDF returns a count of matching data points between the consumer account and the provider account, and the method provides the count of matching data points to the consumer account.
    Type: Grant
    Filed: August 31, 2022
    Date of Patent: January 31, 2023
    Assignee: Snowflake Inc.
    Inventors: Justin Langseth, Matthew J. Glickman, Christian Kleinerman, Robert Muglia, Daniel Freundel, Thierry Cruanes, Allison Waingold Lee
  • Publication number: 20230028008
    Abstract: Embodiments of the present disclosure may provide a dynamic query execution model with fault tolerance and failure recovery techniques. Embodiments of the present disclosure may utilize checkpoints to map processed output files to their corresponding input files. Therefore, if an error occurs in processing one or more files, the system may only need to reschedule processing of selected file(s).
    Type: Application
    Filed: September 7, 2022
    Publication date: January 26, 2023
    Inventors: Thierry Cruanes, Igor Demura, Varun Ganesh, Prasanna Rajaperumal, Libo Wang, Jiaqi Yan