Patents by Inventor Shasank K Chavan

Shasank K Chavan 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).

  • Publication number: 20240126816
    Abstract: Herein is database query acceleration from dynamic discovery of whether contents of a persistent column can be stored in an accelerated representation in storage-side memory. In an embodiment, based on data type discovery, a storage server detects that column values in a persistent column have a particular data type. Based on storage-side metadata including a frequency of access of the persistent column as an offload input column for offload computation requests on a certain range of memory addresses, the storage server autonomously decides to generate and store, in storage-side memory in the storage server, an accelerated representation of the persistent column that is based on the particular data type. The storage server receives a request to perform an offload computation for the offload input column. Based on the accelerated representation of the persistent column, execution of the offload computation is accelerated.
    Type: Application
    Filed: September 29, 2023
    Publication date: April 18, 2024
    Inventors: Jorge Luis Issa Garcia, Teck Hua Lee, Sheldon Andre Kevin Lewis, Bangalore Prashanth, Hui Joe Chang, Zhen Hua Liu, Aurosish Mishra, Shasank K. Chavan
  • Publication number: 20230050727
    Abstract: A shared-nothing database system is provided in which parallelism and workload balancing are increased by assigning the rows of each table to “slices”, and storing multiple copies (“duplicas”) of each slice across the persistent storage of multiple nodes of the shared-nothing database system. When the data for a table is distributed among the nodes of a shared-nothing system in this manner, requests to read data from a particular row of the table may be handled by any node that stores a duplica of the slice to which the row is assigned. For each slice, a single duplica of the slice is designated as the “primary duplica”. All DML operations (e.g. inserts, deletes, updates, etc.) that target a particular row of the table are performed by the node that has the primary duplica of the slice to which the particular row is assigned. The changes made by the DML operations are then propagated from the primary duplica to the other duplicas (“secondary duplicas”) of the same slice.
    Type: Application
    Filed: October 26, 2022
    Publication date: February 16, 2023
    Inventors: Jesse Kamp, Allison L. Holloway, Meichun Hsu, Hideaki Kimura, Boris Klots, Vasudha Krishnaswamy, Kartik Kulkarni, Teck Hua Lee, Yunrui Li, Aurosish Mishra, Ajit Mylavarapu, Sukhada Pendse, Garret F. Swart, Shasank K. Chavan, Tirthankar Lahiri, Juan R. Loaiza
  • Patent number: 11550771
    Abstract: A shared-nothing database system is provided in which parallelism and workload balancing are increased by assigning the rows of each table to “slices”, and storing multiple copies (“duplicas”) of each slice across the persistent storage of multiple nodes of the shared-nothing database system. When the data for a table is distributed among the nodes of a shared-nothing system in this manner, requests to read data from a particular row of the table may be handled by any node that stores a duplica of the slice to which the row is assigned. For each slice, a single duplica of the slice is designated as the “primary duplica”. All DML operations (e.g. inserts, deletes, updates, etc.) that target a particular row of the table are performed by the node that has the primary duplica of the slice to which the particular row is assigned. The changes made by the DML operations are then propagated from the primary duplica to the other duplicas (“secondary duplicas”) of the same slice.
    Type: Grant
    Filed: October 14, 2020
    Date of Patent: January 10, 2023
    Assignee: Oracle International Corporation
    Inventors: Jesse Kamp, Allison L. Holloway, Meichun Hsu, Hideaki Kimura, Boris Klots, Vasudha Krishnaswamy, Kartik Kulkarni, Teck Hua Lee, Yunrui Li, Aurosish Mishra, Ajit Mylavarapu, Sukhada Pendse, Garret F. Swart, Shasank K. Chavan, Tirthankar Lahiri, Juan R. Loaiza
  • Patent number: 11397732
    Abstract: An in-memory graph query runtime is integrated inside a database management system and is capable of performing simple patter-matching queries against homogeneous graphs. The runtime efficiently combines breadth-first (BFS) and depth-first (DFS) neighbor traversal algorithms to achieve a hybrid runtime that takes the best from both sides. As a result, the hybrid runtime is able to process arbitrarily large queries with a fixed amount of memory, optimizing for memory locality.
    Type: Grant
    Filed: December 11, 2019
    Date of Patent: July 26, 2022
    Assignee: Oracle International Corporation
    Inventors: Vlad Haprian, Laurent Daynes, Shasank K. Chavan, Jean-Pierre Lozi, Vasileios Trigonakis, Sungpack Hong, Marco Arnaboldi, Ciprian Baetu
  • Patent number: 11392623
    Abstract: An in-memory graph query runtime is integrated inside a database management system and is capable of performing simple patter-matching queries against homogeneous graphs. The runtime efficiently combines breadth-first (BFS) and depth-first (DFS) neighbor traversal algorithms to achieve a hybrid runtime that takes the best from both sides. As a result, the hybrid runtime is able to process arbitrarily large queries with a fixed amount of memory, optimizing for memory locality.
    Type: Grant
    Filed: December 11, 2019
    Date of Patent: July 19, 2022
    Assignee: Oracle International Corporation
    Inventors: Vlad Haprian, Laurent Daynes, Shasank K. Chavan, Jean-Pierre Lozi, Vasileios Trigonakis, Sungpack Hong, Marco Arnaboldi, Ciprian Baetu
  • Patent number: 11392624
    Abstract: An in-memory graph query runtime is integrated inside a database management system and is capable of performing simple patter-matching queries against homogeneous graphs. The runtime efficiently combines breadth-first (BFS) and depth-first (DFS) neighbor traversal algorithms to achieve a hybrid runtime that takes the best from both sides. As a result, the hybrid runtime is able to process arbitrarily large queries with a fixed amount of memory, optimizing for memory locality.
    Type: Grant
    Filed: December 11, 2019
    Date of Patent: July 19, 2022
    Assignee: Oracle International Corporation
    Inventors: Vlad Haprian, Laurent Daynes, Shasank K. Chavan, Jean-Pierre Lozi, Vasileios Trigonakis, Sungpack Hong, Marco Arnaboldi, Ciprian Baetu
  • Patent number: 11354252
    Abstract: Techniques related to automatic cache management are disclosed. In some embodiments, one or more non-transitory storage media store instructions which, when executed by one or more computing devices, cause performance of an automatic cache management method when a determination is made to store a first set of data in a cache. The method involves determining whether an amount of available space in the cache is less than a predetermined threshold. When the amount of available space in the cache is less than the predetermined threshold, a determination is made as to whether a second set of data has a lower ranking than the first set of data by at least a predetermined amount. When the second set of data has a lower ranking than the first set of data by at least the predetermined amount, the second set of data is evicted. Thereafter, the first set of data is cached.
    Type: Grant
    Filed: September 27, 2018
    Date of Patent: June 7, 2022
    Assignee: Oracle International Corporation
    Inventors: Hariharan Lakshmanan, Dhruvil Shah, Prashant Gaharwar, Shasank K. Chavan, Tirthankar Lahiri, Saraswathy Narayan
  • Publication number: 20220114153
    Abstract: A shared-nothing database system is provided in which parallelism and workload balancing are increased by assigning the rows of each table to “slices”, and storing multiple copies (“duplicas”) of each slice across the persistent storage of multiple nodes of the shared-nothing database system. When the data for a table is distributed among the nodes of a shared-nothing system in this manner, requests to read data from a particular row of the table may be handled by any node that stores a duplica of the slice to which the row is assigned. For each slice, a single duplica of the slice is designated as the “primary duplica”. All DML operations (e.g. inserts, deletes, updates, etc.) that target a particular row of the table are performed by the node that has the primary duplica of the slice to which the particular row is assigned. The changes made by the DML operations are then propagated from the primary duplica to the other duplicas (“secondary duplicas”) of the same slice.
    Type: Application
    Filed: October 14, 2020
    Publication date: April 14, 2022
    Inventors: Jesse Kamp, Allison L. Holloway, Meichun Hsu, Hideaki Kimura, Boris Klots, Vasudha Krishnaswamy, Kartik Kulkarni, Teck Hua Lee, Yunrui Li, Aurosish Mishra, Ajit Mylavarapu, Sukhada Pendse, Garret F. Swart, Shasank K. Chavan, Tirthankar Lahiri, Juan R. Loaiza
  • Patent number: 11294816
    Abstract: Techniques are described herein for reducing the number of redundant evaluations that occur when an expression is evaluated against an encoded column vector by caching results of expression evaluations. When executing a query that includes an expression that references columns for which dictionary-encoded column vectors exist, the database server performs a cost-based analysis to determine which expressions (or sub-expressions) would benefit from caching the expression's evaluation result. For each such expression, the database server performs the necessary computations and caches the results for each of the possible distinct input values. When evaluating an expression for a row with a particular set of input codes, a look-up is performed based on the input code combination to retrieve the pre-computed results of that evaluation from the cache.
    Type: Grant
    Filed: January 3, 2017
    Date of Patent: April 5, 2022
    Assignee: Oracle International Corporation
    Inventors: Shasank K. Chavan, Dina Thomas, Ajit Mylavarapu, Prashant Gaharwar, Dennis Lui, Sheldon A. K. Lewis
  • Patent number: 11238039
    Abstract: Techniques are described for materializing computations in memory. In an embodiment, responsive to a database server instance receiving a query, the database server instance identifies a set of computations for evaluation during execution of the query. Responsive to identifying the set of computations, the database server instance evaluates at least one computation in the set of computations to obtain a first set of computation results for a first computation in the set of computations. After evaluating the at least one computation, the database server instance stores, within an in-memory unit, the first set of computation results. The database server also stores mapping data that maps a set of metadata values associated with the first computation to the first set of computation results.
    Type: Grant
    Filed: March 26, 2019
    Date of Patent: February 1, 2022
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Shasank K. Chavan, Aurosish Mishra, Amit Ganesh
  • Patent number: 11226955
    Abstract: A “hybrid derived cache” stores semi-structured data or unstructured text data in an in-memory mirrored form and columns in another form, such as column-major format. The hybrid derived cache may cache scalar type columns in column-major format. The structure of the in-memory mirrored form of semi-structured data or unstructured text data enables and/or enhances access to perform path-based and/or text based query operations. A hybrid derived cache improves cache containment for executing query operations. The in-memory mirrored form is used to compute queries in a transactionally consistent manner through the use of an invalid vector that used to determine when to retrieve the transactionally consistent persistent form of semi-structured data or unstructured text data in lieu of the in-memory form.
    Type: Grant
    Filed: June 28, 2018
    Date of Patent: January 18, 2022
    Assignee: Oracle International Corporation
    Inventors: Zhen Hua Liu, Aurosish Mishra, Shasank K. Chavan, Douglas J. McMahon, Vikas Arora, Hui Joe Chang, Shubhro Jyoti Roy
  • Patent number: 11113054
    Abstract: Methods and apparatuses for determining set-membership using Single Instruction Multiple Data (“SIMD”) architecture are presented herein. Specifically, methods and apparatuses are discussed for compressing or packing, in parallel, multiple fixed-length values into a stream of multiple variable-length values using SIMD architecture.
    Type: Grant
    Filed: July 15, 2016
    Date of Patent: September 7, 2021
    Assignee: Oracle International Corporation
    Inventors: Shasank K. Chavan, Phumpong Watanaprakornkul, Victor Chen
  • Publication number: 20210182315
    Abstract: An in-memory graph query runtime is integrated inside a database management system and is capable of performing simple patter-matching queries against homogeneous graphs. The runtime efficiently combines breadth-first (BFS) and depth-first (DFS) neighbor traversal algorithms to achieve a hybrid runtime that takes the best from both sides. As a result, the hybrid runtime is able to process arbitrarily large queries with a fixed amount of memory, optimizing for memory locality.
    Type: Application
    Filed: December 11, 2019
    Publication date: June 17, 2021
    Inventors: Vlad Haprian, Laurent Daynes, Shasank K. Chavan, Jean-Pierre Lozi, Vasileios Trigonakis, Sungpack Hong, Marco Arnaboldi, Ciprian Baetu
  • Publication number: 20210182316
    Abstract: An in-memory graph query runtime is integrated inside a database management system and is capable of performing simple patter-matching queries against homogeneous graphs. The runtime efficiently combines breadth-first (BFS) and depth-first (DFS) neighbor traversal algorithms to achieve a hybrid runtime that takes the best from both sides. As a result, the hybrid runtime is able to process arbitrarily large queries with a fixed amount of memory, optimizing for memory locality.
    Type: Application
    Filed: December 11, 2019
    Publication date: June 17, 2021
    Inventors: Vlad Haprian, Laurent Daynes, Shasank K. Chavan, Jean-Pierre Lozi, Vasileios Trigonakis, Sungpack Hong, Marco Arnaboldi, Ciprian Baetu
  • Publication number: 20210182285
    Abstract: An in-memory graph query runtime is integrated inside a database management system and is capable of performing simple patter-matching queries against homogeneous graphs. The runtime efficiently combines breadth-first (BFS) and depth-first (DFS) neighbor traversal algorithms to achieve a hybrid runtime that takes the best from both sides. As a result, the hybrid runtime is able to process arbitrarily large queries with a fixed amount of memory, optimizing for memory locality.
    Type: Application
    Filed: December 11, 2019
    Publication date: June 17, 2021
    Inventors: Vlad Haprian, Laurent Daynes, Shasank K. Chavan, Jean-Pierre Lozi, Vasileios Trigonakis, Sungpack Hong, Marco Arnaboldi, Ciprian Baetu
  • Patent number: 10853371
    Abstract: Techniques related to efficient evaluation of query expressions including grouping clauses are disclosed. Computing device(s) perform a method for aggregating a measure column vector (MCV) according to a plurality of grouping column vectors (GCVs). The MCV and each of the plurality of GCVs may be encoded. The method includes determining a plurality of actual grouping keys (AGKs) and generating a dense identifier (DI) mapping that maps the plurality of AGKs to a plurality of DIs. Each AGK occurs in the plurality of GCVs. Each DI corresponds to a respective workspace. Aggregating the MCV involves aggregating, in each workspace, one or more codes of the MCV that correspond to an AGK mapped to a DI corresponding to the workspace. For a first row of the MCV and the plurality of GCVs, aggregating the one or more codes includes generating a particular grouping key based on codes in the plurality of GCVs.
    Type: Grant
    Filed: September 12, 2017
    Date of Patent: December 1, 2020
    Assignee: Oracle International Corporation
    Inventors: Shasank K. Chavan, Dennis Lui, Allison L Holloway, Sheldon A. K. Lewis
  • Patent number: 10838961
    Abstract: Techniques related to prefix compression are disclosed. Each value in a set of values has a prefix component and a suffix component. The set of values is divided into at least a first plurality of values and a second plurality of values. Compression of each plurality of values involves determining a prefix component that is shared by each value of the plurality of values. Compression further involves determining a plurality of suffix components belonging to the plurality of values. The prefix component is stored separately from the plurality of suffix components but contiguously with a suffix component of the plurality of suffix components. This enables the prefix component and the suffix component to be read as a value of the plurality of values.
    Type: Grant
    Filed: June 28, 2018
    Date of Patent: November 17, 2020
    Assignee: Oracle International Corporation
    Inventors: Shasank K. Chavan, Xia Hua, Lawrence C. Jenkins, Sangho Lee
  • Patent number: 10810208
    Abstract: Techniques related to efficient evaluation of queries with multiple predicate expressions are disclosed. A first predicate expression (PE) is evaluated against a plurality of rows in a first column vector (CV) to determine that a subset of rows does not satisfy the first PE. The subset comprises less than all of the plurality of rows. When a query specifies the first PE in conjunction with a second PE, a selectivity of the first PE is determined. If the selectivity meets a threshold, the second PE is evaluated against all of the plurality of rows in a second CV. If the selectivity does not meet the threshold, the second PE is evaluated against only the subset of rows in the second CV. When a query specifies the first PE in disjunction with the second PE, the second PE may be evaluated against only the subset of rows in the second CV.
    Type: Grant
    Filed: September 12, 2017
    Date of Patent: October 20, 2020
    Assignee: Oracle International Corporation
    Inventors: Shasank K. Chavan, Dennis Lui, Allison L Holloway, Sheldon A. K. Lewis
  • Patent number: 10789252
    Abstract: Techniques related to efficient evaluation of aggregate functions are disclosed. Computing device(s) may perform a method for aggregating results of performing a multiplication on a first column and a second column of a database table. A first vector stores a subset of values of the first column. A second vector stores a corresponding subset of values of the second column. When it is determined that the first vector has a lower cardinality than the second vector, a third vector stores at least a first distinct value and a second distinct value of the first vector. A first set of one or more values of the second vector is determined, wherein each value of the first set of one or more values corresponds to the first distinct value in the first vector. A first multiplicand is generated based on performing a summation over the first set of one or more values.
    Type: Grant
    Filed: September 12, 2017
    Date of Patent: September 29, 2020
    Assignee: Oracle International Corporation
    Inventors: Shasank K. Chavan, Dennis Lui, Allison L Holloway, Sheldon A. K. Lewis
  • Patent number: 10726016
    Abstract: Techniques are described herein for sharing a dictionary across multiple in-memory compression units (IMCUs). After a dictionary is used to encode a first column vector in a first IMCU, the same dictionary is used to encode a second column vector in a second IMCU. The entries in the dictionary are in sort order to facilitate binary searching when performing value-to-code look-ups. If, during the encoding of the second column vector, values are encountered for which the dictionary does not already have codes, then a “sort-order-boundary” is established after the last entry in the dictionary, and entries for the newly encountered values are added to the dictionary, after the sort-order-boundary. To facilitate value-to-code look-ups, the new entries are also sorted relative to each other, creating a second “sort order set”. A new version of the dictionary may be created when the number of sort order sets in the first version of the dictionary reaches a configurable threshold.
    Type: Grant
    Filed: October 14, 2016
    Date of Patent: July 28, 2020
    Assignee: Oracle International Corporation
    Inventors: Shasank K. Chavan, Prashant Gaharwar, Ajit Mylavarapu, Dina Thomas, Dennis Lui, Sheldon A. K. Lewis, Roger D. Macnicol