Patents by Inventor Mohamed Ziauddin

Mohamed Ziauddin 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).

  • Publication number: 20250139092
    Abstract: A histogram-augmented dynamic sampling approach is provided for determining cardinality of a two-table join. The approach has a pre-processing phase in which data structures are created that will be used during a compilation phase for cardinality estimation. These data structures include a row histogram and a key histogram, which are created for selected columns of a first table. A cardinality estimation phase uses the data structures to estimate the cardinality of various joins at the time of query compilation. In this phase, the system executes queries that join the histograms with a second table, to perform the cardinality estimation.
    Type: Application
    Filed: October 26, 2023
    Publication date: May 1, 2025
    Inventors: Hong Su, Jiakun Li, Suratna Budalakoti, Mohamed Ziauddin, Alan Paul Wood
  • Patent number: 12197439
    Abstract: A new type of table join operation, outer semi join (OSJ), is provided, which can be used by an optimizer layer and an execution layer of a database management system (DBMS). OSJ combines the semantics of both left outer-join and semi-join. The concept of an anti-join marker (AJM) is also introduced, which specifies whether a matching row was not found between joined tables for each result row in an OSJ operation. The OSJ operation supports unnesting of a class of disjunctive ANY, ALL, EXISTS, NOT EXISTS, IN, and NOT IN subqueries for execution plan optimization. The disjunction may contain filter predicates. For unnesting, OSJ avoids the need of using a distinct operator on the right table and also supports using inequality (e.g. >, >=, <, <=) in connecting or correlating conditions of subqueries, rather than being limited to equality only.
    Type: Grant
    Filed: October 14, 2022
    Date of Patent: January 14, 2025
    Assignee: Oracle International Corporation
    Inventors: Rafi Ahmed, Angela Amor, Mohamed Ziauddin
  • Patent number: 12111828
    Abstract: Disclosed is an approach for applying fine-grained hints to obtain optimal control over error handling during query compilation. Using fine-grained hints causes less disruption to the query plans generated by the optimizer as they constrain specific features while retaining scope for the rest of the optimizer functionality. This approach provides a query plan of better quality that avoid errors, particularly in comparison to coarse-grained approaches that restrict processing to earlier database versions or which disables cost-based processing.
    Type: Grant
    Filed: October 15, 2021
    Date of Patent: October 8, 2024
    Assignee: Oracle International Corporation
    Inventors: Krishna Kantikiran Pasupuleti, Mohamed Ziauddin, Hong Su, Sunil P. Chakkappen
  • Publication number: 20240126757
    Abstract: A new type of table join operation, outer semi join (OSJ), is provided, which can be used by an optimizer layer and an execution layer of a database management system (DBMS). OSJ combines the semantics of both left outer-join and semi-join. The concept of an anti-join marker (AJM) is also introduced, which specifies whether a matching row was not found between joined tables for each result row in an OSJ operation. The OSJ operation supports unnesting of a class of disjunctive ANY, ALL, EXISTS, NOT EXISTS, IN, and NOT IN subqueries for execution plan optimization. The disjunction may contain filter predicates. For unnesting, OSJ avoids the need of using a distinct operator on the right table and also supports using inequality (e.g. >, >=, <, <=) in connecting or correlating conditions of subqueries, rather than being limited to equality only.
    Type: Application
    Filed: October 14, 2022
    Publication date: April 18, 2024
    Inventors: Rafi Ahmed, Angela Amor, Mohamed Ziauddin
  • Publication number: 20240078233
    Abstract: Techniques for automatic error mitigation in database systems using alternate plans are provided. After receiving a database statement, an error is detected as a result of compiling the database statement. In response to detecting the error, one or more alternate plans that were used to process the database statement or another database statement that is similar to the database statement are identified. A particular alternate plan of the one or more alternate plans is selected. A result of the database statement is generated based on processing the particular alternate plan.
    Type: Application
    Filed: September 2, 2022
    Publication date: March 7, 2024
    Inventors: Krishna Kantikiran Pasupuleti, Hong Su, Jiakun Li, Mohamed Ziauddin
  • Patent number: 11907218
    Abstract: Techniques for automatically preventing execution plan regressions are provided. In one technique, in a first user database session, in response to receiving a first database statement, a first execution plan is generated and, while executing the first execution plan, first performance data that indicates one or more first performance metrics of executing the first execution plan is recorded. In response to receiving a second database statement, where the first execution plan may be used to generate a result for the second database statement, a second execution plan is generated and second performance data that indicates one or more second performance metrics of executing the second execution plan is recorded. A comparison between the first performance data and the second performance data is performed. Based on the comparison, it is determined whether the second execution plan will be stored for future use to process a database statement.
    Type: Grant
    Filed: August 12, 2022
    Date of Patent: February 20, 2024
    Assignee: Oracle International Corporation
    Inventors: Sunil P. Chakkappen, Mohamed Ziauddin, Cetin Ozbutun, Palash Sharma, Yiqiong Zhang, Zhan Li
  • Publication number: 20240054127
    Abstract: Techniques for automatically preventing execution plan regressions are provided. In one technique, in a first user database session, in response to receiving a first database statement, a first execution plan is generated and, while executing the first execution plan, first performance data that indicates one or more first performance metrics of executing the first execution plan is recorded. In response to receiving a second database statement, where the first execution plan may be used to generate a result for the second database statement, a second execution plan is generated and second performance data that indicates one or more second performance metrics of executing the second execution plan is recorded. A comparison between the first performance data and the second performance data is performed. Based on the comparison, it is determined whether the second execution plan will be stored for future use to process a database statement.
    Type: Application
    Filed: August 12, 2022
    Publication date: February 15, 2024
    Inventors: Sunil P. Chakkappen, Mohamed Ziauddin, Cetin Ozbutun, Palash Sharma, Yiqiong Zhang, Zhan Li
  • Patent number: 11797534
    Abstract: Embodiments generate random walks through a directed graph that is represented in a relational database table. Each row of the graph table represents a directed edge in the graph and includes a source vertex and a destination vertex. Each row is further augmented to (a) indicate the number of outbound edges starting from the destination vertex in the row and (b) include an identifier that distinguishes the edge from other outbound edges starting from the same source vertex. An SQL query may be executed on the augmented graph table. Starting from a source vertex (starting vertex or the destination vertex of the previously selected hop) the query randomly selects a row of the graph table representing one of the outbound edges from the source vertex and adds the selected outbound edge as a row in a random walk table that represents the next hop in the random walk.
    Type: Grant
    Filed: March 29, 2022
    Date of Patent: October 24, 2023
    Assignee: Oracle International Corporation
    Inventors: Mohamed Ziauddin, Zhe Wu, Andrew Witkowski
  • Publication number: 20230117461
    Abstract: Disclosed is an approach for applying fine-grained hints to obtain optimal control over error handling during query compilation. Using fine-grained hints causes less disruption to the query plans generated by the optimizer as they constrain specific features while retaining scope for the rest of the optimizer functionality. This approach provides a query plan of better quality that avoid errors, particularly in comparison to coarse-grained approaches that restrict processing to earlier database versions or which disables cost-based processing.
    Type: Application
    Filed: October 15, 2021
    Publication date: April 20, 2023
    Applicant: Oracle International Corporation
    Inventors: Krishna Kantikiran PASUPULETI, Mohamed Ziauddin, Hong Su, Sunil P. Chakkappen
  • Publication number: 20230024553
    Abstract: Techniques for subsumption of inline views and subqueries in a query are described. An optimization technique of subsumption is enabled by inline views having identical tables and identical join conditions and having aggregation functions but no group-by clauses. When subsumption takes place, a single query block replaces the inline views (or subqueries) with a single inline view query block. Subsumption reduces multiple access to the same table and multiple evaluations of the same join conditions required to evaluate the query. The single query block includes factored out filter predicates and unified predicates that originate from the subsumed inline views (or subqueries). Based on similarities among the aggregation functions and filter predicates in the subsumed inline views, pre-computation of common aggregates may be performed in a new group-by view in the subsuming view.
    Type: Application
    Filed: July 20, 2021
    Publication date: January 26, 2023
    Inventors: Rafi Ahmed, Mohamed Ziauddin, Sankar Subramanian
  • Patent number: 11468099
    Abstract: Techniques for the automatic creation and maintenance of zone maps are provided. In one technique, a set of data sets is identified. For each data set, a data set width is determined based on a maximum value in the data set and a minimum value in the data set. One or more zones within the data set are identified. For each zone, a zone width is determined based on a difference between a maximum value in that zone and a minimum value in that zone. An aggregate zone width is generated that is based on the zone width of each zone. Based on the data set width and the aggregate zone width, it is determined whether to automatically generate a zone map for the data set.
    Type: Grant
    Filed: October 12, 2020
    Date of Patent: October 11, 2022
    Assignee: Oracle International Corporation
    Inventors: Mohamed Ziauddin, You Jung Kim, Venkatesh Sakamuri, Sankar Subramanian
  • Patent number: 11429606
    Abstract: Techniques are provided for bitmap-based computation of a COUNT(DISTINCT) function, where the bitmaps are generated based on ranks of target expression values. According to an embodiment, the ranks are computed using the DENSE_RANK function. The bitmaps may be maintained in a materialized view. Bitmap data that represents the ranks for target expression values occurring in data for a given group is divided across multiple bucket bitmaps, each corresponding to a distinct sub-range of the ranks. According to an embodiment, target expression value ranks are computed relative to partitions of the target expression values. When these partitions correspond to a subset (not necessarily strict) of the target query grouping keys for a query rewrite, the resulting bitmaps allow computation of multiple levels of aggregation from the single set of bitmaps.
    Type: Grant
    Filed: December 24, 2019
    Date of Patent: August 30, 2022
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Sabina Petride, Mohamed Ziauddin, Praveen T.J. Kumar
  • Publication number: 20220222254
    Abstract: Embodiments generate random walks through a directed graph that is represented in a relational database table. Each row of the graph table represents a directed edge in the graph and includes a source vertex and a destination vertex. Each row is further augmented to (a) indicate the number of outbound edges starting from the destination vertex in the row and (b) include an identifier that distinguishes the edge from other outbound edges starting from the same source vertex. An SQL query may be executed on the augmented graph table. Starting from a source vertex (starting vertex or the destination vertex of the previously selected hop) the query randomly selects a row of the graph table representing one of the outbound edges from the source vertex and adds the selected outbound edge as a row in a random walk table that represents the next hop in the random walk.
    Type: Application
    Filed: March 29, 2022
    Publication date: July 14, 2022
    Applicant: Oracle International Corporation
    Inventors: Mohamed Ziauddin, Zhe Wu, Andrew Witkowski
  • Patent number: 11379476
    Abstract: Techniques are described for storing and maintaining, in a materialized view, bitmap data that represents a bitmap of each possible distinct value of an expression and rewriting a query for a count of distinct values of the expression using the materialized view. The materialized view contains bitmap data that represents a bitmap of each possible distinct value of a first expression, and aggregate values of additional expressions, and is stored in memory or on disk by a database system. The database system receives a query that requests a number of distinct values, of the first expression, and an aggregate value for an additional expression. In response, the database system, rewrites the query to: compute the number of distinct values by counting the bits in the bitmap data of the materialized view that are set to the first value, and obtains the aggregate value for the additional expression in the materialized view.
    Type: Grant
    Filed: October 15, 2019
    Date of Patent: July 5, 2022
    Assignee: Oracle International Corporation
    Inventors: Sabina Petride, Mohamed Ziauddin, Praveen T. J. Kumar, Huagang Li, Andrew Witkowski, Sankar Subramanian
  • Patent number: 11354310
    Abstract: Techniques are provided for using of zone maps to improve the performance of a much wider range of queries than those for which zone maps are currently used. Specifically, techniques are provided for using zone maps to improve performance of queries by providing aggregate values for a wide range of aggregate operations, including SUM, AVG, etc., providing aggregate values for aggregate queries that specify filter conditions, distinguishing between situations in which the aggregate values for a zone are invalid for pruning purposes and when the aggregate values are invalid for query-answering purposes, determining when aggregate values may be used in multi-table zone maps where the type of join specified by a query differs from the type of join used to generate the aggregate values in the zone map, and selecting among different aggregate values for the same zone based on the type of join specified in a query.
    Type: Grant
    Filed: May 23, 2018
    Date of Patent: June 7, 2022
    Assignee: Oracle International Corporation
    Inventor: Mohamed Ziauddin
  • Patent number: 11334567
    Abstract: Embodiments generate random walks through a directed graph that is represented in a relational database table. Each row of the graph table represents a directed edge in the graph and includes a source vertex and a destination vertex. Each row is further augmented to (a) indicate the number of outbound edges starting from the destination vertex in the row and (b) include an identifier that distinguishes the edge from other outbound edges starting from the same source vertex. An SQL query may be executed on the augmented graph table. Starting from a source vertex (starting vertex or the destination vertex of the previously selected hop) the query randomly selects a row of the graph table representing one of the outbound edges from the source vertex and adds the selected outbound edge as a row in a random walk table that represents the next hop in the random walk.
    Type: Grant
    Filed: August 16, 2019
    Date of Patent: May 17, 2022
    Assignee: Oracle International Corporation
    Inventors: Mohamed Ziauddin, Zhe Wu, Andrew Witkowski
  • Publication number: 20220114195
    Abstract: Techniques for the automatic creation and maintenance of zone maps are provided. In one technique, a set of data sets is identified. For each data set, a data set width is determined based on a maximum value in the data set and a minimum value in the data set. One or more zones within the data set are identified. For each zone, a zone width is determined based on a difference between a maximum value in that zone and a minimum value in that zone. An aggregate zone width is generated that is based on the zone width of each zone. Based on the data set width and the aggregate zone width, it is determined whether to automatically generate a zone map for the data set.
    Type: Application
    Filed: October 12, 2020
    Publication date: April 14, 2022
    Inventors: Mohamed Ziauddin, You Jung Kim, Venkatesh Sakamuri, Sankar Subramanian
  • Publication number: 20210191941
    Abstract: Techniques are provided for bitmap-based computation of a COUNT(DISTINCT) function, where the bitmaps are generated based on ranks of target expression values. According to an embodiment, the ranks are computed using the DENSE_RANK function. The bitmaps may be maintained in a materialized view. Bitmap data that represents the ranks for target expression values occurring in data for a given group is divided across multiple bucket bitmaps, each corresponding to a distinct sub-range of the ranks. According to an embodiment, target expression value ranks are computed relative to partitions of the target expression values. When these partitions correspond to a subset (not necessarily strict) of the target query grouping keys for a query rewrite, the resulting bitmaps allow computation of multiple levels of aggregation from the single set of bitmaps.
    Type: Application
    Filed: December 24, 2019
    Publication date: June 24, 2021
    Inventors: SABINA PETRIDE, MOHAMED ZIAUDDIN, PRAVEEN T.J. KUMAR
  • Publication number: 20210109930
    Abstract: Techniques are described for storing and maintaining, in a materialized view, bitmap data that represents a bitmap of each possible distinct value of an expression and rewriting a query for a count of distinct values of the expression using the materialized view. The materialized view contains bitmap data that represents a bitmap of each possible distinct value of a first expression, and aggregate values of additional expressions, and is stored in memory or on disk by a database system. The database system receives a query that requests a number of distinct values, of the first expression, and an aggregate value for an additional expression. In response, the database system, rewrites the query to: compute the number of distinct values by counting the bits in the bitmap data of the materialized view that are set to the first value, and obtains the aggregate value for the additional expression in the materialized view.
    Type: Application
    Filed: October 15, 2019
    Publication date: April 15, 2021
    Inventors: Sabina Petride, Mohamed Ziauddin, Praveen T.J. Kumar, Huagang Li, Andrew Witkowski, Sankar Subramanian
  • Publication number: 20210049171
    Abstract: Embodiments generate random walks through a directed graph that is represented in a relational database table. Each row of the graph table represents a directed edge in the graph and includes a source vertex and a destination vertex. Each row is further augmented to (a) indicate the number of outbound edges starting from the destination vertex in the row and (b) include an identifier that distinguishes the edge from other outbound edges starting from the same source vertex. An SQL query may be executed on the augmented graph table. Starting from a source vertex (starting vertex or the destination vertex of the previously selected hop) the query randomly selects a row of the graph table representing one of the outbound edges from the source vertex and adds the selected outbound edge as a row in a random walk table that represents the next hop in the random walk.
    Type: Application
    Filed: August 16, 2019
    Publication date: February 18, 2021
    Applicant: Oracle International Corporation
    Inventors: Mohamed Ziauddin, Zhe Wu, Andrew Witkowski