Patents by Inventor Anjan Kumar Amirishetty

Anjan Kumar Amirishetty 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: 20230401209
    Abstract: Aspects of the disclosure are directed to generating a hybrid query execution plan for executing queries on database systems implementing a columnar cache. A hybrid query execution plan combines a query execution plan for querying and retrieving data from a columnar cache and a base table. A columnar cache stores cached data in column-major format, which is logically represented by the database management system in row-major format. A database management system as described herein can scan valid blocks of column data according to a column scan operation. The system can identify invalidated blocks and execute a different sub-execution plan of the hybrid query execution plan to scan corresponding rows in tables corresponding to the location of data for the invalidated blocks.
    Type: Application
    Filed: August 24, 2023
    Publication date: December 14, 2023
    Inventors: Xiaobin Ma, Xun Cheng, Viral Shah, Anjan Kumar Amirishetty
  • Publication number: 20230367751
    Abstract: Aspects of the disclosure provide for natively executing row-store expression data structures on column-store databases without rewriting. A database management system (DBMS) configured as described herein can maintain a mapping of row-store results to addresses of where corresponding column data is stored. When executing operators, such as logical operators, comparison operators, and/or function operators of a received query expression, the DBMS can operate on the column data, rather than the individual rows. The DBMS can store the results generated by executing the column operators, for example on a stack, and record the row-store addresses to which the stored results correspond. The DBMS responds with a number of rows corresponding to the processed column data.
    Type: Application
    Filed: February 10, 2023
    Publication date: November 16, 2023
    Inventors: Viral Shah, Xun Cheng, Xiaobin Ma, Haoyu Huang, Anjan Kumar Amirishetty
  • Publication number: 20230359562
    Abstract: Aspects of the disclosure are directed to maintaining transaction consistency when using a columnar cache. The columnar cache can be initially loaded with all-visible data, and as the data gets modified, respective data is invalidated in the columnar cache. As more data gets invalidated in the columnar cache, respective data can be refreshed in the columnar cache. As part of the refresh, the latest all-visible data can be populated while the queries are still using the old data in the columnar cache. When all the queries transition to use the newly populated data, old data can be removed from the columnar cache. A query can use valid blocks of columnar cache and go to a row store for invalid blocks. When a query starts to use the columnar cache, a request can be submitted to asynchronously prefetch the invalid blocks from the row store.
    Type: Application
    Filed: September 23, 2022
    Publication date: November 9, 2023
    Inventors: Anjan Kumar Amirishetty, Viral Shah
  • Patent number: 11782921
    Abstract: Aspects of the disclosure are directed to generating a hybrid query execution plan for executing queries on database systems implementing a columnar cache. A hybrid query execution plan combines a query execution plan for querying and retrieving data from a columnar cache and a base table. A columnar cache stores cached data in column-major format, which is logically represented by the database management system in row-major format. A database management system as described herein can scan valid blocks of column data according to a column scan operation. The system can identify invalidated blocks and execute a different sub-execution plan of the hybrid query execution plan to scan corresponding rows in tables corresponding to the location of data for the invalidated blocks.
    Type: Grant
    Filed: November 8, 2021
    Date of Patent: October 10, 2023
    Assignee: Google LLC
    Inventors: Xiaobin Ma, Xun Cheng, Viral Shah, Anjan Kumar Amirishetty
  • Publication number: 20230141902
    Abstract: Aspects of the disclosure are directed to generating a hybrid query execution plan for executing queries on database systems implementing a columnar cache. A hybrid query execution plan combines a query execution plan for querying and retrieving data from a columnar cache and a base table. A columnar cache stores cached data in column-major format, which is logically represented by the database management system in row-major format. A database management system as described herein can scan valid blocks of column data according to a column scan operation. The system can identify invalidated blocks and execute a different sub-execution plan of the hybrid query execution plan to scan corresponding rows in tables corresponding to the location of data for the invalidated blocks.
    Type: Application
    Filed: November 8, 2021
    Publication date: May 11, 2023
    Inventors: Xiaobin Ma, Xun Cheng, Viral Shah, Anjan Kumar Amirishetty
  • Publication number: 20230141190
    Abstract: Aspects of the disclosure are directed to late materialization of attributes in response to queries to a database implementing a database cache. Queried data is materialized in temporary memory before the data is projected as part of generating a result to the query. Instead of materializing all of the attributes referenced in a query before executing the query, a database management system materializes attributes as “late” as possible—when the operation needing the attributes is executed. The operation needing the attributes can be performed sooner, as opposed to materializing all referenced attributes are materialized before executing the query.
    Type: Application
    Filed: November 9, 2021
    Publication date: May 11, 2023
    Inventors: Xiaobin Ma, Xun Cheng, Viral Shah, Anjan Kumar Amirishetty
  • Publication number: 20220253383
    Abstract: A method for providing elastic columnar cache includes receiving cache configuration information indicating a maximum size and an incremental size for a cache associated with a user. The cache is configured to store a portion of a table in a row-major format. The method includes caching, in a column-major format, a subset of the plurality of columns of the table in the cache and receiving a plurality of data requests requesting access to the table and associated with a corresponding access pattern requiring access to one or more of the columns. While executing one or more workloads, the method includes, for each column of the table, determining an access frequency indicating a number of times the corresponding column is accessed over a predetermined time period and dynamically adjusting the subset of columns based on the access patterns, the maximum size, and the incremental size.
    Type: Application
    Filed: April 22, 2022
    Publication date: August 11, 2022
    Applicant: Google LLC
    Inventors: Anjan Kumar Amirishetty, Xun Cheng, Viral Shah
  • Patent number: 11334489
    Abstract: A method for providing elastic columnar cache includes receiving cache configuration information indicating a maximum size and an incremental size for a cache associated with a user. The cache is configured to store a portion of a table in a row-major format. The method includes caching, in a column-major format, a subset of the plurality of columns of the table in the cache and receiving a plurality of data requests requesting access to the table and associated with a corresponding access pattern requiring access to one or more of the columns. While executing one or more workloads, the method includes, for each column of the table, determining an access frequency indicating a number of times the corresponding column is accessed over a predetermined time period and dynamically adjusting the subset of columns based on the access patterns, the maximum size, and the incremental size.
    Type: Grant
    Filed: July 20, 2020
    Date of Patent: May 17, 2022
    Assignee: Google LLC
    Inventors: Anjan Kumar Amirishetty, Xun Cheng, Viral Shah
  • Publication number: 20220019539
    Abstract: A method for providing elastic columnar cache includes receiving cache configuration information indicating a maximum size and an incremental size for a cache associated with a user. The cache is configured to store a portion of a table in a row-major format. The method includes caching, in a column-major format, a subset of the plurality of columns of the table in the cache and receiving a plurality of data requests requesting access to the table and associated with a corresponding access pattern requiring access to one or more of the columns. While executing one or more workloads, the method includes, for each column of the table, determining an access frequency indicating a number of times the corresponding column is accessed over a predetermined time period and dynamically adjusting the subset of columns based on the access patterns, the maximum size, and the incremental size.
    Type: Application
    Filed: July 20, 2020
    Publication date: January 20, 2022
    Applicant: Google LLC
    Inventors: Anjan Kumar Amirishetty, Xun Cheng, Viral Shah
  • Patent number: 10809916
    Abstract: Techniques related to instance recovery using Bloom filters are disclosed. A multi-node node database management system (DBMS) includes a first database server instance and a second database server instance. A recovery set includes a set of data blocks that have been modified by a first database server instance and not persisted. A Bloom filter is generated to indicate whether data blocks are excluded from the recovery set. The Bloom filter is sent to the second database server instance, which determines whether the Bloom filter indicates that a particular data block is excluded from the recovery set. Based on determining that the Bloom filter indicates that the particular data block is excluded from the recovery set, access to the particular data block is granted.
    Type: Grant
    Filed: April 17, 2017
    Date of Patent: October 20, 2020
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Anjan Kumar Amirishetty, Yunrui Li, Tolga Yurek, Wilson Wai Shun Chan
  • Patent number: 10459810
    Abstract: Techniques are described herein for quick identification of a set of units of data for which recovery operations are to be performed to redo or undo changes made by the failed node. When a lock is requested by an instance, lock information for the lock request is replicated by another instance. If the instance fails, the other instance may use the replicated lock information to determine a set of data blocks for recovery operations. The set of data blocks is available in memory of a recovery instance when a given node fails, and does not have to be completely generated by scanning a redo log.
    Type: Grant
    Filed: July 6, 2017
    Date of Patent: October 29, 2019
    Assignee: Oracle International Corporation
    Inventors: Anjan Kumar Amirishetty, Yunrui Li, Tolga Yurek, Wilson Wai Shun Chan
  • Publication number: 20190012244
    Abstract: Techniques are described herein for quick identification of a set of units of data for which recovery operations are to be performed to redo or undo changes made by the failed node. When a lock is requested by an instance, lock information for the lock request is replicated by another instance. If the instance fails, the other instance may use the replicated lock information to determine a set of data blocks for recovery operations. The set of data blocks is available in memory of a recovery instance when a given node fails, and does not have to be completely generated by scanning a redo log.
    Type: Application
    Filed: July 6, 2017
    Publication date: January 10, 2019
    Inventors: Anjan Kumar Amirishetty, Yunrui Li, Tolga Yurek, Wilson Wai Shun Chan
  • Publication number: 20180300204
    Abstract: Techniques related to instance recovery using Bloom filters are disclosed. A multi-node node database management system (DBMS) includes a first database server instance and a second database server instance. A recovery set includes a set of data blocks that have been modified by a first database server instance and not persisted. A Bloom filter is generated to indicate whether data blocks are excluded from the recovery set. The Bloom filter is sent to the second database server instance, which determines whether the Bloom filter indicates that a particular data block is excluded from the recovery set. Based on determining that the Bloom filter indicates that the particular data block is excluded from the recovery set, access to the particular data block is granted.
    Type: Application
    Filed: April 17, 2017
    Publication date: October 18, 2018
    Inventors: Anjan Kumar Amirishetty, Yunrui Li, Tolga Yurek, Wilson Wai Shun Chan