Patents by Inventor Ismail Oukid
Ismail Oukid 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).
-
Patent number: 11494384Abstract: 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.Type: GrantFiled: March 16, 2022Date of Patent: November 8, 2022Assignee: Snowflake Inc.Inventors: Mahmud Allahverdiyev, Thierry Cruanes, Ismail Oukid, Stefan Richter
-
Patent number: 11487763Abstract: 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.Type: GrantFiled: February 1, 2022Date of Patent: November 1, 2022Assignee: Snowflake Inc.Inventors: Ismail Oukid, Stefan Richter
-
Publication number: 20220292098Abstract: 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.Type: ApplicationFiled: May 31, 2022Publication date: September 15, 2022Inventors: Max Heimel, Ismail Oukid, Linnea Passing, Stefan Richter, Juliane K. Waack
-
Publication number: 20220284025Abstract: Provided herein are systems and methods for indexed geospatial predicate search. An example method performed by at least one hardware processor includes decoding a query with a geospatial predicate. The geospatial predicate is configured between a geography data column and a constant geography object. The method further includes computing a first covering for a data value of a plurality of data values in the geography data column. The first covering includes a first set of cells in a hierarchical grid representation of a geography. The first set of cells represents a surface of the geography associated with the data value. A second covering is computed for the constant geography object. A determination is made on whether to prune at least one partition of a database organized into a set of partitions and including the geography data column based on a comparison between the first covering and the second covering.Type: ApplicationFiled: May 26, 2022Publication date: September 8, 2022Inventors: Matthias Carl Adams, Mahmud Allahverdiyev, Ismail Oukid, Peter Popov, Alejandro Salinger
-
Publication number: 20220277013Abstract: 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.Type: ApplicationFiled: March 15, 2022Publication date: September 1, 2022Inventors: Thierry Cruanes, Benoit Dageville, Ismail Oukid, Stefan Richter
-
Publication number: 20220222108Abstract: Techniques and solutions are described for implementing virtual domains. Computing resources in a computing environment are determined and assigned to one or more virtual domains. One or more data structures can be located in a given virtual domain. The computing resources assigned to a virtual domain can be dynamically reconfigured without affecting processes that submit tasks to be performed on data structures in the virtual domains. Tasks can be submitted to a dispatcher, which can determine the appropriate virtual domain for the task and forward the task to the determined virtual domain. Tasks are received by virtual domains and assigned to worker threads, which can access a data structure specified for a given task.Type: ApplicationFiled: February 23, 2022Publication date: July 14, 2022Applicant: SAP SEInventors: Tiemo Bang, Norman May, Ismail Oukid, Carsten Binnig
-
Publication number: 20220215027Abstract: 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.Type: ApplicationFiled: March 29, 2022Publication date: July 7, 2022Inventors: Thierry Cruanes, Benoit Dageville, Ismail Oukid, Stefan Richter
-
Publication number: 20220207041Abstract: 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.Type: ApplicationFiled: March 16, 2022Publication date: June 30, 2022Inventors: Mahmud Allahverdiyev, Thierry Cruanes, Ismail Oukid, Stefan Richter
-
Patent number: 11372860Abstract: 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.Type: GrantFiled: August 31, 2021Date of Patent: June 28, 2022Assignee: Snowflake Inc.Inventors: Max Heimel, Ismail Oukid, Linnea Passing, Stefan Richter, Juliane K. Waack
-
Publication number: 20220156264Abstract: 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.Type: ApplicationFiled: February 1, 2022Publication date: May 19, 2022Inventors: Ismail Oukid, Stefan Richter
-
Patent number: 11321325Abstract: 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.Type: GrantFiled: July 29, 2021Date of Patent: May 3, 2022Assignee: Snowflake Inc.Inventors: Thierry Cruanes, Benoit Dageville, Ismail Oukid, Stefan Richter
-
Patent number: 11308090Abstract: 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.Type: GrantFiled: August 4, 2021Date of Patent: April 19, 2022Assignee: Snowflake Inc.Inventors: Mahmud Allahverdiyev, Thierry Cruanes, Ismail Oukid, Stefan Richter
-
Patent number: 11308089Abstract: 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.Type: GrantFiled: June 25, 2021Date of Patent: April 19, 2022Assignee: Snowflake Inc.Inventors: Thierry Cruanes, Benoit Dageville, Ismail Oukid, Stefan Richter
-
Patent number: 11294708Abstract: Techniques and solutions are described for implementing virtual domains. Computing resources in a computing environment are determined and assigned to one or more virtual domains. One or more data structures can be located in a given virtual domain. The computing resources assigned to a virtual domain can be dynamically reconfigured without affecting processes that submit tasks to be performed on data structures in the virtual domains. Tasks can be submitted to a dispatcher, which can determine the appropriate virtual domain for the task and forward the task to the determined virtual domain. Tasks are received by virtual domains and assigned to worker threads, which can access a data structure specified for a given task.Type: GrantFiled: December 12, 2019Date of Patent: April 5, 2022Assignee: SAP SEInventors: Tiemo Bang, Norman May, Ismail Oukid, Carsten Binnig
-
Patent number: 11275738Abstract: 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.Type: GrantFiled: September 24, 2021Date of Patent: March 15, 2022Assignee: Snowflake Inc.Inventors: Ismail Oukid, Stefan Richter
-
Patent number: 11275739Abstract: 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.Type: GrantFiled: September 27, 2021Date of Patent: March 15, 2022Assignee: Snowflake Inc.Inventors: Ismail Oukid, Stefan Richter
-
Publication number: 20220012247Abstract: 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.Type: ApplicationFiled: September 27, 2021Publication date: January 13, 2022Inventors: Ismail Oukid, Stefan Richter
-
Publication number: 20220012246Abstract: 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.Type: ApplicationFiled: September 24, 2021Publication date: January 13, 2022Inventors: Ismail Oukid, Stefan Richter
-
Publication number: 20210397619Abstract: 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.Type: ApplicationFiled: August 31, 2021Publication date: December 23, 2021Inventors: Max Heimel, Ismail Oukid, Linnea Passing, Stefan Richter, Juliane K. Waack
-
Publication number: 20210365461Abstract: 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.Type: ApplicationFiled: August 4, 2021Publication date: November 25, 2021Inventors: Mahmud Allahverdiyev, Thierry Cruanes, Ismail Oukid, Stefan Richter