Patents by Inventor Krishnan Meiyyappan

Krishnan Meiyyappan 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: 11086876
    Abstract: Region summaries of database data are stored in persistent memory of a storage cell. Because the region summaries are stored in persistent memory, when a storage cell is powered off and data in volatile memory is not retained, region summaries are nevertheless preserved in persistent memory. When the storage cell comes online, the region summaries already exist and may be used without the delay attendant to regenerating the region summaries stored in volatile memory.
    Type: Grant
    Filed: September 29, 2017
    Date of Patent: August 10, 2021
    Assignee: Oracle International Corporation
    Inventors: Krishnan Meiyyappan, Semen Ustimenko, Adrian Tsz Him Ng, Kothanda Umamageswaran
  • Patent number: 10936616
    Abstract: A storage system communicatively coupled to a database management system (DBMS performs storage-side scanning of data sources that are not stored in native database storage format of the DBMS. Data sources for external tables are accessible in a storage system referred to as a distributed data access system (DDAS), e.g. a Hadoop Distributed File System. To execute a query that references an external table, a DBMS first generates an execution plan. The DDAS supplies the DBMS with information that specifies each portion of the data source, and specifies which data node to use to access the portion. The DBMS sends a request for each portion to the respective data node, requesting that the data node generate rows from data in the portion. The request may specify scanning criteria, specifying one or more columns to project and/or filter on, and code modules for the data node to execute to generate records.
    Type: Grant
    Filed: June 8, 2015
    Date of Patent: March 2, 2021
    Assignee: Oracle International Corporation
    Inventors: Dmitry Mikhailovich Potapov, Krishnan Meiyyappan, Alexander Tsukerman, Kothanda Umamageswaran, Semen Ustimenko, Wei Zhang, Adrian Tsz Him Ng, Daniel McClary, Allen Brumm, James Stenoish, Robert K. Abbott
  • Patent number: 10802766
    Abstract: A shared storage architecture persistently stores database files in non-volatile random access memories (NVRAMs) of computing nodes of a multi-node DBMS. The computing nodes of the multi-node DBMS not only collectively store database data on NVRAMs of the computing nodes, but also host database server instances that process queries in parallel, host database sessions and database processes, and together manage access to a database stored on the NVRAMs of the computing nodes. To perform a data block read operation from persistent storage, a data block may be transferred directly over a network between NVRAM of a computing node that persistently stores the data block to a database buffer in non-volatile RAM of another computing node that requests the data block. The transfer is accomplished using remote direct memory access (“RDMA).
    Type: Grant
    Filed: September 29, 2017
    Date of Patent: October 13, 2020
    Assignee: Oracle International Corporation
    Inventors: Nilesh Choudhury, Kothanda Umamageswaran, Krishnan Meiyyappan, Jia Shi, Vijay Sridharan, Zuoyu Tao, Kai Zhang, Semen Ustimenko, Salini Selvaraj Kowsalya, Somayeh Sardashti
  • Patent number: 10803066
    Abstract: Embodiments of the present invention provide a hardware accelerator that assists a host database system in processing its queries. The hardware accelerator comprises special purpose processing elements that are capable of receiving database query/operation tasks in the form of machine code database instructions, execute them in hardware without software, and return the query/operation result back to the host system.
    Type: Grant
    Filed: June 29, 2011
    Date of Patent: October 13, 2020
    Assignee: Teradata US, Inc.
    Inventors: James Shau, Jeremy L. Branscome, Krishnan Meiyyappan, Hung Viet Tran, Alan Lee Beck, Robert Hou, Michael Paul Corwin, Joseph Irawan Chamdani
  • Patent number: 10678788
    Abstract: Techniques are provided for storing in in-memory unit (IMU) in a lower-storage tier and copying the IMU to DRAM when needed for query processing. Techniques are also provided for copying IMUs to lower tiers of storage when evicted from the cache of higher tiers of storage. Techniques are provided for implementing functionality of IMUs within a storage system, to enable database servers to push tasks, such as filtering, to the storage system where the storage system may access IMUs within its own memory to perform the tasks. Metadata associated with a set of data may be used to indicate whether an IMU for the data should be created by the database server machine or within the storage system.
    Type: Grant
    Filed: October 21, 2016
    Date of Patent: June 9, 2020
    Assignee: Oracle International Corporation
    Inventors: Roger D. Macnicol, Viral Shah, Xia Hua, Jesse Kamp, Shasank K. Chavan, Maria Colgan, Tirthankar Lahiri, Adrian Tsz Him Ng, Krishnan Meiyyappan, Amit Ganesh, Juan R. Loaiza, Kothanda Umamageswaran, Yiran Qin
  • Patent number: 10642837
    Abstract: According to embodiments, a derived cache that is derived from a first instance of particular data is used to speed up queries and other operations over a second instance of the particular data. Traditionally, a DBMS generates and uses derived cache data only for the database data from which the derived data was derived. However, according to embodiments, derived cache data associated with a first instance of database data is relocated to the location of a second, newly created, instance of the database data. Since the derived cache data is derived from an identical copy of the database data, the cache data derived for the first instance can successfully be used to speed up applications running over the second instance of the database data.
    Type: Grant
    Filed: January 19, 2017
    Date of Patent: May 5, 2020
    Assignee: Oracle International Corporation
    Inventors: Kothanda Umamageswaran, Krishnan Meiyyappan, Adrian Tsz Him Ng, Vijay Sridharan, Wei Zhang, Ke Hu, Xin Zeng
  • Patent number: 10528590
    Abstract: Techniques for optimizing a query with an extrema function are provided. In main memory, a data summary is maintained for a plurality of extents stored by at least one storage server. The data summary includes an extent minimum value and an extent maximum value for one or more columns. A storage server request is received, from a database server, based on a query with an extrema function applied to a particular column of a particular table. The data summaries for a set of relevant extents are processed by maintaining at least one global extrema value corresponding to the extrema function and, for each relevant extent of the set of relevant extents, determining whether to scan records of the relevant extent based on at least one of the global extrema value and an extent summary value of the data summary of the relevant extent.
    Type: Grant
    Filed: May 29, 2015
    Date of Patent: January 7, 2020
    Assignee: Oracle International Corporation
    Inventors: Adrian Ng, Krishnan Meiyyappan, Alexander Tsukerman, Dmitry Potapov
  • Publication number: 20190102113
    Abstract: A shared storage architecture persistently stores database files in non-volatile random access memories (NVRAMs) of computing nodes of a multi-node DBMS. The computing nodes of the multi-node DBMS not only collectively store database data on NVRAMs of the computing nodes, but also host database server instances that process queries in parallel, host database sessions and database processes, and together manage access to a database stored on the NVRAMs of the computing nodes. To perform a data block read operation from persistent storage, a data block may be transferred directly over a network between NVRAM of a computing node that persistently stores the data block to a database buffer in non-volatile RAM of another computing node that requests the data block. The transfer is accomplished using remote direct memory access (“RDMA).
    Type: Application
    Filed: September 29, 2017
    Publication date: April 4, 2019
    Inventors: Nilesh Choudhury, Kothanda Umamageswaran, Krishnan Meiyyappan, Jia Shi, Vijay Sridharan, Zuoyu Tao, Kai Zhang, Semen Ustimenko, Salini Selvaraj Kowsalya, Somayeh Sardashti
  • Publication number: 20190102433
    Abstract: Region summaries of database data are stored in persistent memory of a storage cell. Because the region summaries are stored in persistent memory, when a storage cell is powered off and data in volatile memory is not retained, region summaries are nevertheless preserved in persistent memory. When the storage cell comes online, the region summaries already exist and may be used without the delay attendant to regenerating the region summaries stored in volatile memory.
    Type: Application
    Filed: September 29, 2017
    Publication date: April 4, 2019
    Inventors: Krishnan Meiyyappan, Semen Ustimenko, Adrian Tsz Him Ng, Kothanda Umamageswaran
  • Patent number: 10198363
    Abstract: Techniques are described herein for generating and using in-memory data structures to represent columns in data block sets. In an embodiment, a database management system (DBMS) receives a query for a target data set managed by the DBMS. The query may specify a predicate for a column of the target data set. The predicate may include a filtering value to be compared with row values of the column of the target data set. Prior to accessing data block sets storing the target data set from persistent storage, the DBMS identifies an in-memory summary that corresponds to a data block set, in an embodiment. The in-memory summary may include in-memory data structures, each representing a column stored in the data block set. The DBMS determines that a particular in-memory data structure exists in the in-memory summary that represents a portion of values of the column indicated in the predicate of the query.
    Type: Grant
    Filed: September 16, 2016
    Date of Patent: February 5, 2019
    Assignee: Oracle International Corporation
    Inventors: Roger D. MacNicol, Tirthankar Lahiri, Kothanda Umamageswaran, Adrian Tsz Him Ng, Laura Liaoruo Wang, Krishnan Meiyyappan
  • Patent number: 10042781
    Abstract: Techniques are described herein for generating and using in-memory data structures to represent columns in data block sets. In an embodiment, a database management system (DBMS) receives a query for a target data set managed by the DBMS. The query may specify a predicate for a column of the target data set. The predicate may include a filtering value to be compared with row values of the column of the target data set. Prior to accessing data block sets storing the target data set from persistent storage, the DBMS identifies an in-memory summary that corresponds to a data block set, in an embodiment. The in-memory summary may include in-memory data structures, each representing a column stored in the data block set. The DBMS determines that a particular in-memory data structure exists in the in-memory summary that represents a portion of values of the column indicated in the predicate of the query.
    Type: Grant
    Filed: September 16, 2016
    Date of Patent: August 7, 2018
    Assignee: Oracle International Corporation
    Inventors: Roger D. MacNicol, Tirthankar Lahiri, Kothanda Umamageswaran, Adrian Tsz Him Ng, Laura Liaoruo Wang, Krishnan Meiyyappan
  • Patent number: 9898490
    Abstract: Techniques are described herein for supporting multiple versions of a database server within a database machine comprising a separate database layer and storage layer. In an embodiment, the database layer includes compute nodes each hosting one or more instances of a database server. The storage layer includes storage nodes each hosting one or more instances of a storage server, also referred to herein as a “cell server.” In general, the database servers may receive data requests, such as SQL queries, from client applications and service the requests in coordination with the cell servers of the storage layer.
    Type: Grant
    Filed: June 24, 2014
    Date of Patent: February 20, 2018
    Assignee: Oracle International Corporation
    Inventors: Umesh Panchaksharaiah, Krishnan Meiyyappan, Kothanda Umamageswaran, Alex Tsukerman, Semen Ustimenko, Adrian Ng, Devang Mundhra, Yinian Qi
  • Patent number: 9715517
    Abstract: Techniques are described herein for supporting multiple versions of a database server within a database machine comprising a separate database layer and storage layer. In an embodiment, the database layer includes compute nodes each hosting one or more instances of a database server. The storage layer includes storage nodes each hosting one or more instances of a storage server, also referred to herein as a “cell server.” In general, the database servers may receive data requests, such as SQL queries, from client applications and service the requests in coordination with the cell servers of the storage layer.
    Type: Grant
    Filed: June 24, 2014
    Date of Patent: July 25, 2017
    Assignee: Oracle International Corporation
    Inventors: Umesh Panchaksharaiah, Krishnan Meiyyappan, Kothanda Umamageswaran, Alex Tsukerman, Semen Ustimenko, Adrian Ng, Devang Mundhra, Yinian Qi
  • Publication number: 20170206199
    Abstract: According to embodiments, a derived cache that is derived from a first instance of particular data is used to speed up queries and other operations over a second instance of the particular data. Traditionally, a DBMS generates and uses derived cache data only for the database data from which the derived data was derived. However, according to embodiments, derived cache data associated with a first instance of database data is relocated to the location of a second, newly created, instance of the database data. Since the derived cache data is derived from an identical copy of the database data, the cache data derived for the first instance can successfully be used to speed up applications running over the second instance of the database data.
    Type: Application
    Filed: January 19, 2017
    Publication date: July 20, 2017
    Inventors: Kothanda Umamageswaran, Krishnan Meiyyappan, Adrian Tsz Him Ng, Vijay Sridharan, Wei Zhang, Ke Hu, Xin Zeng
  • Publication number: 20170116269
    Abstract: Techniques are provided for storing in in-memory unit (IMU) in a lower-storage tier and copying the IMU to DRAM when needed for query processing. Techniques are also provided for copying IMUs to lower tiers of storage when evicted from the cache of higher tiers of storage. Techniques are provided for implementing functionality of IMUs within a storage system, to enable database servers to push tasks, such as filtering, to the storage system where the storage system may access IMUs within its own memory to perform the tasks. Metadata associated with a set of data may be used to indicate whether an IMU for the data should be created by the database server machine or within the storage system.
    Type: Application
    Filed: October 21, 2016
    Publication date: April 27, 2017
    Inventors: Roger D. Macnicol, Viral Shah, Xia Hua, Jesse Kamp, Shasank K. Chavan, Maria Colgan, Tirthankar Lahiri, Adrian Tsz Him Ng, Krishnan Meiyyappan, Amit Ganesh, Juan R. Loaiza, Kothanda Umamageswaran, Yiran Qin
  • Publication number: 20170116136
    Abstract: Techniques are described herein for generating and using in-memory data structures to represent columns in data block sets. In an embodiment, a database management system (DBMS) receives a query for a target data set managed by the DBMS. The query may specify a predicate for a column of the target data set. The predicate may include a filtering value to be compared with row values of the column of the target data set. Prior to accessing data block sets storing the target data set from persistent storage, the DBMS identifies an in-memory summary that corresponds to a data block set, in an embodiment. The in-memory summary may include in-memory data structures, each representing a column stored in the data block set. The DBMS determines that a particular in-memory data structure exists in the in-memory summary that represents a portion of values of the column indicated in the predicate of the query.
    Type: Application
    Filed: September 16, 2016
    Publication date: April 27, 2017
    Inventors: ROGER D. MACNICOL, TIRTHANKAR LAHIRI, KOTHANDA UMAMAGESWARAN, ADRIAN TSZ HIM NG, LAURA LIAORUO WANG, KRISHNAN MEIYYAPPAN
  • Patent number: 9542442
    Abstract: Embodiments of the present invention provide hardware-friendly indexing of databases. In particular, forward and reverse indexing are utilized to allow for easy traversal of primary key to foreign key relationships. A novel structure known as a hit list also allows for easy scanning of various indexes in hardware. Group indexing is provided for flexible support of complex group key definition, such as for date range indexing and text indexing. A Replicated Reordered Column (RRC) may also be added to the group index to convert random I/O pattern into sequential I/O of only needed column elements.
    Type: Grant
    Filed: April 9, 2014
    Date of Patent: January 10, 2017
    Assignee: Teradata US, Inc.
    Inventors: Krishnan Meiyyappan, Liuxi Yang, Jeremy Branscome, Michael Paul Corwin, Ravindran Krishnamurthy, Kapil Laxmikant Surlaker, James Shau, Joseph Irawan Chamdani
  • Patent number: 9378231
    Abstract: Embodiments of the present invention provide one or more hardware-friendly data structures that enable efficient hardware acceleration of database operations. In particular, the present invention employs a column-store format for the database. In the database, column-groups are stored with implicit row ids (RIDs) and a RID-to-primary key column having both column-store and row-store benefits via column hopping and a heap structure for adding new data. Fixed-width column compression allow for easy hardware database processing directly on the compressed data. A global database virtual address space is utilized that allows for arithmetic derivation of any physical address of the data regardless of its location. A word compression dictionary with token compare and sort index is also provided to allow for efficient hardware-based searching of text. A tuple reconstruction process is provided as well that allows hardware to reconstruct a row by stitching together data from multiple column groups.
    Type: Grant
    Filed: May 13, 2011
    Date of Patent: June 28, 2016
    Assignee: Teradata US, Inc.
    Inventors: Liuxi Yang, Kapil Surlaker, Ravi Krishnamurthy, Michael Corwin, Jeremy Branscome, Krishnan Meiyyappan, Joseph I. Chamdani
  • Publication number: 20160092507
    Abstract: Techniques for optimizing a query with an extrema function are provided. In main memory, a data summary is maintained for a plurality of extents stored by at least one storage server. The data summary includes an extent minimum value and an extent maximum value for one or more columns. A storage server request is received, from a database server, based on a query with an extrema function applied to a particular column of a particular table. The data summaries for a set of relevant extents are processed by maintaining at least one global extrema value corresponding to the extrema function and, for each relevant extent of the set of relevant extents, determining whether to scan records of the relevant extent based on at least one of the global extrema value and an extent summary value of the data summary of the relevant extent.
    Type: Application
    Filed: May 29, 2015
    Publication date: March 31, 2016
    Inventors: ADRIAN NG, KRISHNAN MEIYYAPPAN, ALEXANDER TSUKERMAN, DMITRY POTAPOV
  • Publication number: 20150356158
    Abstract: A storage system communicatively coupled to a DBMS performs storage-side scanning of data sources that are not stored in the native database storage format of the DBMS. Data sources for external tables are accessible in a storage system referred to herein as a distributed data access system, e.g. a Hadoop Distributed File System. To execute a query that references an external table, a DBMS first generates an execution plan. The distributed data access system supplies the DBMS with information that specifies each portion of the data source, and specifies which data node to use to access the portion. The DBMS sends a request for each portion to the respective data node, the request requesting that the data node generate rows from data in the portion. The request may specify scanning criteria, specifying one or more columns to project and/or filter on. The request may also specify code modules for the data node to execute to generate rows or records and columns.
    Type: Application
    Filed: June 8, 2015
    Publication date: December 10, 2015
    Inventors: Dmitry Mikhailovich Potapov, Krishnan Meiyyappan, Alexander Tsukerman, Kothanda Umamageswaran, Semen Ustimenko, Wei Zhang, Adrian Tsz Him Ng, Daniel McClary, Allen Brumm, James Stenoish, Robert K. Abbott