-
公开(公告)号:US20240232173A1
公开(公告)日:2024-07-11
申请号:US18415826
申请日:2024-01-18
Applicant: Snowflake Inc.
Inventor: Thierry Cruanes , Moritz Eyssen , Max Heimel , Lishi Jiang , Alexander Miller
IPC: G06F16/23 , G06F16/2455
CPC classification number: G06F16/2379 , G06F16/24568
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.
-
公开(公告)号:US20230205770A1
公开(公告)日:2023-06-29
申请号:US18176010
申请日:2023-02-28
Applicant: Snowflake Inc.
Inventor: Sebastian Breß , Moritz Eyssen , Max Heimel , Max Jendruk
IPC: G06F16/2453 , G06F9/48 , G06F16/27
CPC classification number: G06F16/24542 , G06F9/4881 , G06F16/27 , G06F16/24532
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.
-
公开(公告)号:US11023491B1
公开(公告)日:2021-06-01
申请号:US17077403
申请日:2020-10-22
Applicant: Snowflake Inc.
Inventor: Sebastian Breß , Moritz Eyssen , Max Heimel
IPC: G06F16/00 , G06F16/27 , G06F16/2455
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.
-
公开(公告)号:US20240338366A1
公开(公告)日:2024-10-10
申请号:US18746586
申请日:2024-06-18
Applicant: Snowflake Inc.
Inventor: Sebastian Breß , Moritz Eyssen , Max Heimel , Max Jendruk
IPC: G06F16/2453 , G06F9/48 , G06F16/27
CPC classification number: G06F16/24542 , G06F9/4881 , G06F16/24532 , G06F16/27
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.
-
公开(公告)号:US12050603B2
公开(公告)日:2024-07-30
申请号:US18176010
申请日:2023-02-28
Applicant: Snowflake Inc.
Inventor: Sebastian Breß , Moritz Eyssen , Max Heimel , Max Jendruk
IPC: G06F16/2453 , G06F9/48 , G06F16/27
CPC classification number: G06F16/24542 , G06F9/4881 , G06F16/24532 , G06F16/27
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.
-
公开(公告)号:US11921708B1
公开(公告)日:2024-03-05
申请号:US17823801
申请日:2022-08-31
Applicant: Snowflake Inc.
Inventor: Thierry Cruanes , Moritz Eyssen , Max Heimel , Lishi Jiang , Alexander Miller
IPC: G06F16/23 , G06F16/2455
CPC classification number: G06F16/2379 , G06F16/24568
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.
-
公开(公告)号:US20240070143A1
公开(公告)日:2024-02-29
申请号:US17823801
申请日:2022-08-31
Applicant: Snowflake Inc.
Inventor: Thierry Cruanes , Moritz Eyssen , Max Heimel , Lishi Jiang , Alexander Miller
IPC: G06F16/23 , G06F16/2455
CPC classification number: G06F16/2379 , G06F16/24568
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.
-
公开(公告)号:US11907221B2
公开(公告)日:2024-02-20
申请号:US17804770
申请日:2022-05-31
Applicant: Snowflake Inc.
Inventor: Sebastian Breß , Moritz Eyssen , Max Heimel
IPC: G06F16/245 , G06F16/2453
CPC classification number: G06F16/24545 , G06F16/24532 , G06F16/24537
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.
-
公开(公告)号:US11615092B1
公开(公告)日:2023-03-28
申请号:US17515232
申请日:2021-10-29
Applicant: Snowflake Inc.
Inventor: Sebastian Breß , Moritz Eyssen , Max Heimel , Max Jendruk
IPC: G06F16/2453 , G06F16/27 , G06F9/48
Abstract: A database scheduler system can be implemented on a distributed database system. The system schedules operations in a lightweight approach that reduces idling and increases parallel processing of database operations for a query on data of the database. The system performs restarts of individual operators or fragments of a query without restarting the entire query.
-
公开(公告)号:US10860609B1
公开(公告)日:2020-12-08
申请号:US16855372
申请日:2020-04-22
Applicant: Snowflake Inc.
Inventor: Sebastian Breβ , Moritz Eyssen , Max Heimel
IPC: G06F16/00 , G06F16/27 , G06F16/2455
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.
-
-
-
-
-
-
-
-
-