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: 20230401209Abstract: 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: ApplicationFiled: August 24, 2023Publication date: December 14, 2023Inventors: Xiaobin Ma, Xun Cheng, Viral Shah, Anjan Kumar Amirishetty
-
Publication number: 20230367751Abstract: 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: ApplicationFiled: February 10, 2023Publication date: November 16, 2023Inventors: Viral Shah, Xun Cheng, Xiaobin Ma, Haoyu Huang, Anjan Kumar Amirishetty
-
Publication number: 20230359562Abstract: 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: ApplicationFiled: September 23, 2022Publication date: November 9, 2023Inventors: Anjan Kumar Amirishetty, Viral Shah
-
Patent number: 11782921Abstract: 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: GrantFiled: November 8, 2021Date of Patent: October 10, 2023Assignee: Google LLCInventors: Xiaobin Ma, Xun Cheng, Viral Shah, Anjan Kumar Amirishetty
-
Publication number: 20230141902Abstract: 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: ApplicationFiled: November 8, 2021Publication date: May 11, 2023Inventors: Xiaobin Ma, Xun Cheng, Viral Shah, Anjan Kumar Amirishetty
-
Publication number: 20230141190Abstract: 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: ApplicationFiled: November 9, 2021Publication date: May 11, 2023Inventors: Xiaobin Ma, Xun Cheng, Viral Shah, Anjan Kumar Amirishetty
-
Publication number: 20220253383Abstract: 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: ApplicationFiled: April 22, 2022Publication date: August 11, 2022Applicant: Google LLCInventors: Anjan Kumar Amirishetty, Xun Cheng, Viral Shah
-
Patent number: 11334489Abstract: 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: GrantFiled: July 20, 2020Date of Patent: May 17, 2022Assignee: Google LLCInventors: Anjan Kumar Amirishetty, Xun Cheng, Viral Shah
-
Publication number: 20220019539Abstract: 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: ApplicationFiled: July 20, 2020Publication date: January 20, 2022Applicant: Google LLCInventors: Anjan Kumar Amirishetty, Xun Cheng, Viral Shah
-
Patent number: 10809916Abstract: 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: GrantFiled: April 17, 2017Date of Patent: October 20, 2020Assignee: ORACLE INTERNATIONAL CORPORATIONInventors: Anjan Kumar Amirishetty, Yunrui Li, Tolga Yurek, Wilson Wai Shun Chan
-
Patent number: 10459810Abstract: 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: GrantFiled: July 6, 2017Date of Patent: October 29, 2019Assignee: Oracle International CorporationInventors: Anjan Kumar Amirishetty, Yunrui Li, Tolga Yurek, Wilson Wai Shun Chan
-
Publication number: 20190012244Abstract: 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: ApplicationFiled: July 6, 2017Publication date: January 10, 2019Inventors: Anjan Kumar Amirishetty, Yunrui Li, Tolga Yurek, Wilson Wai Shun Chan
-
Publication number: 20180300204Abstract: 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: ApplicationFiled: April 17, 2017Publication date: October 18, 2018Inventors: Anjan Kumar Amirishetty, Yunrui Li, Tolga Yurek, Wilson Wai Shun Chan