Patents by Inventor Andreas Funke

Andreas Funke 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: 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: 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
  • Publication number: 20240134851
    Abstract: Provided herein are systems and methods for handling build-side skew. For example, a method includes computing a plurality of hash values for a join operation. The join operation uses a corresponding plurality of row sets. The plurality of hash values are sampled to detect a frequent hash value. A build-side row set is partitioned using the frequent hash value to generate a partitioned build-side row set. The build-side row set is selected from the plurality of row sets. The partitioned build-side row set is distributed to a plurality of hash-join-build (HJB) instances executing at a corresponding plurality of servers.
    Type: Application
    Filed: October 18, 2022
    Publication date: April 25, 2024
    Inventors: Xinzhu Cai, Florian Andreas Funke
  • Patent number: 11914368
    Abstract: The present disclosure is directed to performing one or more validity checks on potential trajectories for a device, such as an autonomous vehicle, to navigate. In some examples, a potential trajectory may be validated based on whether it is consistent with a current trajectory the vehicle is navigating such that the potential and current trajectories are not too different, whether the vehicle can feasibly or kinematically navigate to the potential trajectory from a current state, whether the potential trajectory was punctual or received within a time period of a prior trajectory, and/or whether the potential trajectory passes a staleness check, such that it was created within a certain time period. In some examples, determining whether a potential trajectory is feasibly may include updating a set of feasibility limits based on one or more operational characteristics of statuses of subsystems of the vehicle.
    Type: Grant
    Filed: August 13, 2019
    Date of Patent: February 27, 2024
    Assignee: Zoox, Inc.
    Inventors: Joseph Funke, Sy Kelly Olson, Collin MacGregor, Andreas Christian Reschka
  • Patent number: 11868352
    Abstract: A method includes determining that an amount of available space in a first memory used by a set of relational queries is insufficient for a query, wherein the query comprises a join operation. A first partition of a set of partitions is identified, wherein the first partition possesses a smallest available probe memory size of the set of partitions and a build memory size greater than or equal to a threshold memory size, wherein the threshold memory size is a percentage of a maximum build memory size, and the largest partition of the set of partitions has the maximum build memory size. The first partition is copied from the first memory to a second memory.
    Type: Grant
    Filed: December 1, 2022
    Date of Patent: January 9, 2024
    Assignee: Snowflake Inc.
    Inventors: Florian Andreas Funke, Megha Thakkar
  • Publication number: 20230334050
    Abstract: A method includes determining that an amount of available space in a first memory used by a set of relational queries is insufficient for a query, wherein the query comprises a join operation. A first partition of a set of partitions is identified, wherein the first partition possesses a smallest available probe memory size of the set of partitions and a build memory size greater than or equal to a threshold memory size, wherein the threshold memory size is a percentage of a maximum build memory size, and the largest partition of the set of partitions has the maximum build memory size. The first partition is copied from the first memory to a second memory.
    Type: Application
    Filed: December 1, 2022
    Publication date: October 19, 2023
    Inventors: Florian Andreas Funke, Megha Thakkar
  • Publication number: 20230259530
    Abstract: A method implementing a fault-tolerant data warehouse using availability zones includes allocating a plurality of processing units to a data warehouse, the processing units located in different availability zones, an availability zone comprising one or more data centers. The method further includes routing a query to a processing unit within the data warehouse, the query having a common session identifier with a query previously provided to the processing unit, the processing unit determined to be caching a data segment associated with a cloud storage resource independent of the plurality of processing units. The method further includes, as a result of monitoring a number of queries running at an input degree of parallelism, determining that the processing capacity of the processing units has reached a threshold; and changing a total number of processing units using the input degree of parallelism and the number of queries.
    Type: Application
    Filed: April 26, 2023
    Publication date: August 17, 2023
    Inventors: Thierry Cruanes, Benoit Dageville, Florian Andreas Funke, Peter Povinec
  • Publication number: 20230205769
    Abstract: Joining data using a disjunctive operator is described. An example computer-implemented method can include generating, with a processing device, a query plan for a query, the query comprising a join operator expression for a disjunctive predicate, wherein the join operator expression includes a conjunctive predicate and a disjunctive operator. The method may further include generating a bloom filter for the disjunctive operator. Additionally, the method may include generating a result set as a result of evaluating the join operator expression using the disjunctive operator and bloom filter for the disjunctive predicate.
    Type: Application
    Filed: February 13, 2023
    Publication date: June 29, 2023
    Inventors: Thierry Cruanes, Florian Andreas Funke, Guangyan Hu, Jiaqi Yan
  • Patent number: 11675815
    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: January 27, 2023
    Date of Patent: June 13, 2023
    Assignee: Snowflake Inc.
    Inventors: Thierry Cruanes, Benoit Dageville, Florian Andreas Funke, Peter Povinec
  • Publication number: 20230169095
    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: Application
    Filed: January 27, 2023
    Publication date: June 1, 2023
    Inventors: Thierry Cruanes, Benoit Dageville, Florian Andreas Funke, Peter Povinec
  • Patent number: 11630850
    Abstract: A method for a multi-cluster warehouse includes allocating a plurality of compute clusters as part of a virtual warehouse. The compute clusters are used to access and perform queries against one or more databases in one or more cloud storage resources. The method includes providing queries for the virtual warehouse to each of the plurality of compute clusters. Each of the plurality of compute clusters of the virtual warehouse receives a plurality of queries so that the computing load is spread across the different clusters. The method also includes dynamically adding compute clusters to and removing compute clusters from the virtual warehouse as needed based on a workload of the plurality of compute clusters.
    Type: Grant
    Filed: December 9, 2020
    Date of Patent: April 18, 2023
    Assignee: Snowflake Inc.
    Inventors: Florian Andreas Funke, Peter Povinec, Thierry Cruanes, Benoit Dageville
  • Patent number: 11620313
    Abstract: A method for a multi-cluster warehouse includes allocating a plurality of compute clusters as part of a virtual warehouse. The compute clusters are used to access and perform queries against one or more databases in one or more cloud storage resources. The method includes providing queries for the virtual warehouse to each of the plurality of compute clusters. Each of the plurality of compute clusters of the virtual warehouse receives a plurality of queries so that the computing load is spread across the different clusters. The method also includes dynamically adding compute clusters to and removing compute clusters from the virtual warehouse as needed based on a workload of the plurality of compute clusters.
    Type: Grant
    Filed: December 10, 2020
    Date of Patent: April 4, 2023
    Assignee: Snowflake Inc.
    Inventors: Florian Andreas Funke, Peter Povinec, Thierry Cruanes, Benoit Dageville
  • Patent number: 11620287
    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. The subject technology analyzes the at least one aggregation to generate a modified query plan, the modified query plan including at least a top aggregation operator, an intermediate aggregation operator, and a bottom aggregation operator. The subject technology performs, with respect to the intermediate aggregation operator, at least one operation comprising: the subject technology receives an input intermediate data type; the subject technology performs an internalize operation on the input intermediate data type to generate an internal state; the subject technology performs an accumulate operation on the internal state to generate intermediate data; and the subject technology performs an externalize operation on the intermediate data to generate an output data type.
    Type: Grant
    Filed: July 27, 2020
    Date of Patent: April 4, 2023
    Assignee: Snowflake Inc.
    Inventors: Bowei Chen, Thierry Cruanes, Florian Andreas Funke, Allison Waingold Lee, Jiaqi Yan
  • Patent number: 11615117
    Abstract: A method for a multi-cluster warehouse includes allocating a plurality of compute clusters as part of a virtual warehouse. The compute clusters are used to access and perform queries against one or more databases in one or more cloud storage resources. The method includes providing queries for the virtual warehouse to each of the plurality of compute clusters. Each of the plurality of compute clusters of the virtual warehouse receives a plurality of queries so that the computing load is spread across the different clusters. The method also includes dynamically adding compute clusters to and removing compute clusters from the virtual warehouse as needed based on a workload of the plurality of compute clusters.
    Type: Grant
    Filed: April 28, 2017
    Date of Patent: March 28, 2023
    Assignee: Snowflake Inc.
    Inventors: Florian Andreas Funke, Peter Povinec, Thierry Cruanes, Benoit Dageville
  • 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
  • Patent number: 11615086
    Abstract: Joining data using a disjunctive operator is described. An example computer-implemented method can include generating a query plan for a query, wherein there is a join operator expression for each of a plurality of disjunctive predicates and each join operator expression includes at least a conjunctive predicate and a disjunctive operator. The method may also include generating a bloom filter for each of the plurality of disjunctive operators. The method may further include evaluating each of the plurality of join operator expressions using a corresponding one of the plurality of disjunctive operators and bloom filter for each of the plurality of disjunctive predicates to generate a result set.
    Type: Grant
    Filed: August 2, 2022
    Date of Patent: March 28, 2023
    Assignee: Snowflake Inc.
    Inventors: Thierry Cruanes, Florian Andreas Funke, Guangyan Hu, Jiaqi Yan
  • 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: 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: 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: 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