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: 20150081669Abstract: 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: ApplicationFiled: November 20, 2014Publication date: March 19, 2015Inventors: PETER BELKNAP, BENOIT DAGEVILLE, KARL DIAS, KHALED YAGOUB
-
Publication number: 20150006511Abstract: 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: ApplicationFiled: September 27, 2013Publication date: January 1, 2015Applicant: Oracle International CorporationInventors: Khaled Yagoub, Abdul Munir, Cecilia Gervasio Grant, Karl Dias, Benoit Dageville
-
Patent number: 8903801Abstract: 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: GrantFiled: August 8, 2008Date of Patent: December 2, 2014Assignee: Oracle International CorporationInventors: Peter Belknap, Benoit Dageville, Karl Dias, Khaled Yagoub
-
Publication number: 20140236921Abstract: 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: ApplicationFiled: April 11, 2014Publication date: August 21, 2014Applicant: Oracle International CorporationInventors: Peter Belknap, Benoit Dageville, Dinesh Das, Khaled Yagoub, Mohamed Zait, Mohamed Ziauddin
-
Patent number: 8700608Abstract: 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: GrantFiled: August 8, 2008Date of Patent: April 15, 2014Assignee: Oracle International CorporationInventors: Peter Belknap, Benoit Dageville, Dinesh Das, Khaled Yagoub, Mohamed Zait, Mohamed Ziauddin
-
Patent number: 8688689Abstract: 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: GrantFiled: June 30, 2010Date of Patent: April 1, 2014Assignee: Oracle International CorporationInventors: Hailing Yu, Peter Belknap, Benoit Dageville, Karl Dias, Khaled Yagoub
-
Patent number: 8341178Abstract: 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: GrantFiled: August 8, 2008Date of Patent: December 25, 2012Assignee: Oracle International CorporationInventors: Peter Belknap, Benoit Dageville, Karl Dias, Khaled Yagoub
-
Publication number: 20120005189Abstract: 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: ApplicationFiled: June 30, 2010Publication date: January 5, 2012Applicant: Oracle International CorporationInventors: Hailing Yu, Peter Belknap, Benoit Dageville, Karl Dias, Khaled Yagoub
-
Publication number: 20120005188Abstract: 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: ApplicationFiled: June 30, 2010Publication date: January 5, 2012Applicant: Oracle International CorporationInventors: Hailing Yu, Peter Belknap, Thierry Cruanes, Benoit Dageville, Karl Dias, Khaled Yagoub
-
Patent number: 7979422Abstract: 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: GrantFiled: July 30, 2008Date of Patent: July 12, 2011Assignee: Oracle International Corp.Inventors: Peter Belknap, Khaled Yagoub, Karl Dias, Benoit Dageville, Thierry Cruanes, Anupam Singh
-
Patent number: 7970755Abstract: 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: GrantFiled: July 2, 2008Date of Patent: June 28, 2011Assignee: Oracle Int'l. Corp.Inventors: Peter Belknap, Khaled Yagoub, Karl Dias, Benoit Dageville
-
Patent number: 7747606Abstract: 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: GrantFiled: September 7, 2004Date of Patent: June 29, 2010Assignee: Oracle International CorporationInventors: Benoit Dageville, Mohamed Ziauddin, Khaled Yagoub, Mohamed Zait, Dinesh Das, Karl Dias, Mark Ramacher, Leng Leng Tan
-
Patent number: 7664730Abstract: 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: GrantFiled: September 7, 2004Date of Patent: February 16, 2010Assignee: Oracle International CorporationInventors: Mohamed Ziauddin, Benoit Dageville, Mohamed Zait, Khaled Yagoub
-
Patent number: 7664778Abstract: 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: GrantFiled: September 7, 2004Date of Patent: February 16, 2010Assignee: Oracle International CorporationInventors: Khaled Yagoub, Benoit Dageville, Mohamed Ziauddin, Karl Dias
-
Publication number: 20100030758Abstract: 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: ApplicationFiled: July 30, 2008Publication date: February 4, 2010Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Peter Belknap, Khaled Yagoub, Karl Dias, Benoit Dageville, Thierry Cruanes, Anupam Singh
-
Publication number: 20100005340Abstract: 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: ApplicationFiled: July 2, 2008Publication date: January 7, 2010Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Peter Belknap, Khaled Yagoub, Karl Dias, Benoit Dageville
-
Patent number: 7634456Abstract: 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: GrantFiled: September 7, 2004Date of Patent: December 15, 2009Assignee: Oracle International CorporationInventors: Khaled Yagoub, Benoit Dageville, Mohamed Ziauddin, Mohamed Zait, Karl Dias
-
Publication number: 20090106306Abstract: 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: ApplicationFiled: August 8, 2008Publication date: April 23, 2009Inventors: Dinesh Das, Cetin Ozbutun, Hong Su, Mohamed Zait, Yali Zhu, Mohamed Ziauddin, Peter Belknap, Khaled Yagoub
-
Publication number: 20090106219Abstract: 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: ApplicationFiled: August 8, 2008Publication date: April 23, 2009Inventors: Peter Belknap, Benoit Dageville, Dinesh Das, Khaled Yagoub, Mohamed Zait, Mohamed Ziauddin
-
Publication number: 20090077017Abstract: 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: ApplicationFiled: August 8, 2008Publication date: March 19, 2009Inventors: Peter Belknap, Benoit Dageville, Karl Dias, Khaled Yagoub