US Patent No: 6,985,904

Number of patents in Portfolio can not be more than 2000

Systems and methods for sharing of execution plans for similar database statements

Stats

ATTORNEY / AGENT: (SPONSORED)

Importance

Loading Importance Indicators... loading....

Abstract

See full text

A database statement, such as a SQL text, reuses the execution plan compiled for a similar SQL text found in memory if the value of a system parameter is configured for cursor sharing among optimally shareable SQL texts and the SQL text is optimally shareable with the similar SQL text found in memory. Reuse also occurs if the value of a system parameter is configured for cursor sharing among all shareable SQL texts and the SQL text is suboptimally or optimally shareable with the similar SQL text found in memory. For SQL text that is non-shareable with a similar SQL text found in memory, no execution plan sharing takes place.

Loading the Abstract Image... loading....

First Claim

See full text

all claims..

Related Publications

Loading Related Publications... loading....

Patent Owner(s)

Patent OwnerAddressTotal Patents
ORACLE INTERNATIONAL CORPORATIONREDWOOD SHORES, CA4357

International Classification(s)

  • [Classification Symbol]
  • [Patents Count]

Inventor(s)

Inventor Name Address # of filed Patents Total Citations
Jain, Namit Foster City, CA 113 963
Kaluskar, Sanjay Mountain View, CA 35 210

Cited Art Landscape

Patent Info (Count) # Cites Year
 
ORACLE INTERNATIONAL CORPORATION (34)
5,412,804 Extending the semantics of the outer join operator for un-nesting queries to a data base 171 1992
5,404,510 Database index design based upon request importance and the reuse and modification of similar existing indexes 120 1992
5,664,172 Range-based query optimizer 128 1994
5,495,608 Dynamic index retrieval, bit mapping, and optimization of a single relation access 89 1994
5,819,251 System and apparatus for storage retrieval and analysis of relational and non-relational data 102 1996
5,892,945 Method and apparatus for distributing work granules among processes based on the location of data accessed in the work granules 36 1996
5,761,654 Memory structure and method for tuning a database statement using a join-tree data structure representation, including selectivity factors, of a master table and detail table 31 1996
5,802,523 Method and apparatus for reducing the memory required to store bind variable descriptors in a database 39 1996
6,014,656 Using overlapping partitions of data for query optimization 58 1996
5,899,993 Method and apparatus for achieving an enforced and valid constraint state 18 1996
5,802,521 Method and apparatus for determining distinct cardinality dual hash bitmaps 21 1996
5,956,705 Reverse-byte indexing 19 1996
6,439,783 Range-based query optimizer 60 1997
5,899,986 Methods for collecting query workload based statistics on column groups identified by RDBMS optimizer 42 1997
5,822,748 Group by and distinct sort elimination using cost-based optimization 43 1997
5,903,888 Method and apparatus for using incompatible types of indexes to process a single query 16 1997
5,907,844 Dynamic external control of rule-based decision making through user rule inheritance for database performance optimization 21 1997
5,857,180 Method and apparatus for implementing parallel operations in a database management system 149 1997
6,026,391 Systems and methods for estimating query response times in a computer system 83 1997
6,370,619 Managing partitioned cache 27 1998
5,974,408 Method and apparatus for executing a query that specifies a sort plus operation 26 1998
6,029,163 Methods for collecting query workload based statistics on column groups identified by RDBMS optimizer 61 1998
6,505,227 Method and apparatus for distributing work granules among processes based on the location of data accessed in the work granules 9 1999
6,351,742 Method and mechanism for database statement optimization 29 1999
6,370,522 Method and mechanism for extending native optimization in a database system 45 1999
6,401,083 Method and mechanism for associating properties with objects and instances 22 1999
6,144,957 Method and apparatus for using incompatible types of indexes to process a single query 40 1999
6,421,662 Generating and implementing indexes based on criteria set forth in queries 32 1999
6,374,257 Method and system for removing ambiguities in a shared database command 14 1999
6,546,394 Database system having logical row identifiers 23 1999
6,581,055 Query optimization with switch predicates 48 2000
6,606,627 Techniques for managing resources for multiple exclusive groups 30 2001
6,470,423 Managing partitioned cache 10 2001
6,615,206 Techniques for eliminating database table joins based on a join index 16 2002
 
INTERNATIONAL BUSINESS MACHINES CORPORATION (14)
5,615,359 Data server with data probes employing predicate tests in rule statements 23 1994
5,758,144 Database execution cost and system performance estimator 30 1994
5,875,334 System, method, and program for extending a SQL compiler for handling control statements packaged with SQL query statements 103 1995
5,734,884 Database execution cost and system performance estimator 32 1996
5,987,455 Intelligent compilation of procedural functions for query processing systems 32 1997
6,003,022 Database execution cost and system performance estimator 85 1997
6,269,373 Method and system for persisting beans as container-managed fields 142 1999
6,219,660 Access path selection for SQL with variables in a RDBMS 19 1999
6,598,041 Method, system, and program for processing modifications to data in tables in a database system 9 2000
6,665,678 Method, system, and program for optimistic concurrency control for scrollable cursors in a database 14 2000
6,643,637 Method, system, and program for using a fetch request to make data available to an application program 5 2001
6,694,305 Method, system, and program for processing modifications to data in tables in a database system 5 2001
6,721,731 Method, system, and program for processing a fetch request for a target row at an absolute position from a first entry in a table 5 2001
2003/0120,682 Database query optimization apparatus and method that represents queries as graphs 13 2001
 
