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: 11962330
    Abstract: A method, a system, and a computer program product for decompressing data. One or more compressed blocks in a set of stored compressed blocks responsive to a request to access data in the set of stored compressed blocks are identified. String prefixes inside the identified compressed blocks are decompressed using front coding. String suffixes inside the identified compressed blocks are decompressed using a re-pair decompression. Uncompressed data is generated.
    Type: Grant
    Filed: October 14, 2022
    Date of Patent: April 16, 2024
    Assignee: SAP SE
    Inventors: Robert Lasch, Ismail Oukid, Norman May
  • Patent number: 11900153
    Abstract: 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: Grant
    Filed: February 23, 2022
    Date of Patent: February 13, 2024
    Assignee: SAP SE
    Inventors: Tiemo Bang, Norman May, Ismail Oukid, Carsten Binnig
  • Patent number: 11893025
    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.
    Type: Grant
    Filed: October 18, 2022
    Date of Patent: February 6, 2024
    Assignee: Snowflake Inc.
    Inventors: Mahmud Allahverdiyev, Thierry Cruanes, Ismail Oukid, Stefan Richter
  • Patent number: 11880369
    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.
    Type: Grant
    Filed: November 21, 2022
    Date of Patent: January 23, 2024
    Assignee: Snowflake Inc.
    Inventors: Max Heimel, Ismail Oukid, Linnea Passing, Stefan Richter, Juliane K. Waack
  • Patent number: 11816107
    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.
    Type: Grant
    Filed: December 27, 2022
    Date of Patent: November 14, 2023
    Assignee: Snowflake Inc.
    Inventors: Mahmud Allahverdiyev, Selcuk Aya, Bowei Chen, Ismail Oukid
  • Patent number: 11803551
    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.
    Type: Grant
    Filed: March 15, 2022
    Date of Patent: October 31, 2023
    Assignee: Snowflake Inc.
    Inventors: Thierry Cruanes, Benoit Dageville, Ismail Oukid, Stefan Richter
  • Publication number: 20230342362
    Abstract: A query directed at a source table organized into a set of batch units is received. The query comprises a regular expression search pattern. The regular expression search pattern is converted to a pruning index predicate comprising a set of substring literals extracted from the regular expression search pattern. A set of N-grams is generated based on the set of substring literals extracted from the regular expression search pattern. A pruning index associated with the source table is accessed. The pruning index indexes distinct N-grams in each column of the source table. A subset of batch units to scan for data matching the query are identified based on the pruning index and the set of N-grams. The query is processed by scanning the subset of batch units.
    Type: Application
    Filed: April 24, 2023
    Publication date: October 26, 2023
    Inventors: Thierry Cruanes, Ismail Oukid, Stefan Richter, Alejandro Salinger
  • Patent number: 11734280
    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.
    Type: Grant
    Filed: March 15, 2022
    Date of Patent: August 22, 2023
    Assignee: Snowflake Inc.
    Inventors: Thierry Cruanes, Benoit Dageville, Ismail Oukid, Stefan Richter
  • Patent number: 11704320
    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.
    Type: Grant
    Filed: September 29, 2022
    Date of Patent: July 18, 2023
    Assignee: Snowflake Inc.
    Inventors: Ismail Oukid, Stefan Richter
  • Patent number: 11681708
    Abstract: A query directed at a source table organized into a set of batch units is received. The query comprises a regular expression search pattern. The regular expression search pattern is converted to a pruning index predicate comprising a set of substring literals extracted from the regular expression search pattern. A set of N-grams is generated based on the set of substring literals extracted from the regular expression search pattern. A pruning index associated with the source table is accessed. The pruning index indexes distinct N-grams in each column of the source table. A subset of batch units to scan for data matching the query are identified based on the pruning index and the set of N-grams. The query is processed by scanning the subset of batch units.
    Type: Grant
    Filed: September 23, 2022
    Date of Patent: June 20, 2023
    Assignee: Snowflake Inc.
    Inventors: Thierry Cruanes, Ismail Oukid, Stefan Richter, Alejandro Salinger
  • Publication number: 20230139194
    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.
    Type: Application
    Filed: December 27, 2022
    Publication date: May 4, 2023
    Inventors: Mahmud Allahverdiyev, Selcuk Aya, Bowei Chen, Ismail Oukid
  • Publication number: 20230084069
    Abstract: A query directed at a source table organized into a set of batch units is received. The query comprises a regular expression search pattern. The regular expression search pattern is converted to a pruning index predicate comprising a set of substring literals extracted from the regular expression search pattern. A set of N-grams is generated based on the set of substring literals extracted from the regular expression search pattern. A pruning index associated with the source table is accessed. The pruning index indexes distinct N-grams in each column of the source table. A subset of batch units to scan for data matching the query are identified based on the pruning index and the set of N-grams. The query is processed by scanning the subset of batch units.
    Type: Application
    Filed: September 23, 2022
    Publication date: March 16, 2023
    Inventors: Thierry Cruanes, Ismail Oukid, Stefan Richter, Alejandro Salinger
  • Publication number: 20230085457
    Abstract: A method, a system, and a computer program product for decompressing data. One or more compressed blocks in a set of stored compressed blocks responsive to a request to access data in the set of stored compressed blocks are identified. String prefixes inside the identified compressed blocks are decompressed using front coding. String suffixes inside the identified compressed blocks are decompressed using a re-pair decompression. Uncompressed data is generated.
    Type: Application
    Filed: October 14, 2022
    Publication date: March 16, 2023
    Inventors: Robert LASCH, Ismail Oukid, Norman May
  • Publication number: 20230064151
    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.
    Type: Application
    Filed: October 18, 2022
    Publication date: March 2, 2023
    Inventors: Mahmud Allahverdiyev, Thierry Cruanes, Ismail Oukid, Stefan Richter
  • Patent number: 11593379
    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.
    Type: Grant
    Filed: May 31, 2022
    Date of Patent: February 28, 2023
    Assignee: Snowflake Inc.
    Inventors: Max Heimel, Ismail Oukid, Linnea Passing, Stefan Richter, Juliane K. Waack
  • Patent number: 11567939
    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.
    Type: Grant
    Filed: July 21, 2022
    Date of Patent: January 31, 2023
    Assignee: Snowflake Inc.
    Inventors: Mahmud Allahverdiyev, Selcuk Aya, Bowei Chen, Ismail Oukid
  • Publication number: 20230019945
    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.
    Type: Application
    Filed: September 29, 2022
    Publication date: January 19, 2023
    Inventors: Ismail Oukid, Stefan Richter
  • Patent number: 11544269
    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.
    Type: Grant
    Filed: March 29, 2022
    Date of Patent: January 3, 2023
    Assignee: Snowflake Inc.
    Inventors: Thierry Cruanes, Benoit Dageville, Ismail Oukid, Stefan Richter
  • Patent number: 11502705
    Abstract: A method, a system, and a computer program product for decompressing data. One or more compressed blocks in a set of stored compressed blocks responsive to a request to access data in the set of stored compressed blocks are identified. String prefixes inside the identified compressed blocks are decompressed using front coding. String suffixes inside the identified compressed blocks are decompressed using a re-pair decompression. Uncompressed data is generated.
    Type: Grant
    Filed: March 30, 2020
    Date of Patent: November 15, 2022
    Assignee: SAP SE
    Inventors: Robert Lasch, Ismail Oukid, Norman May
  • Publication number: 20220358128
    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.
    Type: Application
    Filed: July 21, 2022
    Publication date: November 10, 2022
    Inventors: Mahmud Allahverdiyev, Selcuk Aya, Bowei Chen, Ismail Oukid