-
公开(公告)号:US11971856B2
公开(公告)日:2024-04-30
申请号:US16779366
申请日:2020-01-31
Applicant: Snowflake Inc.
Inventor: Selcuk Aya , Bowei Chen , Florian Andreas Funke
IPC: G06F16/174 , G06F16/22 , G06F16/27
CPC classification number: G06F16/1744 , G06F16/221 , G06F16/27
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.
-
公开(公告)号:US20210240670A1
公开(公告)日:2021-08-05
申请号:US16779366
申请日:2020-01-31
Applicant: Snowflake Inc
Inventor: Selcuk Aya , Bowei Chen , Florian Andreas Funke
IPC: G06F16/174 , G06F16/22 , G06F16/27
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.
-
公开(公告)号:US20240303373A1
公开(公告)日:2024-09-12
申请号:US18345971
申请日:2023-06-30
Applicant: Snowflake Inc.
Inventor: Khalid Zaman Bijon , Bowei Chen , Thierry Cruanes , Simon Holm Jensen , Allison Waingold Lee , Valentin K. Kuznetsov , Jun Li , Subramanian Muralidhar , Carl Yates Perry , David Schultz , Zixi Zhang
IPC: G06F21/62 , G06F16/242
CPC classification number: G06F21/6245 , G06F16/244 , G06F2221/2113
Abstract: The cloud data platform receives a first query directed towards a shared dataset, the first query identifying a first operation. The platform accesses a first set of data from the shared dataset to perform the first operation, the first set of data including data accessed from a first table of the shared dataset. The cloud data platform determines that an aggregation constraint policy is attached to the first table, the aggregation constraint policy restricts output of data values stored in the first table and enforces the aggregation constraint policy on the first query based on a context of the first query. The cloud data platform generates an output to the first query based on the first set of data and the first operation, based on enforcing the aggregation constraint policy on the first query.
-
公开(公告)号:US20210232583A1
公开(公告)日:2021-07-29
申请号:US17232821
申请日:2021-04-16
Applicant: Snowflake Inc.
Inventor: Bowei Chen , Thierry Cruanes , Florian Andreas Funke , Allison Waingold Lee , Jiaqi Yan
IPC: G06F16/2453 , G06F16/2455 , G06F16/22
Abstract: The subject technology provides information, corresponding to properties of a build side of a join operation, to a bloom filter. The subject technology, based at least in part on the information from the bloom filter, determines, during executing of a query plan, at least one property of the join operation to determine whether to switch an aggregation operator to a pass through mode, the at least one property comprising at least a reduction rate. The subject technology, switches, in response to the reduction rate being below a threshold value, the aggregation operator to the pass through mode during runtime of the query plan and, while the aggregation operator is in the pass through mode, an input stream of data goes through the aggregation operator without being analyzed and the input stream of data matches an output stream of data flowing out of the aggregation operator.
-
公开(公告)号:US20210089533A1
公开(公告)日:2021-03-25
申请号:US16857790
申请日:2020-04-24
Applicant: Snowflake Inc.
Inventor: Bowei Chen , Thierry Cruanes , Florian Andreas Funke , Allison Waingold Lee , Jiaqi Yan
IPC: G06F16/2453
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 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.
-
公开(公告)号:US20230139194A1
公开(公告)日:2023-05-04
申请号:US18146912
申请日:2022-12-27
Applicant: Snowflake Inc.
Inventor: Mahmud Allahverdiyev , Selcuk Aya , Bowei Chen , Ismail Oukid
IPC: G06F16/2455 , G06F16/9035 , G06F16/28 , G06F17/18 , G06F16/22
Abstract: A pruning index is generated for a source table organized into a set of batch units. The source table comprises a column of semi-structured data. The pruning index comprises a set of filters that index distinct values in each column of the source table. Rather than reassembling an entire tree structure of the semi-structured data prior to indexing, the generating of the pruning index comprises traversing a reassembly hook object that represents a first portion of the semi-structured data that is subcolumnarized and traversing a residual object that represents a second portion of the semi-structured data that is not subcolumnarized. The reassembly hook object is traversed to identify values corresponding to the first portion of the semi-structured data and the residual object is traversed to identify values corresponding to the second portion. The pruning index is stored with an association with the source table.
-
公开(公告)号:US11620287B2
公开(公告)日:2023-04-04
申请号:US16939750
申请日:2020-07-27
Applicant: Snowflake Inc.
Inventor: Bowei Chen , Thierry Cruanes , Florian Andreas Funke , Allison Waingold Lee , Jiaqi Yan
IPC: G06F16/2453 , G06F16/242
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.
-
公开(公告)号:US11567939B2
公开(公告)日:2023-01-31
申请号:US17814110
申请日:2022-07-21
Applicant: Snowflake Inc.
Inventor: Mahmud Allahverdiyev , Selcuk Aya , Bowei Chen , Ismail Oukid
IPC: G06F16/24 , G06F16/2455 , G06F16/9035 , G06F16/28 , G06F17/18 , G06F16/22
Abstract: A pruning index is generated for a source table organized into a set of batch units. The source table comprises a column of semi-structured data. The pruning index comprises a set of filters that index distinct values in each column of the source table. Rather than reassembling an entire tree structure of the semi-structured data prior to indexing, the generating of the pruning index comprises traversing a reassembly hook object that represents a first portion of the semi-structured data that is subcolumnarized and traversing a residual object that represents a second portion of the semi-structured data that is not subcolumnarized. The reassembly hook object is traversed to identify values corresponding to the first portion of the semi-structured data and the residual object is traversed to identify values corresponding to the second portion. The pruning index is stored with an association with the source table.
-
公开(公告)号:US11144550B2
公开(公告)日:2021-10-12
申请号:US16857817
申请日:2020-04-24
Applicant: Snowflake Inc.
Inventor: Bowei Chen , Thierry Cruanes , Florian Andreas Funke , Allison Waingold Lee , Jiaqi Yan
IPC: G06F16/2453 , G06F16/2455 , G06F16/22
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 a join operation, the join operation including a build side and a probe side. The subject technology inserts an aggregation operator below the probe side of the join operation. The subject technology causes the build side of the join operation to generate a hash table. The subject technology causes the build side of the join operation to generate a bloom filter based at least in part on the hash table and provide information, corresponding to properties of the build side, to a bloom filter. Based at least in part on the information, the subject technology determines at least one property of the join operation to determine whether to switch the aggregation operator to a pass through mode.
-
公开(公告)号:US20210173839A1
公开(公告)日:2021-06-10
申请号:US17180323
申请日:2021-02-19
Applicant: Snowflake Inc.
Inventor: Bowei Chen , Thierry Cruanes , Florian Andreas Funke , Allison Waingold Lee , Jiaqi Yan
IPC: G06F16/2453
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.
-
-
-
-
-
-
-
-
-