Patents by Inventor Amit Ganesh

Amit Ganesh 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: 20150339343
    Abstract: Techniques are provided for maintaining data persistently in one format, but making that data available to a database server in more than one format. For example, one of the formats in which the data is made available for query processing is based on the on-disk format, while another of the formats in which the data is made available for query processing is independent of the on-disk format. Data that is in the format that is independent of the disk format may be maintained exclusively in volatile memory to reduce the overhead associated with keeping the data in sync with the on-disk format copies of the data.
    Type: Application
    Filed: August 5, 2015
    Publication date: November 26, 2015
    Inventors: Vivekanandhan Raja, Sanket Hase, Amit Ganesh, Vineet Marwah, Shuang Su, Atrayee Mullick, Sukhada Pendse
  • Patent number: 9165016
    Abstract: For automatic data placement of database data, a plurality of access-tracking data is maintained. The plurality of access-tracking data respectively corresponds to a plurality of data rows that are managed by a database server. While the database server is executing normally, it is automatically determined whether a data row, which is stored in first one or more data blocks, has been recently accessed based on the access-tracking data that corresponds to that data row. After determining that the data row has been recently accessed, the data row is automatically moved from the first one or more data blocks to one or more hot data blocks that are designated for storing those data rows, from the plurality of data rows, that have been recently accessed.
    Type: Grant
    Filed: December 15, 2014
    Date of Patent: October 20, 2015
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Amit Ganesh, Vineet Marwah, Vikram Kapoor
  • Publication number: 20150277917
    Abstract: Techniques are described herein for storing and processing codes included in dictionary-encoded data. In an embodiment, for each respective code of a plurality of codes in the dictionary-encoded data: a plurality of bits from a first portion of the respective code is contiguously stored. One or more bits from a second portion of the respective code is stored in one or more slices. Each respective slice of the one or more slices stores a bit from the one or more bits with a corresponding bit position in the respective code. In another embodiment, a bit-vector is generated based on at least one slice by loading each respective bit of the plurality of bits into different respective partitions in a register at a bit position corresponding to the at least one slice.
    Type: Application
    Filed: April 1, 2014
    Publication date: October 1, 2015
    Inventors: Shasank Kisan Chavan, Phumpong Watanaprakornkul, Amit Ganesh, Vineet Marwah
  • Publication number: 20150269180
    Abstract: A method, apparatus, and system for OZIP, a data compression and decompression codec, is provided. OZIP utilizes a fixed size static dictionary, which may be generated from a random sampling of input data to be compressed. Compression by direct token encoding to the static dictionary streamlines the encoding and avoids expensive conditional branching, facilitating hardware implementation and high parallelism. By bounding token definition sizes and static dictionary sizes to hardware architecture constraints such as word size or processor cache size, hardware implementation can be made fast and cost effective. For example, decompression may be accelerated by using SIMD instruction processor extensions. A highly granular block mapping in optional stored metadata allows compressed data to be accessed quickly at random, bypassing the processing overhead of dynamic dictionaries. Thus, OZIP can support low latency random data access for highly random workloads, such as for OLTP systems.
    Type: Application
    Filed: July 21, 2014
    Publication date: September 24, 2015
    Inventors: VICTOR CHEN, ANINDYA PATTHAK, SHASANK KISAN CHAVAN, JESSE KAMP, VINEET MARWAH, AMIT GANESH
  • Patent number: 9141609
    Abstract: In a database system having a plurality of concurrently executing session processes, the method commences by establishing a master list of sequences, the master list comprising a plurality of sequence objects which in turn define a sequence of values used for numbering and other identification within the database system. To reduce sequence cache latch access contention, multiple tiers of latches are provided. Methods of the system provide a first tier having a first tier “global” latch to serialize access to the master list. A second tier of latches is provided, the second tier having multiple second tier latches to serialize access to corresponding allocated sequences of values such that at any point in time, only one of the concurrently executing session processes is granted access to the allocated sequence.
    Type: Grant
    Filed: December 1, 2011
    Date of Patent: September 22, 2015
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Fulu Li, Vineet Marwah, Amit Ganesh
  • Patent number: 9128972
    Abstract: Techniques are provided for maintaining data persistently in one format, but making that data available to a database server in more than one format. For example, one of the formats in which the data is made available for query processing is based on the on-disk format, while another of the formats in which the data is made available for query processing is independent of the on-disk format. Data that is in the format that is independent of the disk format may be maintained exclusively in volatile memory to reduce the overhead associated with keeping the data in sync with the on-disk format copies of the data.
    Type: Grant
    Filed: July 21, 2014
    Date of Patent: September 8, 2015
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Vivekanandhan Raja, Sanket Hase, Amit Ganesh, Vineet Marwah, Shuang Su, Atrayee Mullick, Sukhada Pendse
  • Publication number: 20150149419
    Abstract: For automatic data placement of database data, a plurality of access-tracking data is maintained. The plurality of access-tracking data respectively corresponds to a plurality of data rows that are managed by a database server. While the database server is executing normally, it is automatically determined whether a data row, which is stored in first one or more data blocks, has been recently accessed based on the access-tracking data that corresponds to that data row. After determining that the data row has been recently accessed, the data row is automatically moved from the first one or more data blocks to one or more hot data blocks that are designated for storing those data rows, from the plurality of data rows, that have been recently accessed.
    Type: Application
    Filed: December 15, 2014
    Publication date: May 28, 2015
    Inventors: AMIT GANESH, VINEET MARWAH, VIKRAM KAPOOR
  • Publication number: 20150088830
    Abstract: Techniques are provided for maintaining data persistently in one format, but making that data available to a database server in more than one format. For example, one of the formats in which the data is made available for query processing is based on the on-disk format, while another of the formats in which the data is made available for query processing is independent of the on-disk format. Data that is in the format that is independent of the disk format may be maintained exclusively in volatile memory to reduce the overhead associated with keeping the data in sync with the on-disk format copies of the data.
    Type: Application
    Filed: July 21, 2014
    Publication date: March 26, 2015
    Inventors: Jesse Kamp, Amit Ganesh, Vineet Marwah, Vivekanandhan Raja, Tirthankar Lahiri, Allison L. Holloway, Sanket Hase, Shasank K. Chavan, Niloy Mukherjee, Teck Hua Lee, Michael J. Gleeson, Krishna Kunchithapadam
  • Publication number: 20150089134
    Abstract: Techniques are provided for managing in-memory space and objects. In one embodiment, a set of in-memory objects are maintained within an area in volatile memory that is accessible to a database server. An in-memory object in this context includes a set of one or more in-memory segments where each respective in-memory segment includes a set of in-memory extents and each respective in-memory extent is a contiguous chunk of memory from the area in volatile memory that is accessible to the database server. The area in volatile memory is managed as a set of stripes, where each stripe is a contiguous chunk of in-memory extents. Stripe control blocks are used to locate free in-memory extents for allocation and registration with an in-memory segment.
    Type: Application
    Filed: July 21, 2014
    Publication date: March 26, 2015
    Inventors: NILOY MUKHERJEE, AMIT GANESH, VINEET MARWAH, JESSE KAMP
  • Publication number: 20150088811
    Abstract: Techniques are provided for maintaining data persistently in one format, but making that data available to a database server in more than one format. For example, one of the formats in which the data is made available for query processing is based on the on-disk format, while another of the formats in which the data is made available for query processing is independent of the on-disk format. Data that is in the format that is independent of the disk format may be maintained exclusively in volatile memory to reduce the overhead associated with keeping the data in sync with the on-disk format copies of the data.
    Type: Application
    Filed: July 21, 2014
    Publication date: March 26, 2015
    Inventors: Sanket Hase, Vivekanandhan Raja, Amit Ganesh, Vineet Marwah, Sukhada Pendse, Shuang Su, Atrayee Mullick
  • Publication number: 20150088824
    Abstract: Techniques are provided for granular load and refresh of columnar data. In an embodiment, a particular data object that contains particular data formatted different from column-major format is maintained, the particular data including first data and second data. First and second data objects contain the first and second data, respectively, organized in the column-major format. In response to changes being committed to the first data in the particular data object, invalidating one or more rows of the first data object. In response to a number of invalidated rows of the first data object exceeding a threshold, automatically performing a refresh operation on the first data object independent of any refresh operation on the second data object.
    Type: Application
    Filed: July 21, 2014
    Publication date: March 26, 2015
    Inventors: Jesse Kamp, Vineet Marwah, Amit Ganesh, Michael Gleeson, Maheswaran Venkatachalam, Allison Holloway, Niloy Mukherjee, Sanket Hase
  • Publication number: 20150089125
    Abstract: Techniques are provided for performing parallel processing on in-memory objects within a database system. In one embodiment, a plurality of in-memory chunks are maintained on a plurality of non-uniform memory access (NUMA) nodes. In response to receiving a query, a set of clusters is determined for the plurality of in-memory chunks. Each respective cluster in the set of clusters corresponds to a particular NUMA node of the plurality of NUMA nodes and includes a set of one or more in-memory chunks from the plurality of in-memory chunks. For each respective cluster in the set of clusters, a query coordinator assigns, to the respective cluster, a set of one or more processes associated with the particular NUMA node that corresponds to the respective cluster.
    Type: Application
    Filed: July 21, 2014
    Publication date: March 26, 2015
    Inventors: NILOY MUKHERJEE, AMIT GANESH, VINEET MARWAH
  • Publication number: 20150088822
    Abstract: Techniques are provided for maintaining data persistently in one format, but making that data available to a database server in more than one format. For example, one of the formats in which the data is made available for query processing is based on the on-disk format, while another of the formats in which the data is made available for query processing is independent of the on-disk format. Data that is in the format that is independent of the disk format may be maintained exclusively in volatile memory to reduce the overhead associated with keeping the data in sync with the on-disk format copies of the data.
    Type: Application
    Filed: July 21, 2014
    Publication date: March 26, 2015
    Inventors: Vivekanandhan Raja, Sanket Hase, Amit Ganesh, Vineet Marwah, Shuang Su, Atrayee Mullick, Sukhada Pendse
  • Patent number: 8977597
    Abstract: Techniques for maintaining a cascading index are provided. In one approach, one or more branch node compression techniques are applied to the main index of a cascading index. In an approach, a Bloom filter is generated and associated with, e.g., a branch node in the main index. The Bloom filter is used to determine whether, without accessing any leaf blocks, a particular key value exists, e.g., in leaf blocks associated with the branch node. In an approach, a new redo record is generated in response to a merge operation between two levels of the cascading index. The new redo record comprises (a) one or more addresses of blocks that are affected by the merge operation, (b) data is that being “pushed down” to a lower level of the cascading index, and (c) one or more addresses of blocks that are written to storage as a result of the merge operation.
    Type: Grant
    Filed: November 6, 2013
    Date of Patent: March 10, 2015
    Assignee: Oracle International Corporation
    Inventors: Amit Ganesh, Juan R. Loaiza, Krishna Kunchithapadam
  • Patent number: 8959057
    Abstract: For automatic data placement of database data, a plurality of access-tracking data is maintained. The plurality of access-tracking data respectively corresponds to a plurality of data rows that are managed by a database server. While the database server is executing normally, it is automatically determined whether a data row, which is stored in first one or more data blocks, has been recently accessed based on the access-tracking data that corresponds to that data row. After determining that the data row has been recently accessed, the data row is automatically moved from the first one or more data blocks to one or more hot data blocks that are designated for storing those data rows, from the plurality of data rows, that have been recently accessed.
    Type: Grant
    Filed: May 18, 2012
    Date of Patent: February 17, 2015
    Assignee: Oracle International Corporation
    Inventors: Amit Ganesh, Vineet Marwah, Vikram Kapoor
  • Publication number: 20150032763
    Abstract: A method and apparatus is provided for optimizing queries received by a database system that relies on an intelligent data storage server to manage storage for the database system. Storing compression units in hybrid columnar format, the storage manager evaluates simple predicates and only returns data blocks containing rows that satisfy those predicates. The returned data blocks are not necessarily stored persistently on disk. That is, the storage manager is not limited to returning disc block images. The hybrid columnar format enables optimizations that provide better performance when processing typical database workloads including both fetching rows by identifier and performing table scans.
    Type: Application
    Filed: September 8, 2014
    Publication date: January 29, 2015
    Inventors: VINEET MARWAH, VIKRAM KAPOOR, JESSE KAMP, KAM SHERGILL, ROGER MACNICOL, SACHIN KULKARNI, AMIT GANESH
  • Patent number: 8943029
    Abstract: A computer is programmed to compress data of a database in response to database modification language (DML) statements generated by on-line transaction processing (OLTP) systems. In several embodiments, data that is initially added to a database block is left uncompressed until a predetermined condition is satisfied, which happens infrequently (relative to OLTP transactions on the block). When satisfied, the computer automatically compresses all uncompressed data in the block, which increases the amount of unused space in the block. New data is thereafter added uncompressed to the partially compressed block, until satisfaction of a predetermined condition whereby the partially compressed block is again compressed, i.e. re-compressed. Adding of new data to a partially compressed block and its compression are repeated unless another predetermined condition is met, in response to which the block is not further re-compressed, thereby to recognize a limit on the benefit from compression.
    Type: Grant
    Filed: February 9, 2013
    Date of Patent: January 27, 2015
    Assignee: Oracle International Corporation
    Inventors: Vineet Marwah, Valentin G. Stredie, Dheeraj Pandey, Amit Ganesh
  • Patent number: 8935223
    Abstract: A highly flexible and extensible structure is provided for physically storing tabular data. The structure, referred to as a compression unit, may be used to store tabular data that logically resides in any type of table-like structure. According to one embodiment, compression units are recursive. Thus, a compression unit may have a “parent” compression unit to which it belongs, and may have one or more “child” compression units that belong to it. In one embodiment, compression units include metadata that indicates how the tabular data is stored within them. The metadata for a compression unit may indicate, for example, whether the data is stored in row-major or column major-format, the order of the columns within the compression unit (which may differ from the logical order of the columns dictated by the definition of their logical container), a compression technique for the compression unit, the child compression units (if any), etc.
    Type: Grant
    Filed: November 12, 2009
    Date of Patent: January 13, 2015
    Assignee: Oracle International Corporation
    Inventors: Amit Ganesh, Vikram Kapoor, Vineet Marwah, Kam Shergill, Roger MacNicol, Sachin Kulkarni, Jesse Kamp
  • Patent number: 8856083
    Abstract: A bulk delete operation with reduced latency allows for retrieval of deleted data. Each database object holds a Delete SCN indicating when a bulk delete operation was last performed. Each row in the database object holds a Row Modification SCN indicating when the row was last updated. A bulk delete is performed by writing the old value of the Delete SCN to the undo tablespace and updating the Delete SCN. No undo information is stored for the rows. A write is performed by finding a deleted row, storing undo information for the deleted row and writing over the deleted row. To read from the database object, a rollback operation is performed, if necessary. Those rows are then retrieved for which the Row Modification SCN is higher than the Delete SCN and is less than or equal to the timestamp for the requested data.
    Type: Grant
    Filed: June 9, 2006
    Date of Patent: October 7, 2014
    Assignee: Oracle International Corporation
    Inventors: Amit Ganesh, Niloy Mukherjee, Manosiz Bhattacharyya, Bipul Sinha
  • Publication number: 20140280249
    Abstract: In an approach, the database server generates a request for data representing rows of a table, the request identifying one or more data blocks stored on a storage system. The database server then generates metadata describing one or more filtering conditions to be applied to the rows and sends the metadata along with the request to the storage system. The storage system, when applying filtering conditions to a column containing a LOB, determines whether the LOB is stored in-line or out-of-line. If the column contains an out-of-line LOB, the storage system skips the filtering conditions on the column. If the column contains an in-line LOB, the storage system applies the filtering conditions to the column. Upon obtaining the filtered data from the storage system, the database server retrieves the data blocks for out-of-line LOBs and applies the skipped filtering conditions to create a final result set.
    Type: Application
    Filed: March 14, 2013
    Publication date: September 18, 2014
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Vineet Marwah, Amit Ganesh, Teck Hua Lee, Hui Joe Chang