Abstract: A system includes a multi-system database management system having a plurality of database systems. An index selection subsystem combines sets of query information from respective ones of the plurality of database systems into a workload. The index selection subsystem then generates candidate indexes from the workload, and selects recommended indexes from the candidate indexes based on one or more criteria.
Abstract: Apparatus, systems, and methods may operate to classify storage locations in a storage medium according to at least three response time grades, to classify data to be stored in the storage locations according to at least three access frequency grades, and to migrate the data between the storage locations according to a predicted access frequency assigned to preemptive allocations of some of the storage locations, based on the response time grade and the access frequency grade associated with the data prior to migration. Other apparatus, systems, and methods are disclosed.
Type:
Grant
Filed:
December 29, 2010
Date of Patent:
August 13, 2013
Assignee:
Teradata US, Inc.
Inventors:
Paul Anthony Rubio, Criselda Samera Carrillo, Aarati Abhijit Khobare, Gary Lee Boggs, Kevin Reed Sanders
Abstract: A system, method, and computer-readable medium for dynamic detection and management of data skew in parallel join operations are provided. Rows allocated to processing modules involved in a join operation are redistributed among the processing modules by a hash redistribution of the join attributes. Receipt by a processing module of an excessive number of redistributed rows having a skewed value on the join attribute is detected by a processing module which notifies other processing modules of the skewed value. Processing modules then terminate redistribution of rows having a join attribute value matching the skewed value and either store such rows locally or duplicate the rows. The processing module that has received an excessive number of redistributed rows removes rows having a skewed value of the join attribute from a redistribution spool allocated thereto and duplicates the rows to each of the processing modules.
Abstract: A system, method, and computer-readable medium that facilitate key rotation without disrupting database access are provided. Generation identifiers that specify a particular encryption key are stored in association with cipher text of encrypted columns in database tables. When data is to be read from an encrypted column, the cipher text is read along with the associated generation identifier. An encryption key corresponding to the generation identifier is then read to decrypt the cipher text. When data is to be written to the encrypted column, a most recent encryption key is retrieved from the key repository to encrypt the data. The cipher text is then written to the encrypted column in association with the generation identifier of the key used to encrypt the data. Advantageously, the key rotation may be performed without requiring that the table or database to be taken offline or otherwise unavailable during key rotation.
Abstract: A “group work sorting” technique is used in a parallel computing system that executes multiple items of work across multiple parallel processing units, where each parallel processing unit processes one or more of the work items according to their positions in a prioritized work queue that corresponds to the parallel processing unit. When implementing the technique, one or more of the parallel processing units receives a new work item to be placed into a first work queue that corresponds to the parallel processing unit and receives data that indicates where one or more other parallel processing units would prefer to place the new work item in the prioritized work queues that correspond to the other parallel processing units. The parallel processing unit uses the received data as a guide in placing the new work item into the first work queue.
Abstract: A method, apparatus, and article of manufacture for accessing data in a computer system. Compression and decompression functions are associated with a column of the table, in order to perform compression of decimal, numeric or date data stored in the column when the data is inserted or updated in the table, and in order to perform decompression of the data stored in the column when the data is retrieved from the table. The compression function compresses and stores the data in a fixed-length compressed field in the column without a length value, and the fixed-length compressed field has a size that is determined by a range of values for the data stored in the fixed-length compressed field. The decompression function retrieves and decompresses the data from the fixed-length compressed field.
Type:
Grant
Filed:
January 25, 2011
Date of Patent:
July 23, 2013
Assignee:
Teradata US, Inc.
Inventors:
Mark A. Hodgens, Fred S. Kaufmann, Donald R. Pederson, Gary A. Roberts
Abstract: A technique for managing storage of a data object in a storage device involves receiving the data object (A) to store in the storage device, where the data object has an indicator bit pattern (P). Successive compression data transformations are applied to data object A to obtain respective corresponding compressed data objects, and one of these compressed data objects is selected, such that the selected compressed data object (C) has the shortest length with respect to the remaining compressed data objects. Compression information (I) is then associated with the compression data transformation used to generate data object C, and a threshold value T is calculated at least partly from the length of compression information I. If length (C)+T.gtoreq.length (A), then the indicator bit pattern of data object A is reset and the data object A is written to the storage device.
Type:
Grant
Filed:
June 2, 2011
Date of Patent:
July 16, 2013
Assignee:
Teradata US, Inc.
Inventors:
John Mark Morris, Criselda Carrillo, P. Keith Muller
Abstract: Techniques for updating join indexes are provided. A determination is made to update date criteria in a join index query statement. The join index is parsed for current date and current time criteria. The join index is revised based on the location of the current date and current time criteria as they appear in the original join index. The revisions include new criteria that minimize the effort in maintaining and using the join index.
Abstract: Systems and methods are described that create storage classes for data and store the data using storage resources based on the created storage classes. In some examples, the system stores data using storage resources having characteristics that satisfy the requirements of a storage class associated with the data. In some examples, the system stores data using storage resources that meet the minimum requirements for a storage class.
Abstract: Embodiments of the present invention provide a hardware accelerator that assists a host database system in processing its queries. The hardware accelerator comprises special purpose processing elements that are capable of receiving database query/operation tasks in the form of machine code database instructions, execute them in hardware without software, and return the query/operation result back to the host system.
Type:
Grant
Filed:
June 29, 2011
Date of Patent:
June 18, 2013
Assignee:
Teradata US, Inc.
Inventors:
Jeremy L. Branscome, Joseph Irawan Chamdani, Rajasekhar Cherabuddi
Abstract: Embodiments of the present invention provide fine grain concurrency control for transactions in the presence of database updates. During operations, each transaction is assigned a snapshot version number or SVN. A SVN refers to a historical snapshot of the database that can be created periodically or on demand. Transactions are thus tied to a particular SVN, such as, when the transaction was created. Queries belonging to the transactions can access data that is consistent as of a point in time, for example, corresponding to the latest SVN when the transaction was created. At various times, data from the database stored in a memory can be updated using the snapshot data corresponding to a SVN. When a transaction is committed, a snapshot of the database with a new SVN is created based on the data modified by the transaction and the snapshot is synchronized to the memory.
Type:
Grant
Filed:
June 23, 2008
Date of Patent:
June 4, 2013
Assignee:
Teradata US, Inc.
Inventors:
Kapil Surlaker, Ravi Krishnamurthy, Krishnan Meiyyappan, Alan Beck, Hung Tran, Jeremy Branscome, Joseph I. Chamdani
Abstract: A method and system for allocating storage space from storage devices within a computer system. The storage devices are grouped into respective homogeneous sets in which identical storage devices are included in the same homogeneous set. In accordance with the method and system, following receipt of an allocation request for storage space one or more stored response values are checked, the response values associated with at least one homogeneous set. The stored value or values represent the average response time of storage devices within the set. The homogenous set with the lowest average response time is selected. One or more stored allocation values are then checked that are associated with at least one storage device within the selected homogeneous set. The stored allocation value or values represent the current allocations of the associated storage device.
Type:
Grant
Filed:
January 31, 2007
Date of Patent:
June 4, 2013
Assignee:
Teradata US, Inc.
Inventors:
Peter Ian Frazier, Donn Harold Holtzman, John Mark Morris
Abstract: A method of archiving a set of source tables in a database system. Each source table has a plurality of rows. Initially, a consistency point for the set of source tables is established. The database system creates a log record for each change (insert, modify, or delete) effected to a row of the source tables subsequent to the consistency point. Substantially all source table rows are copied to an archive (a data storage object that is external to the database system). Then the accumulated log records for the affected source tables are distilled and appended to the archive.
Type:
Grant
Filed:
December 8, 2008
Date of Patent:
May 28, 2013
Assignee:
Teradata US, Inc.
Inventors:
May Pederson, James Chapman, Cuong Nhan, Jeremy Davis, Donald Pederson, James Pierce, Sunanda Reddy, Stephen Sheldon
Abstract: Excess capacity of a database system can be used for learning activities in a controlled computing environment. In this context, excess capacity of a database system can be used as needed and/or on a temporary basis. Furthermore, learning activities can be performed without requiring the use of the capacity that is configured or has been allotted for various other database operations, including those deemed, especially by the users of database system, to serve a main function or a more important purpose. As a result, learning can be performed without adversely affecting other operations deemed to be more critical, especially by the users of databases. Learning activities associated with a database environment can, for example, include learning operations directed to optimization of database queries, for example, by using a basic feedback or an expanded or active learning.
Abstract: Execution of a query is optimized. A plurality of plans for executing the query on a multi-database system are analyzed. A first plan having a first step and a second step is selected. The first step of the first plan is executed. The plan selection is re-evaluated before executing the second step of the first plan. A second plan of the plurality of plans for executing the query is executed to produce a result. The result is stored.
Abstract: A computer-implemented method, apparatus and article of manufacture for optimizing a database query. Resource usage of one or more resources of the computer system are monitored. A condition code representative of the monitored resource usage is stored. A cost model is modified using the stored condition code. A query execution plan is generated for the database query using the modified cost model. The query execution plan is then executed in order to retrieve data from a database stored on the computer system, wherein the retrieved data is presented to a user for subsequent use and analysis.
Type:
Grant
Filed:
November 18, 2008
Date of Patent:
April 16, 2013
Assignee:
Teradata US, Inc.
Inventors:
Louis M. Burger, Douglas P. Brown, Thomas Julien
Abstract: A query is received. It is determined that the query includes an inner join between a parent table and a child table. It is determined that the following relationships exist between the parent table and the child table: referential integrity (“RI”) between a primary key attribute (pk) in the parent table and a foreign key attribute (fk) in the child table, where “attribute” is defined to mean one or more columns, and a temporal relationship constraint (“TRC”) between a period attribute in the parent table and a TRC-attribute in the child table, the TRC-attribute being a date or time attribute. It is determined that the query does not access any attribute in the parent table other than the pk. It is determined that the query specifies an equality predicate of the form pk=fk. It is determined that the query selects a snapshot from the parent using a predicate of the form parent.[period attribute] contains a point in time (t1).
Abstract: A computer receives a query for optimization. The query includes a SEQUENCED join between a temporal parent table and a temporal child table. The parent table has one or more rows. The child table has one or more rows. The parent table has a Primary Key (“PK”) column having a value for each row. The parent table has a temporal dimension having a value for each row. The child table has a Foreign Key (“FK”) column having a value for each row. The child table has a temporal dimension. The child table's temporal dimension has a value for each row. The computer determines that the query, the parent table, the child table, and the join satisfy a set of CURRENT temporal join elimination criteria. The computer determines that the query, the parent table, the child table, and the join satisfy a set of SEQUENCED temporal join elimination criteria. In response, the computer eliminates the join from the query to produce an optimized form of the query.
Type:
Grant
Filed:
December 14, 2010
Date of Patent:
March 12, 2013
Assignee:
Teradata US, Inc.
Inventors:
Bhashyam Ramesh, Jalprakash G. Chimanchode, Sai Pavan Kumar Pakala
Abstract: A method of searching a multilevel partitioned database includes receiving a query data from the multilevel partitioned database. At least for one level partitions are dynamically included. For some levels, partitions may also be statically included for execution of the query. The query is the executed over the partitions that are both dynamically and statically included. In one example, the cost of joining two tables in a multilevel partitioned database includes determining level partitions that can be statically included, estimating level partitions that will be dynamically considered for the join, and determining a cost as a function of the estimated statically included level partitions and estimated dynamically included level partitions.
Type:
Grant
Filed:
July 30, 2007
Date of Patent:
March 12, 2013
Assignee:
Teradata US, Inc.
Inventors:
Paul Sinclair, Xiaorong Luo, Mark Sirek
Abstract: A virtual regulator monitors and manages a plurality of database systems in a domain. Each of the database systems is tuned for a particular type of workload, and the virtual regulator or multiple virtual regulators running in parallel routes a set of one or more queries to a particular database system within the domain based on a cost function for each database system.
Type:
Grant
Filed:
November 19, 2007
Date of Patent:
March 5, 2013
Assignee:
Teradata US, Inc.
Inventors:
Douglas Brown, Scott Gnau, John Mark Morris, William Ward