Query Execution Plan Patents (Class 707/718)
  • Publication number: 20140207756
    Abstract: Methods for optimizing query performance in a relational database management system. A query is received at the relational database management system. It is determined whether the query is expected to be a long-running query. In response to determining that the query is expected to be a long-running query, a full table scan is started in order to fetch records needed to satisfy the query from the relational database management system. In parallel with conducting the full table scan, a performance object is built, which is capable of satisfying the query in the relational database management system. In response to completing the construction of the performance object prior to completing the full table scan, the full table scan is stopped and the newly built performance object is used instead to satisfy the query.
    Type: Application
    Filed: March 19, 2014
    Publication date: July 24, 2014
    Applicant: International Business Machines Corporation
    Inventors: David L. Kaminsky, Ramya H. Prasad, Girish Sundaram
  • Publication number: 20140207755
    Abstract: Systems and methods are disclosed for managing a multi-store execution environment by applying opportunistic materialized views to improve workload performance and executing a plan on multiple database engines to increase query processing speed by leveraging unique capabilities of each engine by enabling stages of a query to execute on multiple engines, and by moving materialized views across engines.
    Type: Application
    Filed: November 6, 2013
    Publication date: July 24, 2014
    Applicant: NEC Laboratories America, Inc.
    Inventors: Vahit Hakan Hacigumus, Jagan Sankaranarayanan, Jeffrey Paul LeFevre, Junichi Tatemura, Neoklis Polyzotis
  • Patent number: 8788484
    Abstract: Certain example embodiments described herein relate to techniques for user feedback driven dynamic query rewriting in complex event processing (CEP) environments. In certain example embodiments, the adjustment of already-initiated queries may be permitted during runtime in order to help continuously or substantially continuously meet a user's requirements. In certain example embodiments, parameters of a query may be adapted dynamically, e.g., without the need to redeploy it. Adaptable parameters in certain example embodiments may be identified and/or based on, for instance, an automatic determination from original query creation, user specifications, the way in which a user interacts with a user interface for visualizing the results of queries, etc.
    Type: Grant
    Filed: December 27, 2010
    Date of Patent: July 22, 2014
    Assignee: Software AG
    Inventors: Michael Cammert, Christoph Heinz, Jürgen Krämer, Tobias Riemenschneider
  • Patent number: 8788483
    Abstract: In a method and an apparatus (1) for searching in a memory-efficient manner for at least one query data element in a graph (2A), only as many data elements are read into a memory as are required for their subsequent processing. Increased memory efficiency is ensured as a result of this. The proposed apparatus is particularly suitable for use in terminals having very limited memory, in particular in mobile terminals.
    Type: Grant
    Filed: June 21, 2010
    Date of Patent: July 22, 2014
    Assignee: Siemens Aktiengesellschaft
    Inventors: Jörg Heuer, Roland Kind, Richard Kuntschke, Daniel Peintner
  • Patent number: 8775412
    Abstract: A self-healing database engine and optimizer framework support automatically responding to execution errors to allow continued execution of a query plan. Upon encountering an execution error, the database engine automatically initiates a rebuilding of the query plan and executes the rebuilt execution plan. If an error is encountered in the rebuilt query plan then the query implementation methods are analyzed. If a query function is identified for which an alternative implementation method is available, then this alternative implementation method is substituted to create a new query plan. The new query plan is then executed to determine if the error is corrected.
    Type: Grant
    Filed: January 8, 2004
    Date of Patent: July 8, 2014
    Assignee: International Business Machines Corporation
    Inventors: Paul Reuben Day, Brian Robert Muras, Anne Marie Ryg
  • Patent number: 8775413
    Abstract: A computer-implemented method, apparatus and article of manufacture for optimizing a database query. A query execution plan is generated for the database query, which may be stored in an in-line query capture database. Execution of the query execution plan may be monitored in order to generate performance information, which also may be stored in the in-line query capture database. The data stored in in-line query capture database may be used during the initial generation of query execution plans, as well as for the re-optimization of a query execution plan, during the execution of the query execution plan.
    Type: Grant
    Filed: August 22, 2008
    Date of Patent: July 8, 2014
    Assignee: Teradata US, Inc.
    Inventors: Douglas P. Brown, Anita Richards, Thomas P. Julien, Louis M. Burger
  • Publication number: 20140188841
    Abstract: Queries may be processed more efficiently in an massively parallel processing (MPP) database by locally optimizing the global execution plan. The global execution plan and a semantic tree may be provided to MPP data nodes by an MPP coordinator. The MPP data nodes may then use the global execution plan and the semantic tree to generate a local execution plan. Thereafter, the MPP data nodes may select either the global execution plan or the local execution plan is accordance with a cost evaluation.
    Type: Application
    Filed: December 29, 2012
    Publication date: July 3, 2014
    Applicant: FUTUREWEI TECHNOLOGIES, INC.
    Inventors: Yang Sun, Qingqing Zhou, Mohan Singamshetty
  • Patent number: 8768915
    Abstract: A database system and a method of optimizing cross-database query. The database system includes a plurality of databases. At least two of the databases are stored with one or more data collections composed of tables with the same structure. A federated view of the data collection is created on each of the databases. A request routing layer for routing, in response to a query request crossing the data collections, the query request crossing the data collections to one of the at least two databases according to a predetermined routing rule, so as to query by using the federated view of the database.
    Type: Grant
    Filed: October 29, 2010
    Date of Patent: July 1, 2014
    Assignee: International Business Machines Corporation
    Inventors: Bo Gao, Chang Jie Guo, Zhong Bo Jiang, Wei Sun, Kai Tang, Feng Juan Wang
  • Publication number: 20140181075
    Abstract: Techniques for query statistics inheritance are provided. Statistics for a database are used to determine selectivity estimates for sparse joins and tables being joined together within a given query. These statistics are inherited up to the given query along with the selectivity estimates and provided to a database optimizer to use when developing query plans and selecting an optimal query plan for the given query.
    Type: Application
    Filed: December 20, 2012
    Publication date: June 26, 2014
    Applicant: Teradata US, Inc.
    Inventors: Rama Krishna Korlapati, Haiyan Chen
  • Publication number: 20140181079
    Abstract: Based on one or more predicated results (e.g., estimations of the actual results) associated with one or more iterations and/or sub-queries of an iterative or recursive database query, it can be determined whether to use an execution plan (e.g., a current execution plan used to execute one or more iterations) to execute one or more other iterations and/or sub-queries of the iterative or recursive database query. Consequently, use of the execution plan to execute the one or more other iterations and/or sub-queries of the iterative or recursive database query can be disallowed. As a result, the iterative or recursive database query can be executed more efficiently. The determination of whether to use an execution plan can, for example, be performed by determining whether an actual result obtained by executing one or more iterations differs or diverges more than a determined value from an estimated result of the same iteration(s).
    Type: Application
    Filed: December 20, 2012
    Publication date: June 26, 2014
    Applicant: Teradata Corporation
    Inventors: Ahmad Said Ghazal, Dawit Seid
  • Publication number: 20140181078
    Abstract: An execution plan for executing one or more iterations of recursive database queries can be generated in accordance with one aspect of the invention. For example, in accordance with one embodiment of the invention, one or more cardinalities (results or size of results, including intermediate results) associated with one or more iterations can be estimated. This estimation can, for example, by performed by using a sampling or sampling-based algorithm. In addition, a plan generated for execution of one or more iteration of a recursive query can be modified or replaced by comparing the actual cardinality with its estimation. As a result, the first one or more iterations may be executed using a first plan but the subsequent one or more iterations may use a modified or different execution plan.
    Type: Application
    Filed: December 20, 2012
    Publication date: June 26, 2014
    Inventor: Teradata Corporation
  • Publication number: 20140181074
    Abstract: The number of iterations or self joins required to execute a recursive database query can be estimated. It will be appreciated that this estimation can be used to plan the execution of the recursive query and can be made in various ways and for various applications. By way of example, an estimated number of iterations or self joins required to execute a recursive database query (e.g., 12) can be used as a basis to determine or plan an optimal execution plan. For example, given an estimated twelve (12) iterations, an execution plan can be determined for executing at least the first three (3) iterations or for executing every there (3) iterations, whereas for an estimated twenty (21) iterations required to complete a recursive database query, an execution plan can be determined for the first five (5) or six (6) iterations, and so on.
    Type: Application
    Filed: December 20, 2012
    Publication date: June 26, 2014
    Applicant: Teradata Corporation
    Inventors: Ahmad Said Ghazal, Dawit Seid
  • Patent number: 8762367
    Abstract: A computer-implemented method, apparatus and article of manufacture for optimizing a database query. A query execution plan for the database query is generated using estimated cost information; one or more steps of the query execution plan are executed to retrieve data from a database stored on the computer system. Actual cost information is generated for each of the executed steps, and the estimated cost information is re-calculated using the actual cost information. One or more resource allocation rules defined on one or more steps of the query execution plan are executed, based on the estimated cost information, wherein the resource allocation rules include one or more defined actions. The estimated cost information may be re-calculated using the actual cost information when confidence in the estimated cost information is low, but the estimated cost information may not be re-calculated when confidence in the estimated cost information is high.
    Type: Grant
    Filed: December 8, 2008
    Date of Patent: June 24, 2014
    Assignee: Teradata US, Inc.
    Inventors: Louis Burger, Thomas Julien, Douglas Brown
  • Publication number: 20140172823
    Abstract: Methods and apparatus, including computer program products, implementing and using techniques for optimizing query performance in a relational database management system. A query is received at the relational database management system. It is determined whether the query is expected to be a long-running query. In response to determining that the query is expected to be a long-running query, a full table scan is started in order to fetch records needed to satisfy the query from the relational database management system. In parallel with conducting the full table scan, a performance object is built, which is capable of satisfying the query in the relational database management system. In response to completing the construction of the performance object prior to completing the full table scan, the full table scan is stopped and the newly built performance object is used instead to satisfy the query.
    Type: Application
    Filed: December 19, 2012
    Publication date: June 19, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: David L. Kaminsky, Ramya H. Prasad, Girish Sundaram
  • Publication number: 20140164355
    Abstract: A system and method for modifying the processing within a streaming application are disclosed. The method may determine one or more parameters for a tuple at a first stream operator. The one or more parameters may represent a processing history of the tuple at the first stream operator. The method may associate the one or more parameters with the tuple metadata. A second stream operator may modify the processing of the tuple if the parameter falls outside a threshold.
    Type: Application
    Filed: December 6, 2012
    Publication date: June 12, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Michael J. Branson, John M. Santosuosso
  • Publication number: 20140164356
    Abstract: A system and method for modifying the processing within a streaming application are disclosed. The method may determine one or more parameters for a tuple at a first stream operator. The one or more parameters may represent a processing history of the tuple at the first stream operator. The method may associate the one or more parameters with the tuple metadata. A second stream operator may modify the processing of the tuple if the parameter falls outside a threshold.
    Type: Application
    Filed: February 26, 2013
    Publication date: June 12, 2014
    Applicant: International Business Machines Corporation
    Inventors: Michael J. Branson, John M. Santosuosso
  • Publication number: 20140164353
    Abstract: The present invention extends to methods, systems, and computer program products for optimizing parallel queries using interesting distributions. For each logical operator in an SQL server MEMO, in a top down manner from a root operator to the leaf operators, interesting distributions for the operators can be identified based on the properties of the operators. Identified interesting distributions can be propagated down to lower operators by annotating the lower operators with the interesting distributions. Thus, a SQL server MEMO can be annotated with interesting distributions propagated top down from root to leaf logical operators to generate an annotated SQL server MEMO. Parallel query plans can then be generated from the annotated SQL server MEMO in a bottom up manner from leaf operators to a root operator. Annotated interesting properties can be used to prune operators, thereby facilitating a more tractable search space for a parallel query plan.
    Type: Application
    Filed: December 11, 2012
    Publication date: June 12, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: Srinath Shankar, Rimma V. Nehme
  • Publication number: 20140156636
    Abstract: A method, apparatus, and system for dynamic parallel aggregation with hybrid batch flushing are provided. Record sources of an aggregation operator in a query execution plan may dynamically aggregate using the same aggregation operator. The dynamic aggregation creates a batch of aggregation records from an input source, which are then used to aggregate further records from the input source. If a record from the input source is not matched to an aggregation record in the batch, then the record is passed to the next operator. In this manner, records are aggregated ahead of time at a record source to reduce the number of records passed between operators, reducing the impact of network I/O between nodes of a parallel processing system. By adjusting the contents of the batch according to aggregation performance monitored during run-time, hybrid batch flushing can be implemented to adapt to changing data patterns and skewed values.
    Type: Application
    Filed: December 4, 2012
    Publication date: June 5, 2014
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Srikanth Bellamkonda, Huagang Li
  • Patent number: 8745036
    Abstract: A system, method, and computer-readable medium that provide automatic and dynamic control of optimizer settings in a large complex system environment are provided. The optimizer may pursue more aggressive query execution plans and switch to a more conservative approach in cases of actual observed inaccuracies.
    Type: Grant
    Filed: July 7, 2009
    Date of Patent: June 3, 2014
    Assignee: Teradata US, Inc.
    Inventor: Louis Burger
  • Patent number: 8745034
    Abstract: A search server system having one or more processors and memory receives a search query including filter criteria and sort criteria from a client. The filter criteria specify a plurality of operands and a logical relationship. The sort criteria specify a predefined sort order. In response to the search query the server identifies a plurality of index portions sorted in the predefined sort order. The server identifies one or more matching entities by comparing identifiers for index entries matching filter(s) of a first operand with identifiers for index entries matching filter(s) of a second operand and sequentially retrieving the identifiers for the matching index entries corresponding to matching entities from the plurality of index portions in the predefined sort order. The server then transmits search results including representations of matching entities to the client.
    Type: Grant
    Filed: May 27, 2011
    Date of Patent: June 3, 2014
    Assignee: Google Inc.
    Inventors: Alfred R. K. Fuller, Max C. Ross
  • Patent number: 8744839
    Abstract: Target word recognition includes: obtaining a candidate word set and corresponding characteristic computation data, the candidate word set comprising text data, and characteristic computation data being associated with the candidate word set; performing segmentation of the characteristic computation data to generate a plurality of text segments; combining the plurality of text segments to form a text data combination set; determining an intersection of the candidate word set and the text data combination set, the intersection comprising a plurality of text data combinations; determining a plurality of designated characteristic values for the plurality of text data combinations; based at least in part on the plurality of designated characteristic values and according to at least a criterion, recognizing among the plurality of text data combinations target words whose characteristic values fulfill the criterion.
    Type: Grant
    Filed: September 22, 2011
    Date of Patent: June 3, 2014
    Assignee: Alibaba Group Holding Limited
    Inventors: Haibo Sun, Yang Yang, Yining Chen
  • Patent number: 8745021
    Abstract: An enterprise business intelligence system includes a data access service. In one example, a method comprises receiving, with a data access service, a query and a report specification from an application, wherein the data access service is positioned between the application and a data source; creating a run tree that comprises a sequence of executable decoration nodes; executing the query on the data source, thereby providing a query result set comprising query results drawn from the data source that are responsive to the query; and executing the sequence of decoration nodes on the query result set. The decoration nodes modify the query result set, thereby producing a decorated result set based on the query result set and the decoration nodes. Producing the decorated result set comprises associating members or values in the query results with corresponding positions or calculated members in the report specification.
    Type: Grant
    Filed: October 18, 2011
    Date of Patent: June 3, 2014
    Assignee: International Business Machines Corporation
    Inventors: David B. Cushing, Robin N. Grosset, Charles Ng, Martin Petitclerc
  • Patent number: 8745037
    Abstract: An optimizer uses comprehensive reasoning regarding partitioning, sorting, and grouping properties for query optimization. When optimizing an input query expression, logical exploration generates alternative logical expressions. Physical optimization explores physical operator alternatives for logical operators. Required partitioning, sorting, and grouping properties of inputs to physical operators are determined. Additionally, delivered partitioning, sorting, and grouping properties of outputs from physical operators are determined. In some embodiments, enforcer rules are employed to modify structural property requirements to introduce alternatives for consideration. Property matching identifies valid execution plans in which the delivered partitioning, sorting, and grouping properties satisfy corresponding required partitioning, sorting, and grouping properties. An execution plan having the lowest cost is selected as the optimized execution plan.
    Type: Grant
    Filed: December 17, 2009
    Date of Patent: June 3, 2014
    Assignee: Microsoft Corporation
    Inventors: Jingren Zhou, Pre-Ake Larson, Ronnie Ira Chaiken
  • Patent number: 8738609
    Abstract: Node sequence data, such as website visitation records, are filtered, analyzed, and summarized in reports. An administrator can designate particular target paths of interest in terms of a checkpoint node sequence. Node sequences are filtered based on the checkpoint node sequence, without regard to any additional or tangential nodes appearing in the sequences. In addition, node sequences can be specified in terms of specific nodes of interest along with wild cards. Reports depict the relative frequency of occurrence of node sequences using visual indicators such as line thickness and/or color.
    Type: Grant
    Filed: March 2, 2006
    Date of Patent: May 27, 2014
    Assignee: Adobe Systems Incorporated
    Inventors: Brett Error, John Pestana
  • Publication number: 20140136512
    Abstract: Embodiments of the present invention provide a method, system and computer program product for pre-migration performance prediction of a database management system (DBMS). In an embodiment of the invention, a method for pre-migration performance prediction of a DBMS can include executing a calibration workload in a target DBMS to produce a conversion factor of cost of executing the calibration workload to temporal performance of executing the calibration workload. The method also can include subsequently submitting a sample workload from a database of a source DBMS for evaluation of cost of execution on an empty replica of the database in the target DBMS. Finally, the method can include predicting a temporal performance of the sample workload in the target DBMS as a product of the conversion factor and the cost of execution of the sample workload on the empty replica of the database in the target DBMS.
    Type: Application
    Filed: November 9, 2012
    Publication date: May 15, 2014
    Inventors: Austin Clifford, Enda McCallig
  • Publication number: 20140136514
    Abstract: The present invention includes a method for providing parameterized queries in complex event processing (CEP). The method includes providing a query template which includes one or more bind variables, providing sets of parameters corresponding to the one or more bind variables, and parsing the query template to determine positions of the one or more bind variables. The method further includes scanning the provided sets of parameters to determine which of the sets of parameters are to be bound to the one or more bind variables, binding the one or more bind variables which are determined to be bound to the sets of parameters, and substituting the bound one or more bind variables with the corresponding sets of parameters. The method further includes injecting all incarnations of the parameterized queries into the system, and one template/parameterized query is configured to run them all.
    Type: Application
    Filed: November 12, 2013
    Publication date: May 15, 2014
    Applicant: Oracle International Corporation
    Inventors: Parul Jain, Vikram Shukla, Anand Srinivasan, Alexandre de Castro Alves, Eric Hsiao
  • Publication number: 20140136513
    Abstract: A database system maintains a feature set of a modern database system while operating directly on raw data files. Systems may use an adaptive indexing mechanism that maintains positional information to provide efficient access to raw data files, a flexible caching structure, and techniques for selective parsing and selective tokenizing. In doing so, possible performance bottlenecks associated with repeated parsing, tokenizing, and expensive data type conversion costs can be overcome.
    Type: Application
    Filed: November 15, 2012
    Publication date: May 15, 2014
    Applicant: Ecole Polytechnique Fédérale de Lausanne (EPFL)
    Inventors: Anastasia Ailamaki, Stratos Idreos, Ioannis Alagiannis, Renata Borovica, Miguel Sergio De Oliveira Branco
  • Publication number: 20140136515
    Abstract: A database management method generates an execution plan with respect to a factorized character string generated by factoring an execution value list of a query and storing the factorized character string and an execution plan identifier associated with the factorized character string. The method includes receiving a factorized character string generated from a query; determining whether the factorized character string is stored in a memory; transmitting an execution plan identifier matching the factorized character string stored in the memory when the factorized character string is stored in the memory; generating and transmitting an execution plan identifier with respect to an execution plan of the factorized character string when the factorized character string is not stored in the memory; receiving a query request consisting of the execution plan identifier and an execution value list included in the query; and providing a query result obtained using the query request.
    Type: Application
    Filed: January 23, 2014
    Publication date: May 15, 2014
    Applicant: NHN BUSINESS PLATFORM CORPORATION
    Inventors: Kyung Sik SEO, Ki Eun PARK
  • Patent number: 8719257
    Abstract: In various embodiments, a semantic space associated with a corpus of electronically stored information (ESI) may be created and used for concept searches. Documents (and any other objects in the ESI, in general) may be represented as vectors in the semantic space. Vectors may correspond to identifiers, such as, for example, indexed terms. The semantic space for a corpus of ESI can be used in information filtering, information retrieval, indexing, and relevancy rankings.
    Type: Grant
    Filed: February 16, 2011
    Date of Patent: May 6, 2014
    Assignee: Symantec Corporation
    Inventor: Venkat Rangan
  • Patent number: 8719256
    Abstract: A system and method of processing a request including improving usage and/or performance of resources is disclosed. Information relating to a user request may be provided to one or more resources which process the information and provide a result. A result and/or other information may be provided to a human assistant or guide who may process information to produce a result and/or review a result(s). Information provided by a guide may be processed and provided to a resource, which may improve the performance of a resource. A resource(s) and/or a guide(s) may be selected and/or provided with activities based on ratings and/or rankings associated with a request, which may optimize usage of system resources. Information obtained may be provided for various purposes.
    Type: Grant
    Filed: May 1, 2009
    Date of Patent: May 6, 2014
    Assignee: ChaCha Search, Inc
    Inventors: Scott A. Jones, Thomas E. Cooper, Mark Stephen Malseed, Jeffrey Glen Jockisch, Mark Gamache, Michael B. Burroughs
  • Patent number: 8719255
    Abstract: A method and system for determining interest levels of online content based on rates of change of content access traffic. According to one embodiment, a method may include detecting content request traffic directed to a content source, determining a time rate of change of said content request traffic, and determining an indication of content interest associated with the content source, where the indication is dependent upon the time rate of change of the content request traffic. The method may further include storing the indication of content interest on a computer-accessible medium.
    Type: Grant
    Filed: September 28, 2005
    Date of Patent: May 6, 2014
    Assignee: Amazon Technologies, Inc.
    Inventors: Elmore Eugene Pope, Brad E. Marshall
  • Patent number: 8719073
    Abstract: A categorizer produces a first measure regarding cases associated with an issue. Information regarding additional cases associated with the issue is received after one or more events have occurred with respect to the issue. Based on further output from the categorizer, a second measure is produced regarding the additional cases associated with the issue.
    Type: Grant
    Filed: August 25, 2005
    Date of Patent: May 6, 2014
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Evan R. Kirshenbaum, Henri J. Suermondt, George H. Forman
  • Patent number: 8712972
    Abstract: System, method, computer program product embodiments and combinations and sub-combinations thereof for tuning query execution performance in a database management system are described. In an aspect, query optimization in a database management system (DBMS) with awareness of limited resource usage includes identifying limited resource usage for each possible plan being considered for query execution by a query engine. A determination of whether any possible plan has limited resource usage that does not exceed a threshold level is made, and when at least one possible plan does not exceed the threshold level, the identified limited resource usage is included as a consideration during plan selection by the query engine. In an embodiment, temporary database usage is identified for each possible plan.
    Type: Grant
    Filed: September 22, 2009
    Date of Patent: April 29, 2014
    Assignee: Sybase, Inc.
    Inventors: Prateem Mandal, Edwin Anthony Seputis
  • Patent number: 8712999
    Abstract: A computer-implemented method for generating online search results includes receiving, over the Internet, referring URL data including a query, and a network site ID for a network site that was visited based on third party search engine analysis of the query; generating indexed query and network site data based on the received referring URL data and network site; receiving a new query from a user; determining a network site relevant to the new query based on the indexed query and network site data; and displaying to the user a link to the network site. Systems for generating online search results are also disclosed.
    Type: Grant
    Filed: June 9, 2011
    Date of Patent: April 29, 2014
    Assignee: AOL Inc.
    Inventors: Ian Holsman, Vaijanath N. Rao
  • Patent number: 8712993
    Abstract: A database system is able to receive a query containing a horizontal aggregate function. In response to the query containing the horizontal aggregate function, aggregate values are produced in a horizontal format. In general, the query can contain both horizontal (new) aggregate functions and vertical (standard) aggregate functions.
    Type: Grant
    Filed: June 9, 2004
    Date of Patent: April 29, 2014
    Assignee: Teradata US, Inc.
    Inventor: Carlos Ordonez
  • Publication number: 20140114952
    Abstract: The present invention extends to methods, systems, and computer program products for optimizing queries of parallel databases. Queries can be partially optimized at an optimizer that is unaware of its use to optimize queries for parallel processing. The optimizer can produce a data structure (e.g., a SQL Server MEMO) that encapsulates a logical serial plan search space. The logical serial plan search space may not incorporate any notion of parallelism into the plan space itself. A parallel-aware optimizer can parallelize the logical serial plan search space by augmenting the data structure (e.g., transforming the SQL Server MEMO into a parallel MEMO). Augmentation can be with data movement operations that move data associated one or more compute nodes in a distributed architecture. Cost estimates can be calculated for the operations contained in the parallelized data structure. The parallel plan with the lowest estimated cost can be selected for the query.
    Type: Application
    Filed: October 23, 2012
    Publication date: April 24, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: Eric R. Robinson, Alan Dale Halverson, Rimma V. Nehme, Srinath Shankar
  • Publication number: 20140108861
    Abstract: A system and method for performing distributed execution of database queries includes a query server that receives a query to be executed on a database, forms a query plan based on the query, assigns tasks to task slots on a plurality of worker nodes in a cluster, and, upon receipt of a notification that a task has completed on a worker node, immediately assigns an unassigned task to a free task slot on that worker node, such that the task may begin executing on that worker node substantially immediately thereafter. The task slots on worker nodes include pools of resources that run tasks without start-up overhead.
    Type: Application
    Filed: October 15, 2013
    Publication date: April 17, 2014
    Inventors: Daniel Abadi, Kamil Bajda-Pawlikowski, Rebecca Schlussel, Philip Wickline
  • Patent number: 8700606
    Abstract: Methods for accessing impact analysis repositories and transaction-refinement index for each of the impact analysis repositories. According to the obtained transaction-refinement index, associating the combined repository with information from the most transaction refined impact analysis repository. Associating the combined repository with information from the less transaction refined impact analysis repository in the case of a request to insert or delete a table record for tables that do not contain any impacted transaction in the more transaction refined impact analysis repository. And associating the combined repository with information from the less transaction refined impact analysis repository in the case of a request to update a table record for table columns that do not contain any impacted transaction in the more transaction refined impact analysis repository.
    Type: Grant
    Filed: October 14, 2012
    Date of Patent: April 15, 2014
    Assignee: Panaya Ltd.
    Inventors: Yossi Cohen, Mati Cohen, Nurit Dor, Dror Weiss, Roy Armoni
  • Patent number: 8700655
    Abstract: Computational models of dialog context have often focused on unimodal spoken dialog or text, using the language itself as the primary locus of contextual information. But as spoken unimodal interaction is replaced by situated multimodal interaction on mobile platforms supporting a combination of spoken dialog with graphical interaction, touch-screen input, geolocation, and other non-linguistic contextual factors, a need arises for more sophisticated models of context that capture the influence of these factors on semantic interpretation and dialog flow. The systems, methods, and computer program products disclosed herein address this need. A method for multimodal search includes, in part, determining an intended location of search query based upon information received from a remote mobile device that issued the search query.
    Type: Grant
    Filed: November 8, 2010
    Date of Patent: April 15, 2014
    Assignee: AT&T Intellectual Property I, L.P.
    Inventors: Michael Johnston, Patrick Ehlen
  • Patent number: 8700605
    Abstract: In an embodiment, a recursive query is received that comprises a first select statement with a seed select statement and a second select statement with a recursive reference, wherein the recursive query further identifies at least two columns in at least one table, wherein the at least two columns have parent-child relationships represented by nodes in a graph, wherein the graph represents the organization of values in rows in the at least one table. A target recursion depth is calculated for the graph based on a fanout of the graph. In an embodiment, the target recursion depth is calculated by summing the fanout at each recursion depth of the graph multiplied by a number of nodes at each recursion depth of the graph. An estimated number of rows that the recursive query will return is estimated based on the target recursion depth.
    Type: Grant
    Filed: October 5, 2012
    Date of Patent: April 15, 2014
    Assignee: International Business Machines Corporation
    Inventors: Lynnette E. Carston, Brian R. Muras, Andrew P. Passe
  • Publication number: 20140101133
    Abstract: In an embodiment, a recursive query is received that comprises a first select statement with a seed select statement and a second select statement with a recursive reference, wherein the recursive query further identifies at least two columns in at least one table, wherein the at least two columns have parent-child relationships represented by nodes in a graph, wherein the graph represents the organization of values in rows in the at least one table. A target recursion depth is calculated for the graph based on a fanout of the graph. In an embodiment, the target recursion depth is calculated by summing the fanout at each recursion depth of the graph multiplied by a number of nodes at each recursion depth of the graph. An estimated number of rows that the recursive query will return is estimated based on the target recursion depth.
    Type: Application
    Filed: March 12, 2013
    Publication date: April 10, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: INTERNATIONAL BUSINESS MACHINES CORPORATION
  • Publication number: 20140101131
    Abstract: In an embodiment, a hit percentage of an expected affinity for a first query is calculated, wherein the expected affinity comprises a first address range in a query plan cache, a hit percentage of a candidate affinity for the first query is calculated, wherein the candidate affinity comprises a second address range in a query plan cache, and if the hit percentage of the candidate affinity is greater than the hit percentage of the expected affinity by more than a threshold amount, query plans in the candidate affinity are swapped with query plans in the expected affinity.
    Type: Application
    Filed: October 8, 2012
    Publication date: April 10, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Rafal P. Konik, Roger A. Mittelstadt, Brian R. Muras, Mark W. Theuer
  • Publication number: 20140101132
    Abstract: In an embodiment, a hit percentage of an expected affinity for a first query is calculated, wherein the expected affinity comprises a first address range in a query plan cache, a hit percentage of a candidate affinity for the first query is calculated, wherein the candidate affinity comprises a second address range in a query plan cache, and if the hit percentage of the candidate affinity is greater than the hit percentage of the expected affinity by more than a threshold amount, query plans in the candidate affinity are swapped with query plans in the expected affinity.
    Type: Application
    Filed: March 11, 2013
    Publication date: April 10, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Rafal P. Konik, Roger A. Mittelstadt, Brian R. Muras, Mark W. Theuer
  • Publication number: 20140095474
    Abstract: Techniques for processing queries are provided. In one approach, an execution plan for a query includes multiple sub-plans, one or more of which are selected at runtime while one or more other sub-plans are not executed during execution of the execution plan. In another approach, data about misestimate is generated and stored persistently for subsequent queries. In another approach, statistics for a database object are generated automatically and efficiently while the database object is created or data items are added thereto. In another approach, a hybrid histogram is created that includes a feature of frequency histograms and a feature of height-balanced histograms. In another approach, computer jobs are executed in such a way to avoid deadlock. In another approach, changes to a database object trigger a hard parse of a query even though an execution plan already exists for the query.
    Type: Application
    Filed: September 30, 2013
    Publication date: April 3, 2014
    Applicant: Oracle International Corporation
    Inventors: Sunil P. Chakkappen, Mohamed Zait, Allison W. Lee, Ali Cakmak
  • Publication number: 20140095475
    Abstract: Techniques for processing queries are provided. In one approach, an execution plan for a query includes multiple sub-plans, one or more of which are selected at runtime while one or more other sub-plans are not executed during execution of the execution plan. In another approach, data about misestimate is generated and stored persistently for subsequent queries. In another approach, statistics for a database object are generated automatically and efficiently while the database object is created or data items are added thereto. In another approach, a hybrid histogram is created that includes a feature of frequency histograms and a feature of height-balanced histograms. In another approach, computer jobs are executed in such a way to avoid deadlock. In another approach, changes to a database object trigger a hard parse of a query even though an execution plan already exists for the query.
    Type: Application
    Filed: September 30, 2013
    Publication date: April 3, 2014
    Applicant: Oracle International Corporation
    Inventors: Hong Su, Sunil P. Chakkappen, Mohamed Zait
  • Publication number: 20140095472
    Abstract: Techniques for processing queries are provided. In one approach, an execution plan for a query includes multiple sub-plans, one or more of which are selected at runtime while one or more other sub-plans are not executed during execution of the execution plan. In another approach, data about misestimate is generated and stored persistently for subsequent queries. In another approach, statistics for a database object are generated automatically and efficiently while the database object is created or data items are added thereto. In another approach, a hybrid histogram is created that includes a feature of frequency histograms and a feature of height-balanced histograms. In another approach, computer jobs are executed in such a way to avoid deadlock. In another approach, changes to a database object trigger a hard parse of a query even though an execution plan already exists for the query.
    Type: Application
    Filed: September 30, 2013
    Publication date: April 3, 2014
    Applicant: Oracle International Corporation
    Inventors: Allison W. Lee, Mohamed Zait, Sunil P. Chakkappen
  • Publication number: 20140095473
    Abstract: Techniques for managing continuous queries that include subqueries are provided. In some examples, a continuous query that includes at least a subquery may be identified. Additionally, the subquery may be processed to obtain a first result or generate a logical subquery plan. Further, in some instances, the continuous query may then be processed based at least in part on the first result from the subquery or by merging a logical continuous query plan with the logical subquery plan. This may result in obtaining a second result via querying a data source with the continuous query that is based at least in part on the first result from the subquery and/or the merged plans.
    Type: Application
    Filed: March 14, 2013
    Publication date: April 3, 2014
    Applicant: Oracle International Corporation
    Inventors: Anand Srinivasan, Vikram Shukla, Unmesh Anil Deshmukh
  • 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: 8688686
    Abstract: Optimizing SQL queries for Simple Network Management Protocol (SNMP) Management Information Base (MIB) tables. An SNMP client receives a source query defined in structured query language to access data stored in one or more MIB tables. The SNMP client parses the source query into one or more queries and sub-queries and applies sets of optimization rules and heuristics to the source query to generate a query execution plan for each set of optimization rules and heuristics applied to the source query. The SNMP client selects an optimal query execution plan from the generated query execution plans and rewrites the source query as a SNMP-based query using the optimization rules and heuristics specified in the optimal query execution plan. The SNMP-based query may then be used to retrieve the data requested by the source query without performing a full query scan of the MIB tables.
    Type: Grant
    Filed: July 3, 2012
    Date of Patent: April 1, 2014
    Assignee: International Business Machines Corporation
    Inventors: David J. Pennell, Sr., Alexander Pikovsky
  • Publication number: 20140089293
    Abstract: A query language used to traverse a path in a graph-based model is provided. The system comprises a parsing module to parse a query comprising query phrases. The respective query phrases composed of an object-type identifier and a filter where the object-type identifier corresponds to respective repositories and the filter is used to identify at least a portion of the objects associated with the object-type in the respective repositories. A planning module identifies the respective repositories corresponding to the object-type identifier within each of the one or more query phrases and generates an execution plan describing data to be retrieved according to the respective repositories and results of a preceding query phrase within the query. A translation module translates the respective query phrases into respective translated queries that are readable by the respective repositories and including the filter. An execution module implements the execution plan using the translated queries.
    Type: Application
    Filed: September 25, 2012
    Publication date: March 27, 2014
    Applicant: eBay Inc.
    Inventors: Alan Honkwan Ngai, Jean-Christophe Martin, Xu Jiang, Cheng Xu