Patents by Inventor Anil Kumar Goel
Anil Kumar Goel 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: 11537578Abstract: A request for an entry of a dictionary having multiple dictionary blocks may be received, where the dictionary stores string values associated with corresponding value identifiers (IDs) for dictionary compression. One of the dictionary blocks may be selectively loaded into memory, and the dictionary block that has been loaded into memory may be searched. A value ID directory may be constructed in memory, where the value ID directory includes last value IDs for the dictionary blocks, and each of the last value IDs is mapped to an index of one of the dictionary blocks that includes a string value for that last value ID. A separator directory may also be constructed in memory, where the separator directory includes separators for the dictionary blocks, and each of the separators is mapped to an index of one of the dictionary blocks that includes a string value for that separator.Type: GrantFiled: April 20, 2018Date of Patent: December 27, 2022Assignee: SAP SEInventors: Colin Florendo, Carsten Thiel, Ivan Schreter, Mihnea Andrei, Anil Kumar Goel
-
Patent number: 11379494Abstract: Partitioning of temporal databases can implement distributed storage of temporal data via time-based or space-based techniques to improve performance of operators on the database. A variety of operators can be supported for the partitioned tables, including temporal aggregation, time travel, and temporal join. The use of checkpoints can greatly increase performance in a variety of scenarios. The described partitioning techniques can be applied in a parallel execution context to great benefit. The partitioning can also reduce local memory footprint, facilitating in-memory database processing.Type: GrantFiled: August 6, 2014Date of Patent: July 5, 2022Assignee: SAP SEInventors: Martin Kaufmann, Norman May, Elias Yousefi Amin Abadi, Anil Kumar Goel, Chang Ge, Andreas Luethi, Puspanantha Shanmuganathan, Donald Kossmann
-
Patent number: 11080271Abstract: A transaction management service layer monitors a plurality of read and write transactions being executed by the data engines by way of client libraries at each of a plurality of data engines. In addition, the transaction management server layer maintains and coordinates transaction timestamp and sequence numbers that are shared by the plurality of data engines. The transaction management service layer identifies and resolves conflicts among the plurality of transactions. The transaction management service layer is a separate and independent service that is isolated from other components of the plurality of data engines. Related apparatus, systems, techniques and articles are also described.Type: GrantFiled: September 9, 2016Date of Patent: August 3, 2021Inventors: Juchang Lee, Chang Gyoo Park, Francis Gropengiesser, Anil Kumar Goel, Deok Koo Kim, SunHo Lee
-
Patent number: 10824622Abstract: A system, computer-implemented method, and a computer-readable storage medium for determining estimations to statistical questions. Data statistics used in evaluating estimations to statistical questions are gathered from multiple sources in a database management system. A statistical question comprising, for example, cardinality estimations is received, wherein the question is posed by different database components, such as query optimizer, or execution engine. Estimation for the statistical question is computed, where the estimation is based on multiple data statistics and without using the data referred to in the question.Type: GrantFiled: February 25, 2014Date of Patent: November 3, 2020Assignee: SAP SEInventors: Anisoara Nica, Anil Kumar Goel
-
Patent number: 10671572Abstract: A system includes reception of a first write request from a client including a first key and a first one or more stream, payload pairs associated with the first key, copying of the first key and the first one or more stream, payload pairs to a first buffer of a volatile memory, storage of data of the first buffer in one or more blocks of a raw block non-volatile memory device, providing of the first buffer to a stream store server, reception of the first buffer at the stream store server, adding of the first key and the first one or more stream, payload pairs to a second buffer of the volatile memory, in key-order, storage of the data of the second buffer in a filesystem storage device, according to stream, and transmission of an indication of the durability of the key to the tail store server.Type: GrantFiled: June 14, 2016Date of Patent: June 2, 2020Assignee: SAP SEInventors: Nathan Auch, Scott MacLean, Peter Bumbulis, Jeffrey Pound, Anil Kumar Goel
-
Patent number: 10366106Abstract: Disclosed herein are system, method, and computer program product embodiments for quorum-based replication of data records. In one embodiment, a read request for reading a record is received from a user node on a replica node of a cluster of replica nodes. The record is then determined not committed on the replica node. In response to the determination, an update message indicative of whether the number of replica nodes on which the record is durable exceeds a threshold is received on the replica node. In response to the number of replica nodes exceeds the threshold, a value of the record on the replica node is transmitted to the user node.Type: GrantFiled: December 9, 2016Date of Patent: July 30, 2019Assignee: SAP SEInventors: Hua Fan, Jeffrey Pound, Peter Bumbulis, Anil Kumar Goel, Scott MacLean, Nathan Auch, Eric Garber
-
Patent number: 10360145Abstract: A system includes writing of log data in chunks over a first range of heap log sequence positions of a heap log stored in the non-volatile memory system, and writing of a heap anchor marker in a first anchor stream of a transaction log stored in the non-volatile memory system, at a first transaction log sequence position of the transaction log, wherein the first anchor stream is associated with a first stream of the transaction log, and the heap anchor marker identifies the first range of heap log sequence positions of the heap log.Type: GrantFiled: June 13, 2016Date of Patent: July 23, 2019Assignee: SAP SEInventors: Jeffrey Pound, Nathan Auch, Peter Bumbulis, Anil Kumar Goel, Scott MacLean, Eric Garber
-
Patent number: 10346387Abstract: A method includes a primary storage unit receiving a first write request including a first key and a first value; persisting the first value in a first non-volatile memory in association with the first key; broadcasting the first write request and a first set of globally-durable keys to secondary storage units; receiving, from the secondary storage units, an acknowledgement of the first write request and a first set of locally-durable keys, each of the first sets of locally-durable keys including the first key; the primary storage unit receiving a second write request including a second key and a second value; persisting the second value in the first non-volatile memory in association with the second key; and broadcasting the second write request and a second set of globally-durable keys to the secondary storage units, the second set of locally-durable keys including the first key. A system is also disclosed.Type: GrantFiled: June 13, 2016Date of Patent: July 9, 2019Assignee: SAP SEInventors: Peter Bumbulis, Jeffrey Pound, Nathan Auch, Anil Kumar Goel, Matthias Ringwald, Thomas Bodner, Scott MacLean
-
Patent number: 10152501Abstract: Disclosed herein are system, method, and computer program product embodiments for rollover strategies in an n-bit dictionary compressed column store. An embodiment operates by receiving a new value for addition to a compressed column store. It is determined that a maximum storage capacity for tokens in the compressed column store has been reached for the data dictionary. The compressed column store is converted into a composite store including the existing compressed column store and a newly created flat store. The new value is stored in the flat storage portion of the composite store.Type: GrantFiled: October 11, 2016Date of Patent: December 11, 2018Assignee: SYBASE, INC.Inventors: Muhammed Sharique, Anil Kumar Goel, Minhnea Andrei
-
Patent number: 10127260Abstract: As part of a database system comprising a combination of on-disk storage and in-memory storage, a plurality of records that comprise a table are stored in a plurality of fragments that include at least a delta fragment and a main fragment retained in the on-disk storage. Each fragment has visibility data structures to enable multi-version concurrency control. Each fragment can be compressed using dictionary compression and n-bits compression. The fragments are loaded into main system memory in the in-memory storage from the on-disk storage if they are accessed for read operations or write operations and are not already in memory. A plurality of lockless read and write operations are concurrently performed, while providing snapshot isolation, on the at least one of the plurality of fragments while the at least one of the plurality of fragments is in the main system memory.Type: GrantFiled: November 25, 2014Date of Patent: November 13, 2018Assignee: SAP SEInventors: Anil Kumar Goel, Ivan Schreter, Juchang Lee, Mihnea Andrei, Steffen Geissinger, Thomas Legler
-
Patent number: 10089342Abstract: A compression manager may store, within an index vector, a plurality of value identifiers (IDs), each value ID representing a value within a database. A page generator may designate a number of the value IDs as defining a page within the index vector, so that the index vector includes a plurality of pages, each page including the number of value IDs. The page generator may store the index vector in a secondary memory of a main memory database. An iterator may access a requested value ID, and a page loader may load a corresponding page of the index vector that contains the requested value ID into the main memory database.Type: GrantFiled: July 10, 2014Date of Patent: October 2, 2018Assignee: SAP SEInventors: Reza Sherkat, Guenter Radestock, Ivan Schreter, Colin Florendo, Mihnea Andrei, Anil Kumar Goel
-
Publication number: 20180239788Abstract: A request for an entry of a dictionary having multiple dictionary blocks may be received, where the dictionary stores string values associated with corresponding value identifiers (IDs) for dictionary compression. One of the dictionary blocks may be selectively loaded into memory, and the dictionary block that has been loaded into memory may be searched. A value ID directory may be constructed in memory, where the value ID directory includes last value IDs for the dictionary blocks, and each of the last value IDs is mapped to an index of one of the dictionary blocks that includes a string value for that last value ID. A separator directory may also be constructed in memory, where the separator directory includes separators for the dictionary blocks, and each of the separators is mapped to an index of one of the dictionary blocks that includes a string value for that separator.Type: ApplicationFiled: April 20, 2018Publication date: August 23, 2018Applicant: SAP SEInventors: Colin Florendo, Carsten Thiel, Ivan Schreter, Mihnea Andrei, Anil Kumar Goel
-
Patent number: 10042886Abstract: A method and system, the system including a plurality of machines each having a processor and a main memory component; a shared distributed storage facility storing a set of data and accessible by the plurality of machines over a communication network; a controller to select, in response to a state of a query execution plan comprising a plurality of executable jobs for the set of data, which one of a set of scheduling algorithms to execute; an execution engine to execute the selected scheduling algorithm to determine, for each job in the plurality of jobs, which server to schedule to execute the respective job; and providing an indication of the scheduling of the servers determined to be schedules for the execution of the jobs.Type: GrantFiled: August 3, 2015Date of Patent: August 7, 2018Assignee: SAP SEInventors: Pooya Saadat-Panah, Anisoara Nica, Nathan Auch, Peter Bumbulis, Anil Kumar Goel, Jeffrey Pound
-
Publication number: 20180165343Abstract: Disclosed herein are system, method, and computer program product embodiments for quorum-based replication of data records. In one embodiment, a read request for reading a record is received from a user node on a replica node of a cluster of replica nodes. The record is then determined not committed on the replica node. In response to the determination, an update message indicative of whether the number of replica nodes on which the record is durable exceeds a threshold is received on the replica node. In response to the number of replica nodes exceeds the threshold, a value of the record on the replica node is transmitted to the user node.Type: ApplicationFiled: December 9, 2016Publication date: June 14, 2018Inventors: Hua Fan, Jeffrey Pound, Peter Bumbulis, Anil Kumar Goel, Scott MacLean, Nathan Auch, Eric Garber
-
Patent number: 9977801Abstract: A request for an entry of a dictionary having multiple dictionary blocks may be received, where the dictionary stores string values associated with corresponding value identifiers (IDs) for dictionary compression. One of the dictionary blocks may be selectively loaded into memory, and the dictionary block that has been loaded into memory may be searched. A value ID directory may be constructed in memory, where the value ID directory includes last value IDs for the dictionary blocks, and each of the last value IDs is mapped to an index of one of the dictionary blocks that includes a string value for that last value ID. A separator directory may also be constructed in memory, where the separator directory includes separators for the dictionary blocks, and each of the separators is mapped to an index of one of the dictionary blocks that includes a string value for that separator.Type: GrantFiled: July 16, 2014Date of Patent: May 22, 2018Assignee: SAP SEInventors: Colin Florendo, Carsten Thiel, Ivan Schreter, Mihnea Andrei, Anil Kumar Goel
-
Patent number: 9965513Abstract: Disclosed herein are system, method, and computer program product embodiments for determining row visibility states. An embodiment operates by initializing a result bitmap for rows based on visible row state values of row state bitmaps corresponding to the rows, wherein values of the result bitmap indicate whether the row are visible or not visible; determining one or more rows whose corresponding visible row state values indicate that the one or more rows are not visible; and determining whether to update the result bitmap to indicate that the one or more rows are visible based on one or more versioned row state values, wherein the one or more versioned row state values indicate whether the corresponding rows are not visible or possibly visible.Type: GrantFiled: November 25, 2014Date of Patent: May 8, 2018Assignee: SAP SEInventors: Juchang Lee, Mihnea Andrei, Colin Florendo, Ivan Schreter, Anil Kumar Goel
-
Publication number: 20180075083Abstract: A transaction management service layer monitors a plurality of read and write transactions being executed by the data engines by way of client libraries at each of a plurality of data engines. In addition, the transaction management server layer maintains and coordinates transaction timestamp and sequence numbers that are shared by the plurality of data engines. The transaction management service layer identifies and resolves conflicts among the plurality of transactions. The transaction management service layer is a separate and independent service that is isolated from other components of the plurality of data engines. Related apparatus, systems, techniques and articles are also described.Type: ApplicationFiled: September 9, 2016Publication date: March 15, 2018Inventors: Juchang Lee, Chang Gyoo Park, Francis Gropengiesser, Anil Kumar Goel, Deok Koo Kim, SunHo Lee
-
Patent number: 9891831Abstract: The subject matter disclosed herein provides methods for the dual storage of data using an in-memory array and an on-disk page structure. An in-memory array holding a column of data can be maintained. One or more pages can be maintained. Each of the one or more pages can have one or more rows for storing the column of data. Random access can be provided to a subset of the one or more rows by at least loading the subset of rows from the one or more pages to the in-memory array without loading all of the rows from the one or more pages. Related apparatus, systems, techniques, and articles are also described.Type: GrantFiled: November 25, 2014Date of Patent: February 13, 2018Assignee: SAP SEInventors: Thomas Legler, David Wein, Ivan Schreter, Mihnea Andrei, Anil Kumar Goel, Guenter Radestock
-
Patent number: 9881041Abstract: A delta store giving row-level versioning semantics to a non-row-level versioning underlying store is described. An example method includes establishing a column-based in-memory database including a main store and a delta store, where the main store allows only non-concurrent transactions on a same table and the delta store has a plurality of row-visibility bitmaps implementing a row-level versioning mechanism that allows concurrent transactions on the same table. A local RID space is established for a table fragment, that for each table in the database, the data of the table is stored in one or more main table fragment in the main store and in one or more delta table fragments in the delta store. Each table fragment has a local RID space, and the local RID space is a collection of one-based contiguous integer local RIDs (Row IDs) describing local positions of the rows of the table fragment.Type: GrantFiled: December 20, 2013Date of Patent: January 30, 2018Assignee: Sybase, Inc.Inventors: Mihnea Andrei, Anil Kumar Goel, Colin Florendo, Rolando Blanco, David Edward DeHaan
-
Publication number: 20170357574Abstract: A system includes writing of log data in chunks over a first range of heap log sequence positions of a heap log stored in the non-volatile memory system, and writing of a heap anchor marker in a first anchor stream of a transaction log stored in the non-volatile memory system, at a first transaction log sequence position of the transaction log, wherein the first anchor stream is associated with a first stream of the transaction log, and the heap anchor marker identifies the first range of heap log sequence positions of the heap log.Type: ApplicationFiled: June 13, 2016Publication date: December 14, 2017Inventors: Jeffrey Pound, Nathan Auch, Peter Bumbulis, Anil Kumar Goel, Scott MacLean, Eric Garber