Patent application number | Description | Published |
20080208822 | ANALYTIC ENHANCEMENTS TO MODEL CLAUSE IN STRUCTURED QUERY LANGUAGE (SQL) - A method for processing queries is provided. A database server receives and executes a query to generate a relation. The query comprises first one or more clauses and a model clause. The model clause comprises a rule that has a left-side expression and a right-side expression. In one embodiment, the right-side expression of the rule includes a window function, which specifies one or more partition columns. In an embodiment, the left-side expression comprises a for-loop predicate. The for-loop predicate is unfolded after the database server compiles the query. In one embodiment, the left-side expression of the rule comprises one or more existential predicates, where each existential predicate evaluates to a Boolean value. | 08-28-2008 |
20110106790 | Rewrite of Queries Containing Rank or Rownumber or Min/Max Aggregate Functions Using a Materialized View - Techniques are provided for improving efficiency of database systems, and in particular, to refreshing materialized views maintained by database systems and rewriting queries to access the materialized views. According to the approaches, a ranked materialized view is incrementally refreshed, and during the incremental refresh operation, rows in the partitions of the materialized view are ranked within the partitions. | 05-05-2011 |
20110137875 | INCREMENTAL MATERIALIZED VIEW REFRESH WITH ENHANCED DML COMPRESSION - An incremental refresh of a materialized view may be simplified, and therefore made more cost efficient, by reducing the number of DML operations being merged with the materialized view during the incremental refresh. Specifically, subsequences of sequences of data manipulation language operations that have been recorded for a particular row of a base table may be inspected to determine whether the subsequences conform to particular patterns of data manipulation language operator types. If a subsequence conforms to one of the particular patterns, the subsequence may be replaced with a single substitute: either a single data manipulation language operation, or null. Refresh operations that are generated based on the simplified sequences of data manipulation language operations are more simple, and therefore, less costly to perform. | 06-09-2011 |
20110167091 | ANALYTIC ENHANCEMENTS TO MODEL CLAUSE IN STRUCTURED QUERY LANGUAGE (SQL) - A method for processing queries is provided. A database server receives and executes a query to generate a relation. The query comprises first one or more clauses and a model clause. The model clause comprises a rule that has a left-side expression and a right-side expression. In one embodiment, the right-side expression of the rule includes a window function, which specifies one or more partition columns. In an embodiment, the left-side expression comprises a for-loop predicate. The for-loop predicate is unfolded after the database server compiles the query. In one embodiment, the left-side expression of the rule comprises one or more existential predicates, where each existential predicate evaluates to a Boolean value. | 07-07-2011 |
20140095502 | CLUSTERING A TABLE IN A RELATIONAL DATABASE MANAGEMENT SYSTEM - Techniques are provided that address the problems associated with prior approaches for clustering a fact table in a relational database management system. According to one aspect of the invention, a database server clusters a fact table in a database based on one or more dimension tables. More specifically, rows are stored in the fact table in a sorted order and the order in which the rows are sorted is based on values in one or more columns of one or more of the dimension tables. A user specifies the columns of the dimension tables on which the sorted order is based in “clustering criteria”. The database server uses the clustering criteria to automatically store the rows in the fact table in the sorted order in response to certain user-initiated database operations on the fact-table. | 04-03-2014 |
20140095520 | PRUNING DISK BLOCKS OF A CLUSTERED TABLE IN A RELATIONAL DATABASE MANAGEMENT SYSTEM - Techniques are provided for generating a “dimensional zonemap” that allows a database server to avoid scanning disk blocks of a fact table based on filter predicates in a query that qualify one or more dimension tables. The zonemap divides the fact table into sets of contiguous disk blocks referred to as “zones”. For each zone, a minimum value and a maximum value for each of one or more “zoned” columns of the dimension tables is determined and maintained in the zonemap. For a query that contains a filter predicate on a zoned column, the predicate value can be compared to the minimum value and maximum value maintained for a zone for that zoned column to determine whether a scan of the disk blocks of the zone can be skipped. | 04-03-2014 |
20140214754 | Scalable and Adaptive Evaluation of Reporting Window Functions - According to one aspect of the invention, for a database statement that specifies evaluating reporting window functions, a computation-pushdown execution strategy may be used for the database statement. The computation-pushdown execution plan includes producer operators and consolidation operators. Each producer operator computes a respective partial aggregation for each reporting window function based on a subset of rows, and broadcasts the respective partial aggregation. Each consolidation operator fully aggregates all partial aggregations broadcasted from the producer operators. Alternatively, an extended-data-distribution-key execution plan may be used. Each producer operator sends rows based on hash keys to sort operators for computing partial aggregations for at least one reporting window function based on a subset of rows. Each consolidation operator receives and fully aggregates all partial aggregations broadcasted from the sort operators. | 07-31-2014 |
20140280023 | ADAPTIVE SELECTION OF A DISTRIBUTION METHOD DURING EXECUTION OF PARALLEL JOIN OPERATIONS - A method, system, and computer program product for high-performance database systems. The method commences by estimating, during a compile phase, a statically-calculated system cost of performing parallel join operations over two relations, then selecting, during the compile phase, a first distribution method to perform the parallel join operations. Instructions (e.g., table partitioning) are communicated to two or more execution units for execution of the parallel join operations, and during execution, various measurements are taken pertaining to the performance of a first portion of the parallel join operations using the selected first distribution method. Then, responsive to the measurements a second distribution method is selected and corresponding instructions are communicated to the two or more execution units. The parallel join operations continue, now using the second distribution method. | 09-18-2014 |
20140280029 | OUT-OF-PLACE MATERIALIZED VIEW REFRESH - Techniques are provided for performing a refresh or update of a materialized view without modifying the materialized view. Such a refresh is referred to as an out-of-place materialized view refresh. An out-of-place materialized view refresh involves creating one or more outside tables into which data will be inserted. During the refresh, the materialized view may be accessible for query processing, even though the materialized view contains “stale” data. After the insertion, the one or more outside tables are made accessible for query processing and future queries will target the one or more outside tables instead of the materialized view. | 09-18-2014 |