Patents by Inventor Khaled Yagoub

Khaled Yagoub 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: 20150081669
    Abstract: Techniques are provided for a fully-automated process for tuning database query language statements that selects database query language statements for tuning, tunes the database query language statements and generates tuning recommendations, tests the tuning recommendations, and determines whether to implement the tuning recommendations based on the test results. The fully-automated tuning process may also automatically implement certain tuning recommendations and monitor the performance of the database query language statements for which tuning recommendations have been implemented.
    Type: Application
    Filed: November 20, 2014
    Publication date: March 19, 2015
    Inventors: PETER BELKNAP, BENOIT DAGEVILLE, KARL DIAS, KHALED YAGOUB
  • Publication number: 20150006511
    Abstract: Techniques for generating and processing composite active reports are provided. An active report is a report that can be displayed and interacted with at a client device even though the client device is not connected to a database from which data for the report originates. A composite active report is an active report that includes multiple reports embedded in the same file. Each report in a composite active report may be separately compressed to allow a client device to decompress a report on demand. A composite active report may include, for each report indicated in the composite active report, executable identification data that is used to retrieve, from a remote source, an executable that is used to generate, based on report data of the report, display data, which is displayed on a computer display of a client device.
    Type: Application
    Filed: September 27, 2013
    Publication date: January 1, 2015
    Applicant: Oracle International Corporation
    Inventors: Khaled Yagoub, Abdul Munir, Cecilia Gervasio Grant, Karl Dias, Benoit Dageville
  • Patent number: 8903801
    Abstract: Techniques are provided for a fully-automated process for tuning database query language statements that selects database query language statements for tuning, tunes the database query language statements and generates tuning recommendations, tests the tuning recommendations, and determines whether to implement the tuning recommendations based on the test results. The fully-automated tuning process may also automatically implement certain tuning recommendations and monitor the performance of the database query language statements for which tuning recommendations have been implemented.
    Type: Grant
    Filed: August 8, 2008
    Date of Patent: December 2, 2014
    Assignee: Oracle International Corporation
    Inventors: Peter Belknap, Benoit Dageville, Karl Dias, Khaled Yagoub
  • Publication number: 20140236921
    Abstract: Approaches, techniques, and mechanisms are disclosed for ensuring that a database command is executed according to a query plan that has been verified to be actually optimal. Except in rare circumstances, a database server does not execute a query plan unless it is first verified by the database server. The database server receives a request to execute a database command. The database server determines an unverified plan is the best plan for satisfying the request. Rather than risk the unknown behavior of an unverified plan, the database server instead satisfies the request according to a verified plan. Subsequently—for example as part of a scheduled job—the database server executes the unverified plan to determine performance statistics. Based at least on the performance statistics, the database server determines whether or not to verify the unverified plan. Techniques for concurrent and optimistic verifications are also disclosed.
    Type: Application
    Filed: April 11, 2014
    Publication date: August 21, 2014
    Applicant: Oracle International Corporation
    Inventors: Peter Belknap, Benoit Dageville, Dinesh Das, Khaled Yagoub, Mohamed Zait, Mohamed Ziauddin
  • Patent number: 8700608
    Abstract: Approaches, techniques, and mechanisms are disclosed for ensuring that a database command is executed according to a query plan that has been verified to be actually optimal. Except in rare circumstances, a database server does not execute a query plan unless it is first verified by the database server. The database server receives a request to execute a database command. The database server determines an unverified plan is the best plan for satisfying the request. Rather than risk the unknown behavior of an unverified plan, the database server instead satisfies the request according to a verified plan. Subsequently—for example as part of a scheduled job—the database server executes the unverified plan to determine performance statistics. Based at least on the performance statistics, the database server determines whether or not to verify the unverified plan. Techniques for concurrent and optimistic verifications are also disclosed.
    Type: Grant
    Filed: August 8, 2008
    Date of Patent: April 15, 2014
    Assignee: Oracle International Corporation
    Inventors: Peter Belknap, Benoit Dageville, Dinesh Das, Khaled Yagoub, Mohamed Zait, Mohamed Ziauddin
  • Patent number: 8688689
    Abstract: Techniques are provided for automatically recommending alternative execution plans for a SQL statement. Information pertaining to one or more execution plans for a SQL statement can be retrieved from a set of plan sources. The one or more execution plans can include the current execution plan for the statement and one or more historical execution plans. Based on the retrieved information, the performance of the one or more execution plans can be compared to each other. Based on the comparison, a recommendation can be provided to a user indicating that a particular execution plan (e.g., a historical execution plan) should be used in place of the current execution plan to execute the SQL statement.
    Type: Grant
    Filed: June 30, 2010
    Date of Patent: April 1, 2014
    Assignee: Oracle International Corporation
    Inventors: Hailing Yu, Peter Belknap, Benoit Dageville, Karl Dias, Khaled Yagoub
  • Patent number: 8341178
    Abstract: Techniques are provided for analyzing performance differences for a set of database query language statements on two different database systems. The performance analysis is based on quantitative measurements and estimates of the execution of the set of database query language statements on the two different database systems. This performance analysis process may be used by database administrators to predict impacts to performance due to a change in a database system.
    Type: Grant
    Filed: August 8, 2008
    Date of Patent: December 25, 2012
    Assignee: Oracle International Corporation
    Inventors: Peter Belknap, Benoit Dageville, Karl Dias, Khaled Yagoub
  • Publication number: 20120005189
    Abstract: Techniques for automatically recommending alternative execution plans for a SQL statement. In one set of embodiments, information pertaining to one or more execution plans for a SQL statement can be retrieved from a set of plan sources. The one or more execution plans can include the current execution plan for the statement and one or more historical execution plans. Based on the retrieved information, the performance of the one or more execution plans can be compared to each other. Based on the comparison, a recommendation can be provided to a user indicating that a particular execution plan (e.g., a historical execution plan) should be used in place of the current execution plan to execute the SQL statement.
    Type: Application
    Filed: June 30, 2010
    Publication date: January 5, 2012
    Applicant: Oracle International Corporation
    Inventors: Hailing Yu, Peter Belknap, Benoit Dageville, Karl Dias, Khaled Yagoub
  • Publication number: 20120005188
    Abstract: Techniques for automatically recommending parallel execution of a SQL statement. In one set of embodiments, a first determination can be made regarding whether a SQL statement can be executed in parallel. Further, a second determination can be made regarding whether executing the SQL statement in parallel is faster than executing the statement in serial by a predetermined factor. If the first determination and second determination are positive (i.e., the statement can be executed in parallel and parallel execution is faster by the predetermined factor), a recommendation can be provided indicating that the SQL statement should be executed in parallel. In some embodiments, the recommendation can include a report specifying the degree of performance improvement gained from parallel execution, additional system resources consumed by parallel execution, and other statistics pertaining to the recommended parallel execution plan.
    Type: Application
    Filed: June 30, 2010
    Publication date: January 5, 2012
    Applicant: Oracle International Corporation
    Inventors: Hailing Yu, Peter Belknap, Thierry Cruanes, Benoit Dageville, Karl Dias, Khaled Yagoub
  • Patent number: 7979422
    Abstract: Systems, methods, and other embodiments associated with hybrid optimization strategies in automatic SQL tuning are described. One example method includes receiving a first (e.g., cost-based) execution plan for a user structured query language statement (User SQL) from a first (e.g., cost-based) optimizer. The example method may also include receiving a second (e.g., rules-based) execution plan for the User SQL from a second, different (e.g., rules-based) query optimizer. The method may include identifying a preferred execution plan based on data produced by test executing the execution plans in a reproduced execution environment that reproduces at least a portion of an execution environment in which the user SQL runs. The method may also include controlling a database to execute the User SQL using the preferred execution plan.
    Type: Grant
    Filed: July 30, 2008
    Date of Patent: July 12, 2011
    Assignee: Oracle International Corp.
    Inventors: Peter Belknap, Khaled Yagoub, Karl Dias, Benoit Dageville, Thierry Cruanes, Anupam Singh
  • Patent number: 7970755
    Abstract: Systems, methods, and other embodiments associated with test execution of user SQL in server code are described. One example method includes producing a reproduced execution environment that reproduces a portion of an execution environment in which a user SQL runs. The example method may also include running the user SQL in the reproduced execution environment and capturing a statistic associated with performance of the user SQL while the user SQL runs in the reproduced execution environment. The method may conclude by storing, displaying, and/or providing a signal concerning the statistic.
    Type: Grant
    Filed: July 2, 2008
    Date of Patent: June 28, 2011
    Assignee: Oracle Int'l. Corp.
    Inventors: Peter Belknap, Khaled Yagoub, Karl Dias, Benoit Dageville
  • Patent number: 7747606
    Abstract: A method for receiving a database query language statement and performance information about the statement at an optimizer and generating one or more tuning actions for the statement with the performance information is disclosed.
    Type: Grant
    Filed: September 7, 2004
    Date of Patent: June 29, 2010
    Assignee: Oracle International Corporation
    Inventors: Benoit Dageville, Mohamed Ziauddin, Khaled Yagoub, Mohamed Zait, Dinesh Das, Karl Dias, Mark Ramacher, Leng Leng Tan
  • Patent number: 7664730
    Abstract: A method, apparatus, and computer program product with a persistent data structure for storing a profile of tuning information for a query statement separately from the query statement. The profile in the persistent data structure includes a statement signature to identify the query statement, and an action to tune the statement.
    Type: Grant
    Filed: September 7, 2004
    Date of Patent: February 16, 2010
    Assignee: Oracle International Corporation
    Inventors: Mohamed Ziauddin, Benoit Dageville, Mohamed Zait, Khaled Yagoub
  • Patent number: 7664778
    Abstract: A method and system for storing one or more database query language statements and performance information for each query language statement as a persistent database object. In one or more embodiments, the method and system stores the resource intensive statements and the performance information for each resource intensive statement as a second persistent database object.
    Type: Grant
    Filed: September 7, 2004
    Date of Patent: February 16, 2010
    Assignee: Oracle International Corporation
    Inventors: Khaled Yagoub, Benoit Dageville, Mohamed Ziauddin, Karl Dias
  • Publication number: 20100030758
    Abstract: Systems, methods, and other embodiments associated with hybrid optimization strategies in automatic SQL tuning are described. One example method includes receiving a first (e.g., cost-based) execution plan for a user structured query language statement (User SQL) from a first (e.g., cost-based) optimizer. The example method may also include receiving a second (e.g., rules-based) execution plan for the User SQL from a second, different (e.g., rules-based) query optimizer. The method may include identifying a preferred execution plan based on data produced by test executing the execution plans in a reproduced execution environment that reproduces at least a portion of an execution environment in which the user SQL runs. The method may also include controlling a database to execute the User SQL using the preferred execution plan.
    Type: Application
    Filed: July 30, 2008
    Publication date: February 4, 2010
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Peter Belknap, Khaled Yagoub, Karl Dias, Benoit Dageville, Thierry Cruanes, Anupam Singh
  • Publication number: 20100005340
    Abstract: Systems, methods, and other embodiments associated with test execution of user SQL in server code are described. One example method includes producing a reproduced execution environment that reproduces a portion of an execution environment in which a user SQL runs. The example method may also include running the user SQL in the reproduced execution environment and capturing a statistic associated with performance of the user SQL while the user SQL runs in the reproduced execution environment. The method may conclude by storing, displaying, and/or providing a signal concerning the statistic.
    Type: Application
    Filed: July 2, 2008
    Publication date: January 7, 2010
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Peter Belknap, Khaled Yagoub, Karl Dias, Benoit Dageville
  • Patent number: 7634456
    Abstract: A method to addresses structural performance problems of a database query language statement is provided. The method includes receiving a database query language statement at an optimizer, evaluating choices in a search space to generate an execution plan for the statement, and producing annotations to record one or more reasons for selecting each choice while generating the execution plan.
    Type: Grant
    Filed: September 7, 2004
    Date of Patent: December 15, 2009
    Assignee: Oracle International Corporation
    Inventors: Khaled Yagoub, Benoit Dageville, Mohamed Ziauddin, Mohamed Zait, Karl Dias
  • Publication number: 20090106306
    Abstract: Approaches, techniques, and mechanisms are disclosed for maintaining a set of baseline query plans for a database command. Except in rare circumstances, a database server may only execute a command according to a baseline plan, even if the database server predicts that a different plan has a lower cost. The set of baseline plans are plans that, for one reason or another, have been determined to provide acceptable actual performance in at least one execution context. When the database server receives a request to execute a particular command, the database server, if possible, always executes the command according to the lowest predicted cost baseline plan. The database server may evolve the plan baseline to include additional plans by generating and testing new plans in response to new requests to execute the database command, or as part of a query optimization or tuning process.
    Type: Application
    Filed: August 8, 2008
    Publication date: April 23, 2009
    Inventors: Dinesh Das, Cetin Ozbutun, Hong Su, Mohamed Zait, Yali Zhu, Mohamed Ziauddin, Peter Belknap, Khaled Yagoub
  • Publication number: 20090106219
    Abstract: Approaches, techniques, and mechanisms are disclosed for ensuring that a database command is executed according to a query plan that has been verified to be actually optimal. Except in rare circumstances, a database server does not execute a query plan unless it is first verified by the database server. The database server receives a request to execute a database command. The database server determines an unverified plan is the best plan for satisfying the request. Rather than risk the unknown behavior of an unverified plan, the database server instead satisfies the request according to a verified plan. Subsequently—for example as part of a scheduled job—the database server executes the unverified plan to determine performance statistics. Based at least on the performance statistics, the database server determines whether or not to verify the unverified plan. Techniques for concurrent and optimistic verifications are also disclosed.
    Type: Application
    Filed: August 8, 2008
    Publication date: April 23, 2009
    Inventors: Peter Belknap, Benoit Dageville, Dinesh Das, Khaled Yagoub, Mohamed Zait, Mohamed Ziauddin
  • Publication number: 20090077017
    Abstract: Techniques are provided for analyzing performance differences for a set of database query language statements on two different database systems. The performance analysis is based on quantitative measurements and estimates of the execution of the set of database query language statements on the two different database systems. This performance analysis process may be used by database administrators to predict impacts to performance due to a change in a database system.
    Type: Application
    Filed: August 8, 2008
    Publication date: March 19, 2009
    Inventors: Peter Belknap, Benoit Dageville, Karl Dias, Khaled Yagoub