Patent application number | Description | Published |
20100198806 | EVALUATION OF SET OF REPRESENTATIVE QUERY PERFORMANCE USING ROBUSTNESS MAPPING - Computer-implemented systems and associated operating methods use atomic query maps to identify and evaluate database query plan robustness landmarks. The computer-implemented system comprises logic that evaluates robustness of a selected atomic query by measuring performance of atomic query execution in a predetermined range of runtime conditions that include data characteristics. The logic produces a set of measurements that can be displayed as one or more performance maps and analyzes the measured performance to identify landmarks indicative of database atomic query performance degradation greater than a predetermined amount. | 08-05-2010 |
20100198807 | WORKLOAD MANAGEMENT USING ROBUSTNESS MAPPING - Computer-implemented systems and associated operating methods use performance maps created by evaluating robustness of a database operator, query plan, or query to analyze health of a currently-executing query. The computer-implemented system comprises logic that receives one or more robustness maps of measured database system performance acquired during database execution in a predetermined range of runtime conditions. The logic analyzes state of a currently-executing query by locating the query's performance on the robustness maps. | 08-05-2010 |
20100198808 | DATABASE SYSTEM IMPLEMENTATION PRIORITIZATION USING ROBUSTNESS MAPS - Computer-implemented systems and associated operating methods take measurements and landmarks associated with robustness maps and perform tests evaluating the robustness of a database engine's operator implementations and/or query components. The illustrative computer-implemented system comprises logic that receives one or more robustness maps of measured database system performance acquired during database execution in a predetermined range of runtime conditions and uses information from the robustness map or maps to prioritize potential changes that improve robustness of a database system implementation wherein landmarks in the robustness map or maps are operated upon as a robustness bug describing conditions under which a predetermined implementation of a database operator or query component degrades in a manner different from a predetermined expected manner. | 08-05-2010 |
20100198809 | DATABASE SYSTEM TESTING USING ROBUSTNESS MAPS - Computer-implemented systems and associated operating methods take measurements and landmarks associated with robustness maps and perform tests evaluating the robustness of a database engine's operator implementations and/or query components. The illustrative computer-implemented system comprises logic that receives one or more robustness maps of measured database system performance acquired during database execution in a predetermined range of runtime conditions and uses information from the robustness map or maps to perform regression testing wherein landmarks in the robustness maps are operated upon as a robustness bugs describing conditions under which a predetermined implementation of a database operator or query component degrades in a manner different from a predetermined expected manner. | 08-05-2010 |
20100198810 | EVALUATION OF DATABASE QUERY PLAN ROBUSTNESS LANDMARKS USING OPERATOR MAPS OR QUERY MAPS - Computer-implemented systems and associated operating methods create and use an operator map to identify and evaluate database query plan robustness landmarks. The computer-implemented system comprises logic that creates a map evaluating performance of an implementation of a database engine operator during execution under actual operating conditions. The logic measures and maps performance for a selected range of runtime conditions including resource availability and data characteristics. | 08-05-2010 |
20100198811 | QUERY PLAN ANALYSIS OF ALTERNATIVE PLANS USING ROBUSTNESS MAPPING - Computer-implemented and associated operating methods evaluate robustness of a query plan by measuring performance with regard to a range of runtime conditions and producing a map of relative performance of the given query plan when compared with alternative plans for a range of conditions. The computer-implemented system comprises logic that evaluates the selected query plan in comparison to multiple alternative query plans in a predetermined range of runtime conditions that include data characteristics. The logic produces a set of performance measurements and analyzes the measured performance to map performance of the selected query plan in comparison to performance of one or more alternative query plans. | 08-05-2010 |
20100235349 | PROGRESS ANALYZER FOR DATABASE QUERIES - A data processing system includes a query progress analyzer. The database processing system comprises a receiver that receives database queries including a target query directed to a database and a query analyzer. The query analyzer is coupled to the receiver and analyzes progress status of the target query based on comparison of measured target query resource usage to resource usage predicted from a query plan of the target query and measured system resource usage. | 09-16-2010 |
20100332472 | QUERY PROGRESS ESTIMATION BASED ON PROCESSED VALUE PACKETS - A data processing system performs query progress estimation based on processed value packets. In the illustrative data processing system, a database query processor comprises a query optimizer that creates a query plan, and a database plan executor that executes the query plan and observes intermediate result streams processed as the query plan is executed. A value packet manager anticipates value packets during query optimization, creates value packets as the intermediate result streams are processed, and compares anticipated value packets with created value packets to determine accuracy of the anticipated value packets and estimate query progress. | 12-30-2010 |
20110016107 | Execution of query plans for database query within environments of databases - A database query is submitted to a first query optimizer to receive a first query plan from the first query optimizer. The first query plan is set as a current query plan. As an entry point, the current query plan is executed against the database within a given environment of the database. Where execution of the current query plan within the given environment is problematic, the execution of the current query plan is prematurely terminated, and the database query is submitted to a second query optimizer. Where a second query plan that is different than any previous query plan for the database query has been received from the second query optimizer, the second query plan is set as the current query plan, and a risk to the database in executing the current query plan is determined. Where the risk is less than a threshold, the entry point is proceeded to. | 01-20-2011 |
20110022586 | Determining whether change in workload of database system has occurred, and/or whether executing current workload will likely result in problem developing with database system - Whether a change in workload of a database system has occurred can be determined. Investigative queries are formulated. Each investigative query is adapted to test a different resource or a different combination of resources of the database system. The investigative queries are run when the database system is in an unloaded state to acquire unloaded performance metrics. The investigative queries are run when the database system is in a loaded state to acquire loaded performance metrics. Whether executing a current workload of the database system, using a current configuration of the database system, will likely result in a problem developing at a later point in time can also be determined. Simultaneously with actual execution of the current workload on the database system using the current configuration, a simulation of execution of the current workload using the current configuration is performed. The simulation is performed more quickly than the actual execution. | 01-27-2011 |
20110225533 | PRODUCING A REPRESENTATION OF PROGRESS OF A DATABASE PROCESS - A method of producing a representation of the progress of a process being performed on a database may be embodied in a data processing system. The method may include obtaining for each of a plurality of subprocesses included in the database process an estimated rate of using a system resource during execution of the subprocess and an estimated volume of data to be processed. The actual rate of using the first system resource and the actual volume of data processed during execution of the at least one subprocess may be determined for at least one of the plurality of subprocesses. An output signal may be generated that is representative of the estimated and actual rates and the estimated and actual volumes of data for the at least one subprocess. | 09-15-2011 |
20110283283 | DETERMINING MULTIPROGRAMMING LEVELS - A method of managing the execution of a workload of transactions of different transaction types on a computer system. Each transaction type may have a different resource requirement. The method may include intermittently, during execution of the workload, determining the performance of each transaction type. A determination may be made of whether if there is an overloaded transaction type in which performance is degraded with an increase in the number of transactions of the transaction type. If there is an overloaded transaction type, the number of transactions of at least one transaction type may be changed. | 11-17-2011 |
20110283294 | DETERMINING MULTI-PROGRAMMING LEVEL USING DIMINISHING-INTERVAL SEARCH - A method of determining a multiprogramming level (MPL) for a first computer subsystem may be implemented on a second computer subsystem. The method may include selecting an initial MPL interval having endpoints that bound a local extremum of a computer-system operation variable that is a unimodal function of the MPL. For each interval having a length more than a threshold, operation-variable values for two intermediate MPLs in the interval may be determined. The interval may be diminished by the section of the interval between the one of the intermediate MPLs having an operation-variable value further from the extremum, and the interval endpoint adjacent to the one intermediate MPL. The operating MPL may be set equal to the other intermediate MPL when the interval has a length that is not more than the threshold. | 11-17-2011 |
20120089594 | PERFORMING DATABASE JOINS - A method of performing a database join is provided herein. The method includes receiving a query. The query may specify a join of a first table and a second table. The method further includes determining a new predicate based on a mapping between a first column of the first table and a second column of the second table for a plurality of tuples of the join. Further, the method includes modifying the query such that the query comprises the new predicate. | 04-12-2012 |
20120109981 | GENERATING PROGRESSIVE QUERY RESULTS - There is provided a method for generating results for a sort operation. The method includes writing a subset of input to memory. The subset may be sorted based on the sort operation. The sorted subset may be compared to previous results. The previous results may be recalled from a client of the sort operation based on the comparison. | 05-03-2012 |
20120110597 | DETERMINING MULTI-PROGRAMMING LEVELS - An embodiment includes determining user loads and control parameter values. The determining control parameter values are mapped to a performance metric using a function. A constant performance metric is determined where the value of the function calculated at each control parameter value is less than said constant performance metric. An isocontour is defined based on the constant performance metric for each user load. Finally an operating envelope is calculated by correlating the isocontours of multiple user loads. | 05-03-2012 |
20120254171 | Exploitation of Correlation Between Original and Desired Data Sequences During Run Generation - A computer executed method of exploiting correlations between original and desired data sequences during run generation comprises, with a processor, adding a number of data values from a data source to a first memory device, the first memory device defining a workspace, determining whether the data values within the workspace should be output in ascending or descending order for a number of runs, and writing a number of the data values as a run to a second memory device in the determined order. | 10-04-2012 |
20120254199 | MERGE OPTIMIZATION SYSTEM - A merge optimization system to optimize a run merge process for runs including keys from a data source. The system may include a run generation module to generate a run of the keys in a predetermined order. The system may further include a key characterization module to characterize a distribution of the keys across the run at run generation time, and a run merge module executed by a computer system to selectively associate the runs based on the characterization. | 10-04-2012 |
20130013874 | DATA STORE PAGE RECOVERY - In one implementation, a data store page recovery process includes selecting a page reference and an update record reference at a page recovery mapping based on a page identifier, accessing a backup page via the page reference, accessing an update record via the update record reference, and modifying the backup page according to the update record. The page reference is associated with the update record reference at the page recovery mapping. | 01-10-2013 |
20130080473 | DISTRIBUTION OF KEY VALUES - A computer apparatus and related method to reduce database congestion is provided. In one aspect, the computer apparatus and method may generate a new partition within a hierarchical data structure of interlinked nodes, if a distribution of key values stored in the hierarchical data structure is skewed in favor of a range of key values. | 03-28-2013 |
20130262423 | CONTROLLED LOCK VIOLATION FOR DATA TRANSACTIONS - A system, method, and non-transitory computer readable medium for providing controlled lock violation for data transactions are presented. The system includes a processor for executing a first data transaction and a second data transaction, the first and second data transactions operating on a plurality of data resources. A controlled lock violation module grants to the second transaction a conflicting lock to a data resource locked by the first transaction with a lock, the conflicting lock granted to the second transaction while the first transaction holds its lock. The controlled lock violation module can be applied to distributed transactions in a two-phase commit and to canned transactions. | 10-03-2013 |
20130282719 | System For Managing Address Reflectors - A system is disclosed for managing address reflectors, in one example, the system discloses a reflector storage | 10-24-2013 |
20130318126 | TREE DATA STRUCTURE - A method of implementing a tree data structure comprises creating a parent and child relationship between a first node and a second node, in which the first node and second node are at the same hierarchical level of the tree data structure, and maintaining only one incoming pointer for each of the nodes in the tree data structure at all times. A tree data structure in which each node in the tree data structure has a single incoming pointer, and in which the tree data structure comprises a pointer directed to a local overflow node from a node at the same hierarchical level as the local overflow node. | 11-28-2013 |
20140040208 | EARLY RELEASE OF TRANSACTION LOCKS BASED ON TAGS - A computing system is associated with a first transaction and a second transaction. The first transaction is associated with an update to data and a release of at least one lock on the data prior to the first transaction being durable. The at least one lock is associated with and/or replaced with at least one tag. The computing system is to identify that the second transaction is to acquire the at least one tag based on a read of the data, determine whether the first transaction is durable based on the at least one tag, and delay a transaction commit for the second transaction until the first transaction is durable. | 02-06-2014 |
20140040218 | METHODS AND SYSTEMS FOR AN INTENT LOCK ENGINE - In at least some examples, a system may include a processor core and a non-transitory computer-readable memory in communication with the processor core. The non-transitory computer-readable memory may store an intent lock engine to manage intent locks based on a private lock table for each process associated with said processor core and a global lock table for a plurality of processes associated with at least one of a plurality of processor cores including said processor core. | 02-06-2014 |
20140040219 | METHODS AND SYSTEMS FOR A DEADLOCK RESOLUTION ENGINE - In at least some examples, a system may include a processor core and a non-transitory computer-readable memory in communication with the processor core. The non-transitory computer-readable memory may store a deadlock resolution engine to resolve a deadlock condition based on an abort shortest pipeline policy. | 02-06-2014 |
20140040220 | METHODS AND SYSTEMS FOR DEADLOCK DETECTION - In at least some examples, a system may include a processor core and a non-transitory computer-readable memory in communication with the processor core. The non-transitory computer-readable memory may store deadlock detection engine to determine a deadlock condition, wherein the deadlock detection engine accounts for a set of database lock modes. | 02-06-2014 |
20140214767 | Delta partitions for backup and restore - Systems and methods of using delta partitions for backup and restore are disclosed. An example method may include after a full backup, separating change information from static information. The method may also include concentrating the change information in a delta partition prior to a differential backup. The method may also include incrementally backing up only the delta partition during the differential backup. | 07-31-2014 |
20140297985 | SHIFTABLE MEMORY SUPPORTING IN-MEMORY DATA STRUCTURES - A shiftable memory supporting in-memory data structures employs built-in data shifting capability. The shiftable memory includes a memory having built-in shifting capability to shift a contiguous subset of data from a first location to a second location within the memory. The shiftable memory further includes a data structure defined on the memory to contain data comprising the contiguous subset. The built-in shifting capability of the memory to facilitate one or more of movement of the data, insertion of the data and deletion of the data within the data structure. | 10-02-2014 |
20140324782 | APPLYING WRITE ELISION - A data portion is evicted from a buffer, where the evicted data portion is modified from a corresponding data portion in a persistent storage. Write elision is applied to suppress writing the evicted data portion to the persistent storage. Subsequent to applying the write elision and in response to reading a version of the data portion, a redo of a modification of the read data portion is applied. | 10-30-2014 |