ALCATEL-LUCENT USA INC. (1)
5,963,742 Using speculative parsing to process complex input data 24 1997
 
HITACHI, LTD. (1)
6,457,007 Distributed database management system including logical database constituted by a group of physical databases 97 1994
 
MICROSOFT CORPORATION (1)
6,356,887 Auto-parameterization of database queries 70 1999

Patent Citation Ranking

Forward Cite Landscape

Patent Info (Count) # Cites Year
 
ORACLE INTERNATIONAL CORPORATION (26)
7,702,623 Extended cursor sharing 1 2007
7,689,550 Adaptive cursor sharing 5 2007
7,979,420 Handling silent relations in a data stream management system 11 2007
8,296,316 Dynamically sharing a subtree of operators in a data stream management system operating on existing queries 2 2007
7,996,388 Adding new continuous queries to a data stream management system operating on existing queries 12 2007
8,073,826 Support for user defined functions in a data stream management system 4 2007
8,521,867 Support for incrementally processing user defined aggregations in a data stream management system 0 2007
7,991,766 Support for user defined aggregations in a data stream management system 12 2007
7,673,065 Support for sharing computation between aggregations in a data stream management system 23 2007
8,700,608 SQL execution plan verification 0 2008
8,600,977 Automatic recognition and capture of SQL execution plans 0 2008
8,335,767 Maintaining and utilizing SQL execution plan histories 0 2008
8,352,517 Infrastructure for spilling pages to a persistent store 2 2009
8,145,859 Method and system for spilling from a queue to a persistent store 1 2009
8,387,076 Standardized database connectivity support for an event processing server 1 2009
8,321,450 Standardized database connectivity support for an event processing server in an embedded context 10 2009
8,527,458 Logging framework for a data stream processing server 0 2009
8,386,466 Log visualization tool for a data stream processing server 0 2009
8,676,841 Detection of recurring non-occurrences of events using pattern matching 0 2009
8,589,436 Techniques for performing regular expression-based pattern matching in data streams 0 2009
8,498,956 Techniques for matching a certain class of regular expression-based patterns in data streams 0 2009
8,301,667 Method and system for implementing efficient cursor pruning 0 2010
8,447,744 Extensibility platform using data cartridges 1 2010
8,204,875 Support for user defined aggregations in a data stream management system 0 2011
8,713,049 Support for a parameterized query/view in complex event processing 0 2011
8,543,558 Support for user defined functions in a data stream management system 0 2011
 
PERFECT SEARCH CORPORATION (9)
8,176,052 Hyperspace index 0 2007
7,644,082 Abbreviated index 0 2007
8,266,152 Hashed indexing 0 2007
7,774,347 Vortex searching 0 2007
7,774,353 Search templates 0 2007
8,032,495 Index compression 0 2008
7,912,840 Indexing and filtering using composite data stores 0 2008
8,037,075 Pattern index 3 2008
8,392,426 Indexing and filtering using composite data stores 0 2011
 
INTERNATIONAL BUSINESS MACHINES CORPORATION (6)
7,516,138 Method for optimized parameter binding 0 2003
7,412,439 Method for statistics management 4 2004
7,814,072 Management of database statistics 1 2004
7,984,024 Statistics management 0 2008
8,060,495 Query execution plan efficiency in a database management system 0 2008
8,352,945 System, method, and apparatus for scan-sharing for business intelligence queries in an in-memory database 1 2009
 
GOOGLE INC. (3)
7,099,858 Data management system that provides intelligent access plan caching 10 2003
7,289,978 Substituting parameter markers for literals in database query language statement to promote reuse of previously generated access plans 0 2003
7,302,422 Query workload statistics collection in a database management system 17 2004
 
MICROSOFT CORPORATION (3)
7,640,230 Query plan selection control using run-time association mechanism 1 2005
8,032,522 Optimizing parameterized queries in a relational database management system 7 2006
8,103,638 Partitioning of contended synchronization objects 2 2009
 
HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P. (2)
7,574,421 Explicit key paging 0 2006
7,898,817 Circuit board assembly 0 2006
 
SYBASE, INC. (2)
7,174,326 Database system providing methodology for prepared statement cloning 2 2004
7,818,313 Method for distributing processing of queries over a cluster of servers in a continuous processing system 3 2006
 
YAHOO! INC. (2)
7,962,479 System and method for generating substitutable queries 7 2007
7,831,588 Context-sensitive query expansion 5 2008
 
IANYWHERE SOLUTIONS, INC. (1)
7,359,922 Database system and methodology for generalized order optimization 9 2004
 
SAP AG (1)
7,571,191 Defining a data analysis process 6 2004
 
TWITTER, INC. (1)
7,668,805 System and method for managing query access to information 0 2004

Maintenance Fees

Fee Large entity fee small entity fee micro entity fee due date
11.5 Year Payment $7400.00 $3700.00 $1850.00 Jul 10, 2017
Fee Large entity fee small entity fee micro entity fee
Surcharge - 11.5 year - Late payment within 6 months $160.00 $80.00 $40.00
Surcharge after expiration - Late payment is unavoidable $700.00 $350.00 $175.00
Surcharge after expiration - Late payment is unintentional $1,640.00 $820.00 $410.00

Full Text

 
loading....