-
公开(公告)号:US12277117B1
公开(公告)日:2025-04-15
申请号:US18649537
申请日:2024-04-29
Applicant: Snowflake Inc.
Inventor: Karan Chadha , Prashant Gaharwar , Shrainik Jain , Nicola Dan Onose , Jiaqi Yan
IPC: G06F16/24 , G06F11/34 , G06F16/2453
Abstract: The subject technology receives a query, the query including a statement for performing the query. The subject technology performs a lookup operation on a stored plan cache based on the query. The subject technology performs, in response to a cache match of the query to a stored query plan in the stored plan cache based on the lookup operation, a validation process of the stored query plan. The subject technology determines whether the stored query plan is valid based on the validation process. The subject technology performs, in response to determining that the stored query plan is valid, a program building process for the stored query plan to generate a final query plan. The subject technology sends the final query plan to an execution node for execution.
-
公开(公告)号:US12277115B2
公开(公告)日:2025-04-15
申请号:US18463904
申请日:2023-09-08
Applicant: Snowflake Inc.
Inventor: Prasanna Rajaperumal , Thierry Cruanes , Allison Waingold Lee , Igor Demura , Jiaqi Yan , Benoit Dageville
IPC: G06F16/00 , G06F7/00 , G06F16/2453
Abstract: Systems, methods, and devices for sharing materialized views in multiple tenant database systems. A method includes defining a materialized view over a source table that is associated with a first account of a multiple tenant database. The method includes defining cross-account access rights to the materialized view to a second account such that that second account can read the materialized view without copying the materialized view. The method includes modifying the source table for the materialized view. The method includes identifying whether the materialized view is stale with respect to the source table by merging the materialized view and the source table.
-
公开(公告)号:US12216656B2
公开(公告)日:2025-02-04
申请号:US18477808
申请日:2023-09-29
Applicant: Snowflake Inc.
Inventor: Thierry Cruanes , Igor Demura , Varun Ganesh , Prasanna Rajaperumal , Libo Wang , Jiaqi Yan
IPC: G06F16/2453
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.
-
公开(公告)号:US12210525B2
公开(公告)日:2025-01-28
申请号:US18162486
申请日:2023-01-31
Applicant: Snowflake Inc.
Inventor: Thierry Cruanes , Benoit Dageville , Igor Demura , Brian Charles Forney , Weili Gu , Yujie Li , Mohammad Saber Mirzaei , Jaeyun Noh , Jiaqi Yan
IPC: G06F16/24 , G06F16/2453
Abstract: Interleaved infrastructure can interleave fragment execution during query compilation. For example, compilation can be paused, and a plan fragment is executed. The results of the plan fragment can be fed back into the compiler, which can then restart the compilation and modify the compilation based on the results of the plan fragment execution. The interleaved workflow provides a flexible, robust infrastructure, which can enable and improve a variety of database features and query optimizations.
-
公开(公告)号:US20250021390A1
公开(公告)日:2025-01-16
申请号:US18822732
申请日:2024-09-03
Applicant: Snowflake Inc.
Inventor: Thierry Cruanes , Igor Demura , Varun Ganesh , Prasanna Rajaperumal , Libo Wang , Jiaqi Yan
IPC: G06F9/50 , G06F9/54 , H04L67/1001
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.
-
76.
公开(公告)号:US20240427755A1
公开(公告)日:2024-12-26
申请号:US18517744
申请日:2023-11-22
Applicant: Snowflake Inc.
Inventor: Selcuk Aya , Thierry Cruanes , Istvan Cseri , Benoit Dageville , Marcia Feitel , Steven P. Herbert , Dennis Huo , Xinglian Liu , Nithin Mahesh , James Malone , Subramanian Muralidhar , Muthunagappan Muthuraman , Ronald Lee Ortloff , Polita Paulus , Marianne Shaw , Nileema Shingte , Wai Sing Wong , Jiaqi Yan
IPC: G06F16/22 , G06F16/215 , G06F16/2457
Abstract: The subject technology provides embodiments for supporting a unified table which may be a managed table or an unmanaged table. Managed tables are those where the subject technology manages the metastore/catalog for the table, whereas unmanaged tables are tables where an external catalog controls the table and the subject technology integrates with that catalog to work with the table, but does not assume control of the table.
-
公开(公告)号:US12164514B2
公开(公告)日:2024-12-10
申请号:US18109099
申请日:2023-02-13
Applicant: SNOWFLAKE INC.
Inventor: Thierry Cruanes , Florian Andreas Funke , Guangyan Hu , Jiaqi Yan
IPC: G06F16/00 , G06F16/2453 , G06F16/2455
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.
-
公开(公告)号:US20240330287A1
公开(公告)日:2024-10-03
申请号:US18128143
申请日:2023-03-29
Applicant: Snowflake Inc.
Inventor: Prashant Gaharwar , Vineet Garg , Nicola Dan Onose , Jiaqi Yan
IPC: G06F16/2453
CPC classification number: G06F16/24542 , G06F16/24539
Abstract: The subject technology receives a query. The subject technology performs a lookup operation on a shadow cache. The subject technology performs a validation process on the particular query plan for determining a cache hit on the shadow cache. The subject technology performs a program building process to update the particular query plan with additional information for executing the particular query plan. The subject technology performs a compilation process to compile an updated program of the updated particular query plan. The subject technology determines that the updated particular query plan is cacheable based at least in part on the compilation process. The subject technology registers the updated particular query plan as a new entry in the shadow cache. The subject technology sends the updated program to an execution node for executing the updated particular query plan.
-
公开(公告)号:US20240303238A1
公开(公告)日:2024-09-12
申请号:US18663963
申请日:2024-05-14
Applicant: Snowflake Inc.
Inventor: Thierry Cruanes , Igor Demura , Varun Ganesh , Prasanna Rajaperumal , Libo Wang , Jiaqi Yan
IPC: G06F16/2453 , G06F9/48 , G06F16/11 , G06F16/14 , G06F16/16
CPC classification number: G06F16/24542 , G06F9/485 , G06F16/122 , G06F16/148 , G06F16/162 , G06F16/24539
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).
-
公开(公告)号:US12056123B2
公开(公告)日:2024-08-06
申请号:US18099866
申请日:2023-01-20
Applicant: Snowflake Inc.
Inventor: Thierry Cruanes , Florian Andreas Funke , Guangyan Hu , Jiaqi Yan
IPC: G06F7/00 , G06F16/00 , G06F16/22 , G06F16/2453 , G06F16/2455
CPC classification number: G06F16/24537 , G06F16/2255 , G06F16/24556
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.
-
-
-
-
-
-
-
-
-