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

1 Status Updates

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..

Family

Loading Family data... loading....

Patent Owner(s)

Patent OwnerAddressTotal Patents
ORACLE INTERNATIONAL CORPORATIONREDWOOD SHORES, CA4625

International Classification(s)

  • [Classification Symbol]
  • [Patents Count]

Inventor(s)

Inventor Name Address # of filed Patents Total Citations
Jain, Namit Foster City, CA 115 1010
Kaluskar, Sanjay Mountain View, CA 35 232

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 181 1992
5,404,510 Database index design based upon request importance and the reuse and modification of similar existing indexes 123 1992
5,664,172 Range-based query optimizer 130 1994
5,495,608 Dynamic index retrieval, bit mapping, and optimization of a single relation access 90 1994
5,819,251 System and apparatus for storage retrieval and analysis of relational and non-relational data 108 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 32 1996
5,802,523 Method and apparatus for reducing the memory required to store bind variable descriptors in a database 44 1996
6,014,656 Using overlapping partitions of data for query optimization 60 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 22 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 43 1997
5,822,748 Group by and distinct sort elimination using cost-based optimization 44 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 22 1997
5,857,180 Method and apparatus for implementing parallel operations in a database management system 157 1997
6,026,391 Systems and methods for estimating query response times in a computer system 86 1997
6,370,619 Managing partitioned cache 29 1998
5,974,408 Method and apparatus for executing a query that specifies a sort plus operation 27 1998
6,029,163 Methods for collecting query workload based statistics on column groups identified by RDBMS optimizer 64 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 31 1999
6,370,522 Method and mechanism for extending native optimization in a database system 47 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 33 1999
6,374,257 Method and system for removing ambiguities in a shared database command 15 1999
6,546,394 Database system having logical row identifiers 24 1999
6,581,055 Query optimization with switch predicates 49 2000
6,606,627 Techniques for managing resources for multiple exclusive groups 32 2001
6,470,423 Managing partitioned cache 12 2001
6,615,206 Techniques for eliminating database table joins based on a join index 19 2002
 
INTERNATIONAL BUSINESS MACHINES CORPORATION (14)
* 5,615,359 Data server with data probes employing predicate tests in rule statements 24 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 107 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 88 1997
* 6,269,373 Method and system for persisting beans as container-managed fields 147 1999
6,219,660 Access path selection for SQL with variables in a RDBMS 21 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 15 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 14 2001
 
HITACHI, LTD. (1)
* 6,457,007 Distributed database management system including logical database constituted by a group of physical databases 99 1994
 
MICROSOFT CORPORATION (1)
6,356,887 Auto-parameterization of database queries 73 1999
 
SOUND VIEW INNOVATIONS, LLC (1)
* 5,963,742 Using speculative parsing to process complex input data 26 1997
* Cited By Examiner

Patent Citation Ranking

Forward Cite Landscape

Patent Info (Count) # Cites Year
 
ORACLE INTERNATIONAL CORPORATION (27)
* 7,702,623 Extended cursor sharing 2 2007
* 7,689,550 Adaptive cursor sharing 9 2007
7,979,420 Handling silent relations in a data stream management system 12 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 14 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 13 2007
* 7,673,065 Support for sharing computation between aggregations in a data stream management system 24 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 14 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,849,794 Compile time opcodes for efficient runtime interpretation of variables for database queries and DML statements 0 2011
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 1 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 (7)
* 7,516,138 Method for optimized parameter binding 1 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 1 2008
8,805,852 Automatic query execution plan management and performance stabilization for workloads 0 2009
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 11 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 18 2004
 
MICROSOFT CORPORATION (3)
* 7,640,230 Query plan selection control using run-time association mechanism 2 2005
* 8,032,522 Optimizing parameterized queries in a relational database management system 8 2006
8,103,638 Partitioning of contended synchronization objects 3 2009
 
HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P. (2)
* 7,574,421 Explicit key paging 1 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 6 2006
 
YAHOO! INC. (2)
* 7,962,479 System and method for generating substitutable queries 10 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 10 2004
 
SAP AG (1)
* 7,571,191 Defining a data analysis process 7 2004
 
TWITTER, INC. (1)
* 7,668,805 System and method for managing query access to information 0 2004
 
Other [Check patent profile for assignment information] (1)
8,914,353 Many-core algorithms for in-memory column store databases 0 2011
* Cited By Examiner

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