-
公开(公告)号:US11275739B2
公开(公告)日:2022-03-15
申请号:US17486426
申请日:2021-09-27
Applicant: Snowflake Inc.
Inventor: Ismail Oukid , Stefan Richter
IPC: G06F16/24 , G06F16/2455 , G06F17/18 , G06F16/28 , G06F16/22 , G06F16/9035
Abstract: A table organized into a set of batch units is accessed. A set of N-grams are generated for a data value in the source table. The set of N-grams include a first N-gram of a first length and a second N-gram of a second length where the first N-gram corresponds to a prefix of the second N-gram. A set of fingerprints are generated for the data value based on the set of N-grams. The set of fingerprints include a first fingerprint generated based on the first N-gram and a second fingerprint generated based on the second N-gram and the first fingerprint. A pruning index that indexes distinct values in each column of the source table is generated based on the set of fingerprints and stored in a database with an association with the source table.
-
公开(公告)号:US20220012246A1
公开(公告)日:2022-01-13
申请号:US17484817
申请日:2021-09-24
Applicant: Snowflake Inc.
Inventor: Ismail Oukid , Stefan Richter
IPC: G06F16/2455 , G06F16/9035 , G06F16/28 , G06F16/22 , G06F17/18
Abstract: A table organized into a set of batch units is accessed. A set of N-grams are generated for a data value in the source table. The set of N-grams include a first N-gram of a first length and a second N-gram of a second length where the first N-gram corresponds to a prefix of the second N-gram. A set of fingerprints are generated for the data value based on the set of N-grams. The set of fingerprints include a first fingerprint generated based on the first N-gram and a second fingerprint generated based on the second N-gram and the first fingerprint. A pruning index that indexes distinct values in each column of the source table is generated based on the set of fingerprints and stored in a database with an association with the source table.
-
公开(公告)号:US20210319025A1
公开(公告)日:2021-10-14
申请号:US17358154
申请日:2021-06-25
Applicant: Snowflake Inc.
Inventor: Thierry Cruanes , Benoit Dageville , Ismail Oukid , Stefan Richter
IPC: G06F16/2455 , G06F16/9035 , G06F16/28 , G06F17/18 , G06F16/22
Abstract: A source table organized into a set of micro-partitions is accessed by a network-based data warehouse. A pruning index is generated based on the source table. The pruning index comprises a set of filters that indicate locations of distinct values in each column of the source table. A query directed at the source table is received at the network-based data warehouse. The query is processed using the pruning index. The processing of the query comprises pruning the set of micro-partitions of the source table to scan for data matching the query, the pruning of the plurality of micro-partitions comprising identifying, using the pruning index, a sub-set of micro-partitions to scan for the data matching the query.
-
公开(公告)号:US11113286B2
公开(公告)日:2021-09-07
申请号:US17218962
申请日:2021-03-31
Applicant: Snowflake Inc.
Inventor: Thierry Cruanes , Benoit Dageville , Ismail Oukid , Stefan Richter
IPC: G06F16/24 , G06F16/2455 , G06F17/18 , G06F16/9035 , G06F16/22 , G06F16/28
Abstract: A query directed at a source table organized into a set of batch units is received. The query includes a pattern matching predicate that specifies a search pattern. A set of N-grams are generated based on the search pattern. A pruning index associated with the source table is accessed. The pruning index comprises a set of filters that index distinct N-grams in each column of the source table. The pruning index is used to identify a subset of batch units to scan for matching data based on the set of N-grams generated for the search pattern. The query is processed by scanning the subset of batch units.
-
公开(公告)号:US20210216555A1
公开(公告)日:2021-07-15
申请号:US17218962
申请日:2021-03-31
Applicant: Snowflake Inc.
Inventor: Thierry Cruanes , Benoit Dageville , Ismail Oukid , Stefan Richter
IPC: G06F16/2455 , G06F17/18 , G06F16/22 , G06F16/9035 , G06F16/28
Abstract: A query directed at a source table organized into a set of batch units is received. The query includes a pattern matching predicate that specifies a search pattern. A set of N-grams are generated based on the search pattern. A pruning index associated with the source table is accessed. The pruning index comprises a set of filters that index distinct N-grams in each column of the source table. The pruning index is used to identify a subset of batch units to scan for matching data based on the set of N-grams generated for the search pattern. The query is processed by scanning the subset of batch units.
-
公开(公告)号:US20210200772A1
公开(公告)日:2021-07-01
申请号:US17161115
申请日:2021-01-28
Applicant: Snowflake Inc.
Inventor: Thierry Cruanes , Benoit Dageville , Ismail Oukid , Stefan Richter
IPC: G06F16/2455 , G06F16/28 , G06F16/22 , G06F16/9035 , G06F17/18
Abstract: A source table organized into a set of micro-partitions is accessed by a network-based data warehouse. A pruning index is generated based on the source table. The pruning index comprises a set of filters that indicate locations of distinct values in each column of the source table. A query directed at the source table is received at the network-based data warehouse. The query is processed using the pruning index. The processing of the query comprises pruning the set of micro-partitions of the source table to scan for data matching the query, the pruning of the plurality of micro-partitions comprising identifying, using the pruning index, a sub-set of micro-partitions to scan for the data matching the query.
-
公开(公告)号:US10942925B1
公开(公告)日:2021-03-09
申请号:US16932462
申请日:2020-07-17
Applicant: Snowflake Inc.
Inventor: Thierry Cruanes , Benoit Dageville , Ismail Oukid , Stefan Richter
IPC: G06F16/20 , G06F16/2455 , G06F16/9035 , G06F16/28 , G06F16/22 , G06F17/18
Abstract: A source table organized into a set of micro-partitions is accessed by a network-based data warehouse. A pruning index is generated based on the source table. The pruning index comprises a set of filters that indicate locations of distinct values in each column of the source table. A query directed at the source table is received at the network-based data warehouse. The query is processed using the pruning index. The processing of the query comprises pruning the set of micro-partitions of the source table to scan for data matching the query, the pruning of the plurality of micro-partitions comprising identifying, using the pruning index, a sub-set of micro-partitions to scan for the data matching the query.
-
公开(公告)号:US11893025B2
公开(公告)日:2024-02-06
申请号:US18047595
申请日:2022-10-18
Applicant: Snowflake Inc.
Inventor: Mahmud Allahverdiyev , Thierry Cruanes , Ismail Oukid , Stefan Richter
IPC: G06F16/24 , G06F16/2455 , G06F16/9035 , G06F16/28 , G06F17/18 , G06F16/22
CPC classification number: G06F16/24557 , G06F16/2272 , G06F16/283 , G06F16/9035 , G06F17/18
Abstract: A source table organized into a set of batch units is accessed. The source table comprises a column of data corresponding to a semi-structured data type. One or more indexing transformations for an object in the column are generated. The generating of the one or more indexing transformation includes converting the object to one or more stored data types. A pruning index is generated for the source table based in part on the one or more indexing transformations. The pruning index comprises a set of filters that index distinct values in each column of the source table, and each filter corresponds to a batch unit in the set of batch units. The pruning index is stored in a database with an association with the source table.
-
公开(公告)号:US11880369B1
公开(公告)日:2024-01-23
申请号:US18057563
申请日:2022-11-21
Applicant: Snowflake Inc.
Inventor: Max Heimel , Ismail Oukid , Linnea Passing , Stefan Richter , Juliane K. Waack
IPC: G06F16/2455 , G06F16/2457
CPC classification number: G06F16/24557 , G06F16/24578
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.
-
公开(公告)号:US11593379B2
公开(公告)日:2023-02-28
申请号:US17804630
申请日:2022-05-31
Applicant: Snowflake Inc.
Inventor: Max Heimel , Ismail Oukid , Linnea Passing , Stefan Richter , Juliane K. Waack
IPC: G06F16/24 , G06F16/2455 , G06F16/9035 , G06F16/28 , G06F17/18 , G06F16/22
Abstract: A query directed at a table organized into a set of batch units is received. The query comprises a predicate for which values are unknown prior to runtime. A set of values for the predicate are determined based on the query. An index access plan is created based on the set of values. Based on the index access plan, the set of batch units are pruned using a pruning index associated with the table. The pruning index comprises a set of filters that index distinct values in each column of the table. The pruning of the set of batch units comprises identifying a subset of batch units to scan for data that satisfies the query. The subset of batch units of the table are scanned to identify data that satisfies the query.
-
-
-
-
-
-
-
-
-