Patents by Inventor Bhashyam Ramesh

Bhashyam Ramesh 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: 10706052
    Abstract: A method for performing in-memory hash join processing. This method utilizes bulk processing within the hash join steps, such as performing bulk reads of hash values from tables to be joined, and performing bulk probes of hash values in tables to be joined, thereby providing more efficient utilization of memory bandwidth and CPU throughput, reducing memory accesses in the execution path, and reducing CPU cycles per instruction. Data movement is reduced by reducing load-stores to memory and by performing more operations in CPU cache.
    Type: Grant
    Filed: December 21, 2017
    Date of Patent: July 7, 2020
    Assignee: Teradata US, Inc.
    Inventors: Bhashyam Ramesh, Sai Pavan Kumar Pakala, Jaiprakash G Chimanchode
  • Publication number: 20200210395
    Abstract: Control versioning of records in a temporal table is provided to reduce data redundancy. New Data Definition Language (DDL) syntax is provided to make individual columns within a table sensitive or insensitive to whether new row versions are generated when Database Manipulation Language (DML) statements operate on the table. The database parser and back-end data processors are configured to create the table with the user-defined versioning attributes and to manage versioning of the rows without requiring additional programming.
    Type: Application
    Filed: December 28, 2018
    Publication date: July 2, 2020
    Inventors: Stephen Molini, Bhashyam Ramesh, Jaiprakash Ganpatrao Chimanchode, Sai Pavan Kumar Pakala, Pratik Patodi, Dhrubajyoti Roy, Todd Walter
  • Publication number: 20200183936
    Abstract: A query is preprocessed for features identified by a Data Manipulation Language (DML) in the text of the query. A machine-learning algorithm uses the features as input and provides as output a predicted query parsing execution time needed by a query parser to parse the query. The predicted query parsing time is provided as input to a query optimizer. The query optimizer uses the predicted query parsing time as a factor in optimizing a query execution plan for the query. Subsequently, the query execution plan is executed against a database as the query.
    Type: Application
    Filed: December 10, 2018
    Publication date: June 11, 2020
    Inventors: Bhashyam Ramesh, Jaiprakash Ganpatrao Chimanchode, Naveen Thaliyil Sankaran, Jitendra Yasaswi Bharadwaj Katta
  • Patent number: 10678794
    Abstract: A method for detecting and handling skew and spillover in in-memory hash join operations. To improve the detection of skew and spillover in parallel processing systems, a Poisson distribution of unique hash values to Units of Parallelism (UoPs) is employed to determine the number of rows per UoP and in turn, the potential of spillover at a UoP. Hash join plan options can be selected or adjusted to reduce the likelihood of spillover.
    Type: Grant
    Filed: December 29, 2017
    Date of Patent: June 9, 2020
    Assignee: Teradata US, Inc.
    Inventors: Bhashyam Ramesh, Suresh Kumar Jami
  • Publication number: 20200151178
    Abstract: Techniques for improving the execution of database queries in a multi-processor system or distributed processing system environment are provided. In a database system including multiple parsing engines (PEs) for parsing database queries, or requests, received by the system and generating execution plans for the requests, execution plans generated for requests can be saved in a global request cache accessible to each of the parsing engines. Requests which have been parsed and cached by a PE can be retrieved for use by other PEs, thereby avoiding unnecessarily parsing the same database request in multiple PEs. The global request cache may be a distributed cache consisting of request caches local to each parsing engine, with execution plans allocated to the local request caches using hashing techniques applied to the database requests associated with the execution plans.
    Type: Application
    Filed: December 31, 2018
    Publication date: May 14, 2020
    Applicant: Teradata US, Inc.
    Inventors: Bhashyam Ramesh, Mohan Kumar KJ, J Venkata Ramana, Anitha G, Karan Kaur Phull
  • Publication number: 20190197163
    Abstract: Search spaces for obtaining query execution plans for a query are identified. The search spaces are subdivided into sub-search spaces. Searches are initiated within the sub search spaces and plan costs for competing query execution plans are noted along with search costs associated with continuing to search the sub-search spaces. A decision is made based on the plan costs and search costs for utilizing search resources as to when to terminate the searching and to select the then-existing lowest cost query execution plan as an optimal query execution plan for executing the query.
    Type: Application
    Filed: December 22, 2017
    Publication date: June 27, 2019
    Inventors: John Mark Morris, Bhashyam Ramesh, Donald Raymond Pederson, Kuorong Chiang
  • Publication number: 20190188298
    Abstract: A function reference for a function is identified in a query. A plurality of processing environments that can provide the function is identified. Function costs for the function to process in the processing environments are obtained. Input data transfer costs are acquired for providing input data identified in the query to each of the functions. A specific one of the functions from a specific processing environment is selected based on the function costs and the input data transfer costs. A query execution plan for executing the query with the specific function is generated. The query execution plan is provided to a database engine for execution.
    Type: Application
    Filed: December 20, 2017
    Publication date: June 20, 2019
    Inventors: John Mark Morris, Bhashyam Ramesh
  • Publication number: 20190163788
    Abstract: A database includes a Value List Compression (VLC) predicate evaluator. A table identified in a query that is being processed is identified as having compressed data values. The predicate evaluator compares a query predicate of the query against actual decompressed values noted in a dictionary for the table and the predicate evaluator maintains a bitmap for selective ones of the actual values that satisfy the query predicate. The matched bitmap positions are processed against an index maintained in the table for the actual values to provide selective decompressed table entries as results for the query.
    Type: Application
    Filed: November 29, 2017
    Publication date: May 30, 2019
    Inventors: Bhashyam Ramesh, Tirupathi Prabhu Bellapukonda, Philip Jason Benton, Donald Raymond Pederson
  • Publication number: 20180129661
    Abstract: An improved hash table structure compatible with in-memory processing for increasing cache efficiency during hash join processing of a small and large table in a relational database system. The hash table, residing in processor memory, includes a first partition containing a join condition column providing best selectivity for joining the small table with the large table, at least one additional partition containing additional join condition columns for joining the small table with the large table; and an array of hash values, the array of hash values providing an index into the hash table partitions.
    Type: Application
    Filed: June 23, 2017
    Publication date: May 10, 2018
    Applicant: Teradata US, Inc.
    Inventors: Bhashyam Ramesh, Sai Pavan Kumar Pakala, Muthukumaran Raveendiran
  • Publication number: 20180121563
    Abstract: A method for detecting and handling skew and spillover in in-memory hash join operations. To improve the detection of skew and spillover in parallel processing systems, a Poisson distribution of unique hash values to Units of Parallelism (UoPs) is employed to determine the number of rows per UoP and in turn, the potential of spillover at a UoP. Hash join plan options can be selected or adjusted to reduce the likelihood of spillover.
    Type: Application
    Filed: December 29, 2017
    Publication date: May 3, 2018
    Applicant: Teradata US, Inc.
    Inventors: Bhashyam Ramesh, Suresh Kumar Jami
  • Publication number: 20180113909
    Abstract: A method for performing in-memory hash join processing. This method utilizes bulk processing within the hash join steps, such as performing bulk reads of hash values from tables to be joined, and performing bulk probes of hash values in tables to be joined, thereby providing more efficient utilization of memory bandwidth and CPU throughput, reducing memory accesses in the execution path, and reducing CPU cycles per instruction.
    Type: Application
    Filed: December 21, 2017
    Publication date: April 26, 2018
    Applicant: Teradata US, Inc.
    Inventors: Bhashyam Ramesh, Sai Pavan Kumar Pakala, Jaiprakash G Chimanchode
  • Publication number: 20180004809
    Abstract: A method for spooling data for use in joining a small table with a large table in a relational database system. The method analyzes a join condition for combining records from the small and large tables, selects qualified rows from the large table, and writes the qualified rows to a spool file. The spool file includes a first partition containing hash values of all bind terms for the join condition; a second partition including a join column with a best selective bind term; and at least one additional partition including additional join columns used in bind terms. The partitions are grouped together within a container row in the spool file, and multiple container rows are written together within a super-container row in the spool file.
    Type: Application
    Filed: June 23, 2017
    Publication date: January 4, 2018
    Applicant: Teradata US, Inc.
    Inventors: Bhashyam Ramesh, Venkata Ramana Jyothula, Muthukumaran Raveendiran, Jaya Saxena, Michael Warren Watzke
  • Publication number: 20170371927
    Abstract: A method for performing row qualification in database table retrieval and join operations. This method, referred to as bulk qualification, evaluates conditions on multiple rows in a database table at the same time, providing more efficient utilization of memory bandwidth and CPU throughput.
    Type: Application
    Filed: June 26, 2017
    Publication date: December 28, 2017
    Applicant: Teradata US, Inc.
    Inventors: Bhashyam Ramesh, Tirupathi Prabhu Bellapukonda, Mohan Kumar KJ, Vamshi Krishna Vangapalli
  • Publication number: 20170103096
    Abstract: A database management system returns data from a database table in response to a database query. It does so by assessing whether the database table has any rows of data. When there are no rows of data in the table, execution of the query is halted until data is placed in the database table and then the data that placed in the database table is returned in response to the query.
    Type: Application
    Filed: December 2, 2013
    Publication date: April 13, 2017
    Applicant: TERADATA US, INC.
    Inventors: Jason S. Chen, Bhashyam Ramesh
  • Patent number: 9430526
    Abstract: A method, database system and computer program are disclosed for optimizing a SQL query, in which the SQL query seeks to aggregate temporal database information. The method includes determining whether two rows of information have a common grouping value, and if so, determining both temporal overlap and temporal non-overlap components of the two rows, aggregating each of the temporal overlap components of the two rows, and separating the temporal non-overlap components of the two rows.
    Type: Grant
    Filed: September 29, 2008
    Date of Patent: August 30, 2016
    Assignee: Teradata US, Inc.
    Inventors: Bhashyam Ramesh, Manjula Koppuravuri
  • Patent number: 9165008
    Abstract: A system and method for compressing data. The system and method employ a static compression dictionary, or look-up table, containing a predetermined number of uncompressed data values and corresponding compressed code values for replacing uncompressed data values with their corresponding compressed code values to reduce data storage requirements. The system and method further employ a dynamic compression dictionary, to which uncompressed data values and corresponding compressed code values are added as required to compress uncompressed data values not contained within the static compression dictionary.
    Type: Grant
    Filed: December 12, 2012
    Date of Patent: October 20, 2015
    Assignee: Teradata US, Inc.
    Inventors: Bhashyam Ramesh, Vinupriya Selvamanee, Jaiprakash Chimanchode
  • Patent number: 9141632
    Abstract: Demographics for data are determined. A compression ratio (“CR”) is determined for each of a plurality of compression techniques. CR is a size of the data before compression divided into a predicted size of the data after compression. The predicted size of the data after compression is determined as a function of the determined demographics. An access efficiency of each of the compression techniques is determined as a function of the determined demographics. The compression techniques are ranked by CR and access efficiency. A compression technique is selected based on the ranking. The data is compressed using the selected compression technique. The compressed data is stored.
    Type: Grant
    Filed: December 19, 2012
    Date of Patent: September 22, 2015
    Assignee: Teradata US, Inc.
    Inventor: Bhashyam Ramesh
  • Patent number: 9110947
    Abstract: A database system may process multiple column-oriented tasks in parallel for a database being stored according to a row-partitioning protocol. The database system may determine when the query should process the column-oriented task serially or in parallel. For parallel processing, the database system may generate processing tasks for each unique column-oriented task contained in the query used to retrieve column data and to process the column data according to the column-oriented tasks requested. A method of operating the database system may determine that multiple column-oriented tasks included in a query are to be processed in parallel. The method may further include generating a processing task for each unique column-oriented task included in the query. The method may further include performing the column-oriented tasks in parallel based on the processing threads. The method may implement various considerations in determining to process to the column-oriented tasks in parallel.
    Type: Grant
    Filed: September 14, 2012
    Date of Patent: August 18, 2015
    Assignee: Teradata US, Inc.
    Inventors: Michael Watzke, Bhashyam Ramesh
  • Patent number: 8725720
    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 specifies a condition that requires the TRC-attribute value to be contained in the parent table's period attribute duration.
    Type: Grant
    Filed: November 29, 2010
    Date of Patent: May 13, 2014
    Assignee: Teradata US, Inc.
    Inventors: Bhashyam Ramesh, Jaiprakash G. Chimanchode, Michael W. Watzke
  • Patent number: 8706769
    Abstract: A temporal target table stored on a computer is scanned using the computer. The temporal target table has a ValidTime dimension and a value dimension. A qualifying-row having a value dimension having a value equal to a value of a value dimension in a row-to-be-inserted is found during the scanning. The row-to-be-inserted has a ValidTime dimension and the value dimension. The qualifying-row is processed. The row-to-be-inserted is inserted in the temporal target table. A ValidTime dimension of the inserted row-to-be-inserted is set to be as the union of the ValidTime dimension of the row-to-be-inserted and the ValidTime dimension of the qualifying-row.
    Type: Grant
    Filed: December 31, 2009
    Date of Patent: April 22, 2014
    Assignee: Teradata US, Inc.
    Inventors: Like Gao, Bhashyam Ramesh, John A. Greene, Michael Leon Reed