Patents by Inventor Pekka Kostamaa

Pekka Kostamaa has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 8131711
    Abstract: A system, method, and computer-readable medium that facilitate management of data skew during a parallel join operation are provided. Portions of tables involved in the join operation are distributed among a plurality of processing modules, and each of the processing modules is provided with a list of skewed values of a join column of a larger table involved in the join operation. Each of the processing modules scans the rows of the tables distributed to the processing modules and compares values of the join columns of both tables with the list of skewed values. Rows of the larger table having non-skewed values in the join column are redistributed, and rows of the larger table having skewed values in the join column are maintained locally at the processing modules. Rows of the smaller table that have non-skewed values in the join column are redistributed, and rows of the smaller table that have skewed values in the join column are duplicated among the processing modules.
    Type: Grant
    Filed: May 22, 2008
    Date of Patent: March 6, 2012
    Assignee: Teradata Corporation
    Inventors: Yu Xu, Pekka Kostamaa
  • Patent number: 8126905
    Abstract: A system, method, and computer-readable medium for optimizing the performance of outer joins in a parallel processing system are provided. Predicates involving only attributes of a left table of a left outer join are pushed down to the outer relation for left outer joins having join predicates involving left table attributes and/or predicates involving attributes of both the right and left table. In such an instance, the rows of the left table may be partitioned into two sub-relations according to the predicate involving only attributes of the left table. Rows of the left table are allocated to a first sub-relation if the rows satisfy the predicate involving only attributes of the left table and rows of the left table are allocated to a second sub-relation if the rows fail to satisfy the predicate involving only attributes of the left table. Accordingly, only rows of the first sub-relation are required to be left outer joined with the right table.
    Type: Grant
    Filed: September 23, 2008
    Date of Patent: February 28, 2012
    Assignee: Teradata US, Inc.
    Inventors: Yu Xu, Olli Pekka Kostamaa
  • Patent number: 8126900
    Abstract: A database system receives a transaction that selects values of a column of a first table based on one or more conditions, the column in the first table being according to a first data type. The database system transforms the first data type to a second, different data type. The selected values of the column according to the second data type are stored in the second table.
    Type: Grant
    Filed: February 3, 2004
    Date of Patent: February 28, 2012
    Assignee: Teradata US, Inc.
    Inventors: O. Pekka Kostamaa, J. Mark Morris
  • Patent number: 8099409
    Abstract: A system, method, and computer-readable medium for optimizing join operations in a parallel processing system are provided. A respective set of rows of a first table and a second table involved in a join operation are distributed to each of a plurality of processing modules. The join operation comprises a join on a first column of the first table and a second column of the second table. Each of the plurality of processing modules redistributes at least a portion of the rows of the first table distributed thereto substantially equally among the other processing modules and duplicates at least a portion of the rows of the second table distributed thereto among the plurality of processing modules. The disclosed optimization mechanisms provide for reduced spool space requirements for execution of the parallel join operation.
    Type: Grant
    Filed: September 3, 2008
    Date of Patent: January 17, 2012
    Assignee: Teradata US, Inc.
    Inventors: Xin Zhou, Olli Pekka Kostamaa
  • Patent number: 7941424
    Abstract: A system, method, and computer-readable medium for dynamic detection and management of data skew in parallel join operations are provided. Receipt of an excessive number of redistributed rows by a processing module is detected thereby identifying the processing module as a hot processing module. Other processing modules then terminate redistribution of rows to the hot processing module and maintain rows of a skewed table of the join operation that would be redistributed to the hot processing module in a local spool. Rows of a smaller table that would be redistributed to the hot processing module are duplicated to each processing module involved in the join operation. Rows of tables that are to be redistributed by a processing module to any processing module excluding the hot processing module are redistributed accordingly and maintained locally by the processing module. The join operation is completed by merging results of local join data sets of each processing module.
    Type: Grant
    Filed: May 30, 2008
    Date of Patent: May 10, 2011
    Assignee: Teradata US, Inc.
    Inventors: Yu Xu, Pekka Kostamaa, Mark Sirek
  • Publication number: 20110093499
    Abstract: A system, method, and computer-readable medium that facilitate dynamic skew avoidance are provided. The disclosed mechanisms advantageously do not require any statistic information regarding which values are skewed in a column on which a query is applied. Query selectivity is evaluated at a check point and thereby facilitates accurate detection of an overloaded processing module. The successful detection of an overloaded processing module causes other processing modules to stop sending more skewed rows to the overloaded processing module. Detection of an overloaded processing module is made when the overloaded processing module has received more rows than a target number of rows. Further, skewed rows that are maintained locally rather than redistributed to a detected processing module may result in more processing modules becoming overloaded. Advantageously, the disclosed mechanisms provide for a final redistribution adjustment to provide for even distribution of rows among all processing modules.
    Type: Application
    Filed: October 21, 2009
    Publication date: April 21, 2011
    Inventors: Xin Zhou, Olli Pekka Kostamaa
  • Patent number: 7870123
    Abstract: The invention relates to a method of determining the performance of an optimizer program arranged to generate a plan. The method generally comprises the steps of executing the optimizer utilising at least one test case to derive a pre-variation plan; executing the pre-variation plan to generate a first output; varying a strategy of the optimizer program; executing the varied optimizer program utilising the at least one test case to derive a post-variation plan; and executing the post-variation plan to generate a second output. The outputs are then grouped according to at least one element of the plans to assess the performance of the optimizer.
    Type: Grant
    Filed: December 1, 2006
    Date of Patent: January 11, 2011
    Assignee: Teradata US, Inc.
    Inventors: Bibhu Ranjan Priyadarshi, Grace Au, Olli Pekka Kostamaa
  • Publication number: 20100332458
    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.
    Type: Application
    Filed: June 30, 2009
    Publication date: December 30, 2010
    Inventors: Yu Xu, Olli Pekka Kostamaa, Xin Zhou
  • Patent number: 7792809
    Abstract: There is provided a parallel database system 1. System 1 includes a storage device 2 for maintaining a plurality of rows 3. System 1 also includes a plurality of access modules 4 for accessing in parallel a respectively assigned one or more of rows 3. An interface 5 receives data 6 indicative of a table 7 defined by a selection 8 of rows 3. A processor 9 is responsive to data 6 for selectively designating table 7 to be a single-module table. In this single module table, selection 8 is collectively assigned to an owning one of modules 4, indicated by reference numeral 10.
    Type: Grant
    Filed: December 8, 2006
    Date of Patent: September 7, 2010
    Assignee: Tera data US, Inc.
    Inventors: Pekka Kostamaa, Bhashyam Ramesh
  • Publication number: 20100153429
    Abstract: A system, method, and computer-readable medium for optimized processing of queries that feature maximum or minimum equality conditions are provided. A table on which the query is applied is scanned a single time. Rows of the table distributed to respective processing modules are scanned by the processing modules. Each processing module maintains identification of any rows distributed to the respective processing module that have attribute values that equal the maximum or minimum attribute value locally identified by the processing module. Subsequently, a global aggregation mechanism is invoked to compute the query result without requiring an additional rescan of the table. Further, the disclosed mechanisms may be extended to compute top N queries featuring maximum or minimum equality conditions.
    Type: Application
    Filed: December 11, 2008
    Publication date: June 17, 2010
    Inventors: Yu Xu, Olli Pekka Kostamaa
  • Publication number: 20100131540
    Abstract: A system, method, and computer-readable medium for optimization of query processing in a parallel processing system are provided. Skewed values and non-skewed values are treated differently to improve upon conventional DISTINCT and aggregation query processing. Skewed attribute values on which a DISTINCT selection or group by aggregation is applied are allocated entries in a hash table. In this manner, a processing module may consult the hash table to determine if a skewed attribute value has been encountered during the query processing in a manner that precludes repetitive redistribution of rows with highly skewed attribute values on which a DISTINCT selection or group by aggregation is applied.
    Type: Application
    Filed: November 25, 2008
    Publication date: May 27, 2010
    Inventors: Yu Xu, Olli Pekka Kostamaa
  • Publication number: 20100121836
    Abstract: A system, method, and computer-readable medium for optimizing query performance in a database system are provided. In one embodiment, join predicates of a self outer join are evaluated. If each join predicate is respectively based on a common join attribute, and each join attribute has a not null constraint applied thereto, the self outer join may be re-written as a self inner join. In another embodiment, if not null and unique constraints are applied to each join attribute of an inner join featuring join predicates each respectively based on a common join attribute, the inner join may advantageously removed thereby resulting in a select operation.
    Type: Application
    Filed: November 11, 2008
    Publication date: May 13, 2010
    Inventors: Yu Xu, Olli Pekka Kostamaa
  • Publication number: 20100082600
    Abstract: A system, method, and computer-readable medium for optimizing the performance of outer joins in a parallel processing system are provided. Predicates involving only attributes of a left table of a left outer join are pushed down to the outer relation for left outer joins having join predicates involving left table attributes and/or predicates involving attributes of both the right and left table. In such an instance, the rows of the left table may be partitioned into two sub-relations according to the predicate involving only attributes of the left table. Rows of the left table are allocated to a first sub-relation if the rows satisfy the predicate involving only attributes of the left table and rows of the left table are allocated to a second sub-relation if the rows fail to satisfy the predicate involving only attributes of the left table. Accordingly, only rows of the first sub-relation are required to be left outer joined with the right table.
    Type: Application
    Filed: September 23, 2008
    Publication date: April 1, 2010
    Inventors: Yu Xu, Olli Pekka Kostamaa
  • Publication number: 20100057672
    Abstract: A system, method, and computer-readable medium for optimizing join operations in a parallel processing system are provided. A respective set of rows of a first table and a second table involved in a join operation are distributed to each of a plurality of processing modules. The join operation comprises a join on a first column of the first table and a second column of the second table. Each of the plurality of processing modules redistributes at least a portion of the rows of the first table distributed thereto substantially equally among the other processing modules and duplicates at least a portion of the rows of the second table distributed thereto among the plurality of processing modules. The disclosed optimization mechanisms provide for reduced spool space requirements for execution of the parallel join operation.
    Type: Application
    Filed: September 3, 2008
    Publication date: March 4, 2010
    Inventors: Xin Zhou, Olli Pekka Kostamaa
  • Publication number: 20100049722
    Abstract: A system, method, and computer-readable medium for optimizing execution of a join operation in a parallel processing system are provided. A plurality of processing nodes that have at least one row of one or more tables involved in a join operation are identified. For each of the processing nodes, respective counts of rows that would be redistributed to each of the processing nodes based on join attributes of the rows are determined. A redistribution matrix is calculated from the counts of rows of each of the processing nodes. An optimized redistribution matrix is generated from the redistribution matrix, wherein the optimized redistribution matrix provides a minimization of rows to be redistributed among the nodes to execute the join operation.
    Type: Application
    Filed: August 19, 2008
    Publication date: February 25, 2010
    Inventors: Yu Xu, Olli Pekka Kostamaa, Xin Zhou
  • Publication number: 20090299956
    Abstract: A system, method, and computer-readable medium for dynamic detection and management of data skew in parallel join operations are provided. Receipt of an excessive number of redistributed rows by a processing module is detected thereby identifying the processing module as a hot processing module. Other processing modules then terminate redistribution of rows to the hot processing module and maintain rows of a skewed table of the join operation that would be redistributed to the hot processing module in a local spool. Rows of a smaller table that would be redistributed to the hot processing module are duplicated to each processing module involved in the join operation. Rows of tables that are to be redistributed by a processing module to any processing module excluding the hot processing module are redistributed accordingly and maintained locally by the processing module. The join operation is completed by merging results of local join data sets of each processing module.
    Type: Application
    Filed: May 30, 2008
    Publication date: December 3, 2009
    Inventors: Yu Xu, Pekka Kostamaa, Mark Sirek
  • Publication number: 20090292668
    Abstract: A system, method, and computer-readable medium that facilitate management of data skew during a parallel join operation are provided. Portions of tables involved in the join operation are distributed among a plurality of processing modules, and each of the processing modules is provided with a list of skewed values of a join column of a larger table involved in the join operation. Each of the processing modules scans the rows of the tables distributed to the processing modules and compares values of the join columns of both tables with the list of skewed values. Rows of the larger table having non-skewed values in the join column are redistributed, and rows of the larger table having skewed values in the join column are maintained locally at the processing modules. Rows of the smaller table that have non-skewed values in the join column are redistributed, and rows of the smaller table that have skewed values in the join column are duplicated among the processing modules.
    Type: Application
    Filed: May 22, 2008
    Publication date: November 26, 2009
    Inventors: Yu Xu, Pekka Kostamaa
  • Patent number: 7565373
    Abstract: A method, computer system, and database system for automating a business rule in a database are disclosed. One or more database triggers associated with a business rule state machine are enabled and the business rule state machine is initialized.
    Type: Grant
    Filed: December 7, 2005
    Date of Patent: July 21, 2009
    Assignee: Teradata US, Inc.
    Inventors: Bhashyam Ramesh, Pekka Kostamaa
  • Publication number: 20090049024
    Abstract: A computer-implemented system, method and article of manufacture for managing a plurality of database systems in a domain, wherein each of the database systems are managed by one or more closed-loop system management (CLSM) regulators. A virtual regulator manages the domain, wherein the virtual regulator communicates with the CLSM regulators to monitor the database systems' system conditions and operating environment events within the domain and to provide for dynamic query optimization between the database systems within in the domain based on the system conditions and operating environment events.
    Type: Application
    Filed: August 14, 2007
    Publication date: February 19, 2009
    Inventors: Douglas P. Brown, Olli Pekka Kostamaa, John Mark Morris, Bhashyam Ramesh, Anita Richards
  • Publication number: 20080147603
    Abstract: A method of and system for extracting time series data from temporal data in a database table is disclosed. The method comprises receiving a request for time series data, the request including information indicative of a period of time to be covered by the request, values sought by the request, time instants at which the values are sought and a precision between consecutive time instants, and creating a temporary table and populating the temporary table with a plurality of time stamps covering the period of time indicated by the request, consecutive time stamps being separated by the precision indicated by the request, and the time stamps specifying the time instants indicated by the request.
    Type: Application
    Filed: December 14, 2006
    Publication date: June 19, 2008
    Inventors: Olli Pekka Kostamaa, Bhashyam Ramesh