Patents Assigned to Teradata
  • Patent number: 10459906
    Abstract: The number of processors that store data can be limited for some data in order to improve efficiency in database system that uses multiple processing units to process data. For example, a map can be provided for one or more sparse database tables (or tables) that are relatively small in view of the number of processors that are available. The map can effectively assign distinct portions of the data, e.g., rows of a database, for processing only to a limited number of processors (or processing units). The database system can use the map to process data accordingly.
    Type: Grant
    Filed: October 20, 2017
    Date of Patent: October 29, 2019
    Assignee: Teradata US, Inc.
    Inventors: Frederick S. Kaufmann, Paul Laurence Sinclair
  • Patent number: 10459907
    Abstract: An order (or priority) for reassigning data portions of a database from a first map to a second map can be determined. It should be noted that the first map assigns the data portions to a first configuration of processors for processing the data portions, and the second map assigns the data portions to a second configuration of processors, different than the first configuration, for processing the data portions in a database system and/or environment. The order can be determined by grouping the data in multiple groups and ordering the groups in accordance with a determined priority for reassignment. In doing so, one or more relationships between the data portions and/or cost of use for each one the groups can be considered.
    Type: Grant
    Filed: October 30, 2017
    Date of Patent: October 29, 2019
    Assignee: Teradata US, Inc.
    Inventors: Frederick S. Kaufmann, Rajendran Kolandasamy, Philip Jason Benton, Paul Laurence Sinclair, Donald Raymond Pederson, Louis Martin Burger
  • Patent number: 10459912
    Abstract: A system, method, and computer-readable medium for optimized processing of queries that feature maximum or minimum equality conditions are provided. The disclosed mechanisms provide for a single-scan of the table on which the group-by query is applied. When the table is scanned, each processing module dynamically keeps track of the row(s) having a value of the attribute on which the equality condition is applied that equals or exceeds the maximum attribute value (assuming a maximum equality condition is applied) previously encountered by the processing module. Subsequently, a global aggregation process is then performed to compute the query's result without rescanning the table. Queries featuring a minimum equality condition are similarly processed in accordance with the disclosed embodiments.
    Type: Grant
    Filed: April 13, 2012
    Date of Patent: October 29, 2019
    Assignee: Teradata US, Inc.
    Inventor: Yu Xu
  • Patent number: 10452658
    Abstract: Query conditions are received in a cache from a query optimizer of a Database Management System (DBMS). Dynamic statistics for the query conditions are maintained in the cache. Actual statistics are received in the cache after the query conditions are executed in the DBMS. Entropy-based estimated selectivity values for executing the query conditions are provided to the query optimizer to develop a query plan for executing queries having the query conditions. The entropy-based estimated selectivity values based, at least in part, on the dynamic statistics and the actual statistics.
    Type: Grant
    Filed: December 23, 2014
    Date of Patent: October 22, 2019
    Assignee: Teradata US, Inc.
    Inventors: Kuorong Chiang, Chuchu Wu, Wei Tang
  • Patent number: 10452632
    Abstract: A system may include an array of storage devices configured to store a data. The system may further include an array of processing nodes in communication with the array of storage devices. The array of processing nodes may receive a request to perform at least one task associated with the data. The request may include a function call to a function configured to operate on a first data table and a second data table included in the data. The array of processing nodes may partition the first data table among respective subsets of the processing nodes based on a partition key. The array of processing nodes may distribute the second data table among the partitions based on the partition key. The array of processing nodes may execute the function on the first data table and the second data table at each of the partitions. A method and computer-readable medium may also be implemented.
    Type: Grant
    Filed: June 27, 2014
    Date of Patent: October 22, 2019
    Assignee: Teradata US, Inc.
    Inventors: David Simmen, Ling Wang, Milind Joshi
  • Patent number: 10372730
    Abstract: Techniques for cross referencing data are presented. A first database object and a second database object are linked together. The linkage is automatically cross referenced to a third database object. Access to any of the database objects can be achieved via any of the remaining database objects and vice versa. Additionally, the link and cross reference can be visualized and visually manipulated and modified.
    Type: Grant
    Filed: December 8, 2009
    Date of Patent: August 6, 2019
    Assignee: Teradata US, Inc.
    Inventors: Thomas Kevin Ryan, Carl Lewis Christofferson, Neelesh Bansode, Santosh Kumar Singh, Latesh Pant, Ankit Khare
  • Patent number: 10372690
    Abstract: Disclosed are systems and methods for dynamic joining of database tables. The systems and methods can include: selecting a first table from a plurality of tables; selecting a second table from the plurality of tables; joining the first table and the second table to create a temporary table; and storing, in a memory of a computing device, the temporary table and the temporary skew value. The first table can have a first skew value. The second table can have a second skew value. The second skew value can be similar to the first skew value. The temporary table can have a temporary skew value.
    Type: Grant
    Filed: December 13, 2016
    Date of Patent: August 6, 2019
    Assignee: Teradata US, Inc.
    Inventors: Sanjib Mishra, Rama Krishna Korlapati
  • Patent number: 10372708
    Abstract: A data store system may include an array of persistent storage devices configured to store a plurality of data store tables and a set of rules associated with a plurality of statistics. Each rule may include a relationship between at least two statistics. The data store system may further include a processor in communication with the storage device. The processor may generate the plurality of statistics on a data store table and retrieve the set of rules. The processor may evaluate the set of rules based on the plurality of statistics and, in response to the determination that at least one rule of the set of rules is violated, adjust a value of at least one of the statistics. The processor may store values of the plurality of statistics in at least one of the persistent storage devices, receive a query on the data store table, and use the stored statistics to generate a response to the query. A method and computer-readable medium are also disclosed.
    Type: Grant
    Filed: December 31, 2014
    Date of Patent: August 6, 2019
    Assignee: Teradata US, Inc.
    Inventor: Sung Jin Kim
  • Patent number: 10366057
    Abstract: Data or one or more operations can be provided, based on one or more characteristics associated with the data and/or operations, to a designated computing group or pool of computing resources designated for handling the data and/or operations with the particular data characteristic(s). The designated computing group can, for example, be one of multiple computing groups in the same system or device. As such, all of the computing groups can still function together in the same system or device, for example, in parallel. However, each one of the multiple computing groups can, for example, be defined or predefined to include one or more computing resources that are more suitable for storing and/or processing data with one or more data characteristics or handle operations with one or more determined characteristics.
    Type: Grant
    Filed: May 24, 2013
    Date of Patent: July 30, 2019
    Assignee: Teradata US, Inc.
    Inventors: John Mark Morris, Donald Raymond Pederson, Douglas P. Brown
  • Publication number: 20190197156
    Abstract: A User-Defined Function (UDF) provided by a user and accessed through a user query is identified. A wrapper for the UDF is generated. The wrapper represents a customized instance of the UDF. The wrapper, during execution, selectively calls the UDF provided by the user. Any query that references the UDF is rewritten to process the wrapper instead of the UDF.
    Type: Application
    Filed: December 22, 2017
    Publication date: June 27, 2019
    Applicant: Teradata US, Inc.
    Inventors: Heng Yuan, Judy Wu, Yu Long, Congnan Luo
  • Patent number: 10289626
    Abstract: Seed patterns are derived from a sequence database. Execution costs for types of seed patterns are computed. Each seed pattern is iteratively distributed to distributed nodes along with that seed pattern's assigned execution cost. The distributed nodes processing in parallel to mine the sequence database for super patterns found in the sequence database. When a distributed node exhausts its execution budget, any remaining mining needed for the seed pattern being mined is reallocated to another distributed node having remaining execution budget.
    Type: Grant
    Filed: December 30, 2014
    Date of Patent: May 14, 2019
    Assignee: Teradata US, Inc.
    Inventors: Tao Li, Lijun Zhao, Yu Wang, Wenjie Wu, Qian Zhang, Shaoming Li
  • Patent number: 10289632
    Abstract: A data store system may include a storage device that may store a plurality of data. The data store system may also include a processor in communication with the storage device. The processor may receive a request that references at least one input array having an element type, a size, and a dimension. The processor may further generate an array based on the request. The array may have an element type, a size, and a dimension and at least one of the element type, the size, and the dimension of the array may be different than the element type, the size, and the dimension of the input array. The processor may further generate, using the array, an output in response to the request. A method and computer-readable medium may also be implemented.
    Type: Grant
    Filed: March 14, 2014
    Date of Patent: May 14, 2019
    Assignee: Teradata US, Inc.
    Inventors: Elizabeth J. Brealey, Angelica Garcia-Gutierrez, Michael L. Reed
  • Patent number: 10289611
    Abstract: User Defined Functions (UDFs) for a parallel database system are enhanced by making memory persist even when the UDFs terminate. The memory can be shared between different instances of the UDF and the memory can be custom mapped, encrypted, and use custom security.
    Type: Grant
    Filed: April 29, 2011
    Date of Patent: May 14, 2019
    Assignee: Teradata US, Inc.
    Inventor: Rolf Gunter Erich Stegelmann
  • Patent number: 10282449
    Abstract: A data store system may include a persistent storage device that may store a plurality of data tables. The data store system may further include a processor array in communication with the persistent storage device. The processor array may receive a query comprising a call to a user-defined function (UDF) that may determine a plurality of aggregates for at least one data table from the plurality of data tables. The processor array may determine a number of the plurality of aggregates in the UDF. The processor array may perform a single read of rows associated with the plurality aggregates from the at least one data table. At least one row of the rows may be commonly associated with more than one of the plurality of aggregates. The processor array may generate each aggregate of the plurality of aggregates using the rows according to the UDF. A method and computer-readable medium may also be implemented.
    Type: Grant
    Filed: August 26, 2015
    Date of Patent: May 7, 2019
    Assignee: Teradata US, Inc.
    Inventors: Congnan Luo, Yu Long, Heng Yuan
  • Patent number: 10268724
    Abstract: Techniques for improving complex database queries are provided. A determination is made whether to adopt a static or dynamic query execution plan based on metrics. When the dynamic query execution plan is used, a request fragment of the request is planned and the corresponding plan fragment is executed. The processed fragment provides feedback related to its processing to the remaining request and the process is repeated on the remaining request until the request is completed.
    Type: Grant
    Filed: September 30, 2013
    Date of Patent: April 23, 2019
    Assignee: Teradata US, Inc.
    Inventors: Rama Krishna Korlapati, Paul Sinclair, Grace Kwan-On Au, Vijay Sarathy
  • Publication number: 20190114295
    Abstract: Techniques for improving complex database queries are provided. A determination is made whether to adopt a static or dynamic query execution plan for a received database query based on metrics. When a dynamic query execution plan is adopted, the database query is separated into query fragments. A plan fragment is generated for each query fragment and executed to generate feedback for the plan fragment. The feedback from the execution of each plan fragment is used to initiate query rewrite rules to simplify the corresponding query fragments. The rewritten query fragments are combined to generate the dynamic query plan.
    Type: Application
    Filed: December 12, 2018
    Publication date: April 18, 2019
    Applicant: Teradata US, Inc.
    Inventors: Bin Cao, Yi Xia, Sanjib Mishra, Rama Krishna Korlapati, Tri Minh Tran, Mohammed Al-Kateb, Paul Laurence Sinclair, Chengyang Zhang
  • Patent number: 10261888
    Abstract: A test system receives environment information of a target database system, where the environment information includes information relating to hardware and software components of the target database system, and one or more of: definitions of workloads in the target database system, and settings of a scheduler in the target database system. The test system emulates an environment of the target database system using the received environment information, and database software is executed in the emulated environment in the test system.
    Type: Grant
    Filed: October 12, 2012
    Date of Patent: April 16, 2019
    Assignee: Teradata US, Inc.
    Inventors: Douglas P. Brown, Anita Richards, James Peter Colby, Jr., Jeffrey S. Shelton
  • Patent number: 10229175
    Abstract: An event tap associated with a server, such as a Web server, at a machine can transform a server event into a tuple, select a database node for the tuple, and place the tuple in a queue for that database node, and then flush the queue periodically directly into database notes. The use of an event tap can thus reduce the computational burden on the database while keeping the server event data in the database relatively fresh.
    Type: Grant
    Filed: September 10, 2014
    Date of Patent: March 12, 2019
    Assignee: Teradata US, Inc.
    Inventors: George Candea, Anastasios Argyros, Mayank Bawa
  • Patent number: 10180961
    Abstract: A query optimizer identifies a condition that supports a remote nested join. A first Access Module Processor (AMP) is sent the condition to obtain a first set of rows that satisfy the condition from a first table and the first AMP is instructed to perform the remote nested join with a second remote AMP to acquire a second set of rows that satisfy the condition from a second table. The first AMP joins the first set of rows and the second set of rows as a join result, which is returned to the query optimizer.
    Type: Grant
    Filed: December 17, 2014
    Date of Patent: January 15, 2019
    Assignee: Teradata US, Inc.
    Inventors: Grace Kwan-On Au, Mohammed Al-Kateb
  • Publication number: 20180329747
    Abstract: Capacity of a database system and/or a computing system that includes a database can be effectively changed from a current computing capacity to another computing capacity. This can be achieved by causing usage capacity of at least one of resource to be changed when the database is active. By way of example, capacity of a database system can be regulated by delaying the execution of the database work based on a target capacity. As a result, database work can take relatively longer to complete when the capacity of a database is effectively regulated to be below its full capacity. In effect, a portion of available capacity (excess capacity) can be made inaccessible to the database. However, excess capacity can be used to manage various services of the database in accordance with one or more service criteria (e.g., Service Level Goals or Agreements).
    Type: Application
    Filed: July 24, 2018
    Publication date: November 15, 2018
    Applicant: Teradata US, Inc.
    Inventors: Douglas P. Brown, Thomas Patrick Julien, Anita Richards, Louis Martin Burger