Patents by Inventor Max Heimel

Max Heimel 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).

  • Publication number: 20260037498
    Abstract: A data platform including an error handling framework for loading of input data. The data platform generates input data columns based on an input file and generates result data columns based on the input data columns and evaluating expressions. The data platform detects projection errors during the generating of the result data columns and stores result error indicators in error indicator arrays of the result data columns based on the projection errors. The data platform generates filtered result data columns based on the result data columns and the result error indicator arrays of the result data columns and stores the filtered result data columns in a database of the data platform.
    Type: Application
    Filed: October 7, 2025
    Publication date: February 5, 2026
    Inventors: Abdullah Al Mahmood, Ruta Dhaneshwar, Max Heimel, Xin Huang, Canzhou Qu, Purav B. Saraiya, Konstantinos Zoumpatianos
  • Publication number: 20250378076
    Abstract: A system includes at least one hardware processor and memory storing instructions. The processor generates a query plan for a received query. The query plan includes multiple hash-join-build and hash-join-probe operations. A primary decision node is configured in the query plan. The primary decision node receives build-side data information from the hash-join-build operations. For each hash-join-build operation, a memory amount for performing a broadcast is determined. A subset of hash-join-build operations is selected for broadcast join distribution by comparing the memory amount to a broadcast memory threshold. The system selects a broadcast join distribution for the subset and a hash-hash join distribution for the remaining hash-join-build operations. The query plan is executed using the broadcast join distribution for the selected subset and the hash-hash join distribution for the remaining operations. This approach optimizes memory usage and join distribution during query execution.
    Type: Application
    Filed: August 26, 2025
    Publication date: December 11, 2025
    Inventors: Matthias Carl Adams, Sebastian Bress, Bjoern Daase, Moritz Eyssen, Florian Andreas Funke, Max Heimel, Georg Ortwin Otto Kissig
  • Publication number: 20250371011
    Abstract: The subject technology receives a first query plan corresponding to a query, the first query plan comprising a set of predicates. The subject technology receives, during execution of a first portion of the first query plan, a set of rowsets. The subject technology determines a set of metrics for a first number of rows from a plurality of rows, the first number of rows corresponding to a first predicate order. The subject technology determines, using a heuristic, a second predicate order based at least in part on the set of metrics. The subject technology processes, during execution of the first portion of the first query plan using the second predicate order, a second set of rowsets, the second set of rowsets comprising a second plurality of rows that correspond to the first portion of the first query plan that has been executed based on the second predicate order.
    Type: Application
    Filed: May 29, 2024
    Publication date: December 4, 2025
    Inventors: Sebastian Breß, Max Heimel, Adrian Peter Neumann, Malek Souissi, Konstantinos Zoumpatianos
  • Patent number: 12461906
    Abstract: A data platform including an error handling framework for loading of input data. The data platform generates input data columns based on an input file and generates result data columns based on the input data columns and evaluating expressions. The data platform detects projection errors during the generating of the result data columns and stores result error indicators in error indicator arrays of the result data columns based on the projection errors. The data platform generates filtered result data columns based on the result data columns and the result error indicator arrays of the result data columns and stores the filtered result data columns in a database of the data platform.
    Type: Grant
    Filed: November 5, 2024
    Date of Patent: November 4, 2025
    Assignee: Snowflake Inc.
    Inventors: Abdullah Al Mahmood, Ruta Dhaneshwar, Max Heimel, Xin Huang, Canzhou Qu, Purav B. Saraiya, Konstantinos Zoumpatianos
  • Publication number: 20250298797
    Abstract: Provided herein are systems and methods for hash-join broadcast decision making. For example, a method includes generating a query plan for a received query. The query plan includes a plurality of join operations with a plurality of hash-join-build (HJB) operations and a plurality of hash-join-probe (HJP) operations. A decision node of a plurality of decision nodes of the query plan is configured as a primary decision node. Build-side data information associated with build-side data and received from the plurality of HJB operations is decoded by the primary decision node. A data distribution method is determined by the primary decision node for each HJB operation of the plurality of HJB operations based on the build-side data information. The query plan is executed based on distributing the build-side data to the plurality of HJP operations using the data distribution method for each HJB operation of the plurality of HJB operations.
    Type: Application
    Filed: March 19, 2024
    Publication date: September 25, 2025
    Inventors: Matthias Carl Adams, Sebastian Breß, Bjoern Daase, Moritz Eyssen, Florian Andreas Funke, Max Heimel, Georg Ortwin Otto Kissig
  • Patent number: 12423302
    Abstract: Provided herein are systems and methods for hash-join broadcast decision making. For example, a method includes generating a query plan for a received query. The query plan includes a plurality of join operations with a plurality of hash-join-build (HJB) operations and a plurality of hash-join-probe (HJP) operations. A decision node of a plurality of decision nodes of the query plan is configured as a primary decision node. Build-side data information associated with build-side data and received from the plurality of HJB operations is decoded by the primary decision node. A data distribution method is determined by the primary decision node for each HJB operation of the plurality of HJB operations based on the build-side data information. The query plan is executed based on distributing the build-side data to the plurality of HJP operations using the data distribution method for each HJB operation of the plurality of HJB operations.
    Type: Grant
    Filed: March 19, 2024
    Date of Patent: September 23, 2025
    Assignee: Snowflake Inc.
    Inventors: Matthias Carl Adams, Sebastian Breß, Bjoern Daase, Moritz Eyssen, Florian Andreas Funke, Max Heimel, Georg Ortwin Otto Kissig
  • Patent number: 12399896
    Abstract: A database system configured to optimize query execution through an opportunistic scheduling approach. The database system generates a query plan and identifies a contingent database operation within the query plan, the contingent database operation being dependent on a completion of at least one additional operation. The database system schedules the contingent operation using an opportunistic scheduler. The database system executes the query plan comprising processing the contingent database operation after the completion of the at least one additional operation.
    Type: Grant
    Filed: June 18, 2024
    Date of Patent: August 26, 2025
    Assignee: Snowflake Inc.
    Inventors: Sebastian Breß, Moritz Eyssen, Max Heimel, Max Jendruk
  • Patent number: 12235833
    Abstract: The subject technology receives, at a first execution node, a first transaction, the first transaction to be executed on linearizable storage. The subject technology determines whether the first execution node corresponds to a rank indicating a leader worker. The subject technology, in response to the first execution node corresponding to the rank indicating the leader worker, performs, by the first execution node, an initialization process for executing the first transaction. The subject technology broadcasts a first read timestamp associated with the first transaction to a set of execution nodes, the set of execution nodes being different than the first execution node. The subject technology executes, by the first execution node, at least a first operation from the first transaction.
    Type: Grant
    Filed: January 18, 2024
    Date of Patent: February 25, 2025
    Assignee: Snowflake Inc.
    Inventors: Thierry Cruanes, Moritz Eyssen, Max Heimel, Lishi Jiang, Alexander Miller
  • Publication number: 20250061107
    Abstract: A data platform including an error handling framework for loading of input data. The data platform generates input data columns based on an input file and generates result data columns based on the input data columns and evaluating expressions. The data platform detects projection errors during the generating of the result data columns and stores result error indicators in error indicator arrays of the result data columns based on the projection errors. The data platform generates filtered result data columns based on the result data columns and the result error indicator arrays of the result data columns and stores the filtered result data columns in a database of the data platform.
    Type: Application
    Filed: November 5, 2024
    Publication date: February 20, 2025
    Inventors: Abdullah Al Mahmood, Ruta Dhaneshwar, Max Heimel, Xin Huang, Canzhou Qu, Purav B. Saraiya, Konstantinos Zoumpatianos
  • Patent number: 12169486
    Abstract: A data platform including an error handling framework for loading of input data. The data platform generates input data columns based on an input file and generates result data columns based on the input data columns and evaluating expressions. The data platform detects projection errors during the generating of the result data columns and stores result error indicators in error indicator arrays of the result data columns based on the projection errors. The data platform generates filtered result data columns based on the result data columns and the result error indicator arrays of the result data columns and stores the filtered result data columns in a database of the data platform.
    Type: Grant
    Filed: May 23, 2023
    Date of Patent: December 17, 2024
    Assignee: Snowflake Inc.
    Inventors: Abdullah Al Mahmood, Ruta Dhaneshwar, Max Heimel, Xin Huang, Canzhou Qu, Purav B. Saraiya, Konstantinos Zoumpatianos
  • Patent number: 12153602
    Abstract: A global and local row count limit associated with a limit query are received by a stop operator of a first execution node among a set of execution nodes that are assigned to process the limit query. Local distributed row count data is generated based on a local row count corresponding to a number of rows output by the first execution node in processing the query. Based on determining the local row count satisfies the local limit, the first execution node buffers rows produced in processing the query. The local distributed row count data is updated based on remote distributed row count data received from a second execution node. A stopping condition is detected based on determining the global limit is satisfied based on updated local distributed row count data and query processing by the first execution node based on detecting the stopping condition.
    Type: Grant
    Filed: July 27, 2022
    Date of Patent: November 26, 2024
    Assignee: Snowflake Inc.
    Inventors: Sebastian Breß, Moritz Eyssen, Max Heimel
  • Publication number: 20240338366
    Abstract: A database system configured to optimize query execution through an opportunistic scheduling approach. The database system generates a query plan and identifies a contingent database operation within the query plan, the contingent database operation being dependent on a completion of at least one additional operation. The database system schedules the contingent operation using an opportunistic scheduler. The database system executes the query plan comprising processing the contingent database operation after the completion of the at least one additional operation.
    Type: Application
    Filed: June 18, 2024
    Publication date: October 10, 2024
    Inventors: Sebastian Breß, Moritz Eyssen, Max Heimel, Max Jendruk
  • Patent number: 12050603
    Abstract: Methods, systems, and computer programs are presented for scheduling and executing request plans using an opportunistic approach. An opportunistic scheduler generates a request plan for a request on a cloud data platform, the request plan comprising a plurality of operations and identifies a plurality of contingent operations from the plurality of operations of the request plan. The opportunistic scheduler schedules the plurality of contingent operations for execution and sets the scheduled plurality of contingent operations to execute at a specific position in the request plan. The opportunistic scheduler sets remaining operations for execution by any available thread as threads that are processing the request plan become available and processes the request plan according to the scheduled plurality of contingent operations.
    Type: Grant
    Filed: February 28, 2023
    Date of Patent: July 30, 2024
    Assignee: Snowflake Inc.
    Inventors: Sebastian Breß, Moritz Eyssen, Max Heimel, Max Jendruk
  • Publication number: 20240232173
    Abstract: The subject technology receives, at a first execution node, a first transaction, the first transaction to be executed on linearizable storage. The subject technology determines whether the first execution node corresponds to a rank indicating a leader worker. The subject technology, in response to the first execution node corresponding to the rank indicating the leader worker, performs, by the first execution node, an initialization process for executing the first transaction. The subject technology broadcasts a first read timestamp associated with the first transaction to a set of execution nodes, the set of execution nodes being different than the first execution node. The subject technology executes, by the first execution node, at least a first operation from the first transaction.
    Type: Application
    Filed: January 18, 2024
    Publication date: July 11, 2024
    Inventors: Thierry Cruanes, Moritz Eyssen, Max Heimel, Lishi Jiang, Alexander Miller
  • Publication number: 20240232167
    Abstract: A data platform including an error handling framework for loading of input data. The data platform generates input data columns based on an input file and generates result data columns based on the input data columns and evaluating expressions. The data platform detects projection errors during the generating of the result data columns and stores result error indicators in error indicator arrays of the result data columns based on the projection errors. The data platform generates filtered result data columns based on the result data columns and the result error indicator arrays of the result data columns and stores the filtered result data columns in a database of the data platform.
    Type: Application
    Filed: May 23, 2023
    Publication date: July 11, 2024
    Inventors: Abdullah Al Mahmood, Ruta Dhaneshwar, Max Heimel, Xin Huang, Canzhou Qu, Purav B. Saraiya, Konstantinos Zoumpatianos
  • Publication number: 20240168953
    Abstract: A top K query directed at a table is received. The table is organized into multiple storage units. The top K query comprises a first clause to sort a result set in order and a second clause that specifies a limit on a number of results provided in response to the query. A table scan operator identifies a first set of rows from the table based on a scan set determined for the table and provides the first set of rows to a top K operator. The top K operator determines a current boundary based on the first set of rows and provides the current boundary to the table scan operator. The table scan operator prunes the scan set based on the current boundary and identifies a second set of rows from the table based on the pruning.
    Type: Application
    Filed: December 8, 2023
    Publication date: May 23, 2024
    Inventors: Max Heimel, Ismail Oukid, Linnea Passing, Stefan Richter, Juliane K. Waack
  • Publication number: 20240134844
    Abstract: A data platform including an error handling framework for loading of input data. The data platform generates input data columns based on an input file and generates result data columns based on the input data columns and evaluating expressions. The data platform detects projection errors during the generating of the result data columns and stores result error indicators in error indicator arrays of the result data columns based on the projection errors. The data platform generates filtered result data columns based on the result data columns and the result error indicator arrays of the result data columns and stores the filtered result data columns in a database of the data platform.
    Type: Application
    Filed: May 22, 2023
    Publication date: April 25, 2024
    Inventors: Abdullah Al Mahmood, Ruta Dhaneshwar, Max Heimel, Xin Huang, Canzhou Qu, Purav B. Saraiya, Konstantinos Zoumpatianos
  • Patent number: 11921708
    Abstract: The subject technology receives, at a first execution node, a first transaction, the first transaction to be executed on linearizable storage. The subject technology determines whether the first execution node corresponds to a rank indicating a leader worker. The subject technology, in response to the first execution node corresponding to the rank indicating the leader worker, performs, by the first execution node, an initialization process for executing the first transaction. The subject technology broadcasts a first read timestamp associated with the first transaction to a set of execution nodes, the set of execution nodes being different than the first execution node. The subject technology executes, by the first execution node, at least a first operation from the first transaction.
    Type: Grant
    Filed: August 31, 2022
    Date of Patent: March 5, 2024
    Assignee: Snowflake Inc.
    Inventors: Thierry Cruanes, Moritz Eyssen, Max Heimel, Lishi Jiang, Alexander Miller
  • Publication number: 20240070143
    Abstract: The subject technology receives, at a first execution node, a first transaction, the first transaction to be executed on linearizable storage. The subject technology determines whether the first execution node corresponds to a rank indicating a leader worker. The subject technology, in response to the first execution node corresponding to the rank indicating the leader worker, performs, by the first execution node, an initialization process for executing the first transaction. The subject technology broadcasts a first read timestamp associated with the first transaction to a set of execution nodes, the set of execution nodes being different than the first execution node. The subject technology executes, by the first execution node, at least a first operation from the first transaction.
    Type: Application
    Filed: August 31, 2022
    Publication date: February 29, 2024
    Inventors: Thierry Cruanes, Moritz Eyssen, Max Heimel, Lishi Jiang, Alexander Miller
  • Patent number: 11907221
    Abstract: Sub-plans are executed in parallel using a plurality of execution nodes, which can be part of a data platform. In particular, various embodiments identify sub-plans (e.g., fragments or portions of one or more child operators) of a root operator in a query plan such that the identified sub-plans that are candidates for execution on a single execution node, determine a cost estimate for causing the candidate sub-plans to be executed in parallel using multiple execution nodes, and cause the candidate sub-plans to be executed in parallel based on the cost estimate.
    Type: Grant
    Filed: May 31, 2022
    Date of Patent: February 20, 2024
    Assignee: Snowflake Inc.
    Inventors: Sebastian Breß, Moritz Eyssen, Max Heimel