Patents by Inventor Ivan Schreter
Ivan Schreter 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: 11386078Abstract: A method can include receiving, at a node comprising a distributed trust data storage system, a request to execute a transaction modifying a portion of a data partition. Replicas of the data partition may be stored at a plurality of nodes comprising the distributed trust data storage system. In response to the request, the transaction can be sent to the plurality of nodes storing replicas of the data partition to modify the portion of the data partition. The transaction can be committed based on a threshold quantity of the plurality of nodes reaching a consensus by determining a same cryptographic hash for the transaction. The transaction can be committed by sending, to the plurality of nodes, an indication to add an entry corresponding to the transaction to a transaction log recording transactions executed on the portion of the data partition. Related systems and articles of manufacture are also provided.Type: GrantFiled: December 17, 2018Date of Patent: July 12, 2022Assignee: SAP SEInventor: Ivan Schreter
-
Patent number: 11320854Abstract: A thread executing a task at a node in a multi-socket computing system may access a first data structure to obtain a first calibration dataset for the node. The first thread may generate a timestamp based on the first calibration dataset and a first quantity of time measured by a clock at the first node. The real-time duration of the task may be determined based on the timestamp. The first thread may recalibrate the first clock by at least generating, based on the first quantity of time measured by the clock and a second quantity of time measured by a wall clock of an operating system of the multi-socket computing system, a second calibration dataset. The first thread may update the first data structure to include the second calibration dataset while a second thread accesses a second data structure to obtain calibration data.Type: GrantFiled: April 1, 2020Date of Patent: May 3, 2022Assignee: SAP SEInventors: Ivan Schreter, Sergey Yurenev
-
Publication number: 20220027372Abstract: A method for providing optimized support for transactional processing and analytical processing with minimal memory footprint may include storing, on a data page in a disk of a database system, a portion of one or more columns of data from a database table. A metadata associated with the data page may be stored on a metadata page in the disk of the database system. The metadata may include one or more byte ranges on the data page at which the portion of the one or more columns of data is stored. The database system may execute one or more queries by accessing, based at least on the metadata associated with the data page, a portion of the data page storing the portion of the one or more columns of data required by the one or more queries. Related systems and articles of manufacture are also provided.Type: ApplicationFiled: January 26, 2021Publication date: January 27, 2022Inventor: Ivan Schreter
-
Patent number: 11188241Abstract: A method for storing a key-value pair can include dividing the key-value pair into a first data record and a second data record. The first data record can include a key associated with the key-value pair. The second data record can include a portion of a value associated with the key-value pair. The second data record can be stored in a secondary data store based on a size of the second data record exceeding a threshold value. The first data record can be stored in an in-memory key-value store based on a size of the first data record not exceeding the threshold value. The first data record can include a reference to the second data record in the secondary data store. A query requiring the key-value pair can be executed by retrieving the first data record from the in-memory key-value store. Related systems and articles of manufacture are also provided.Type: GrantFiled: July 6, 2018Date of Patent: November 30, 2021Assignee: SAP SEInventor: Ivan Schreter
-
Patent number: 11163609Abstract: A system and method of allocating memory to a thread of a multi-threaded program are disclosed. A method includes determining one or more thread-local blocks of memory that are available for the thread, and generating a count of the available one or more thread-local blocks for a thread-local freelist. If a thread-local block is available, allocating one block of the one or more thread-local blocks to the thread and decrementing the count in the thread-local freelist. When the count is zero, accessing a global freelist of available blocks of memory to determine a set of available blocks represented by the global freelist. Then, the set of available blocks are allocated from the global freelist to the thread-local freelist by copying one or more free block pointers of the global freelist to a thread-local state of the thread. Blocks can also be deallocated.Type: GrantFiled: April 2, 2019Date of Patent: November 2, 2021Assignee: SAP SEInventor: Ivan Schreter
-
Patent number: 11157370Abstract: In an executing database instance including a plurality of database nodes, creation of a backup of the executing database instance includes creation of a current savepoint in one of the plurality of database nodes by storing first modified pages of a cache of the database node in a datastore of the database node, transmitting a confirmation after storing the first modified pages, repeatedly identifying second modified pages of the cache and storing the identified second modified pages in the datastore, receiving an instruction to enter a critical phase and stopping the repeated identifying and storing in response to the instruction, blocking updates to the database node and transmitting a second confirmation, and receiving a second instruction and, in response to receiving the second instruction, identifying third modified pages of the cache and storing the third modified pages of the cache in the datastore.Type: GrantFiled: October 27, 2016Date of Patent: October 26, 2021Assignee: SAP SEInventor: Ivan Schreter
-
Publication number: 20210311521Abstract: A thread executing a task at a node in a multi-socket computing system may access a first data structure to obtain a first calibration dataset for the node. The first thread may generate a timestamp based on the first calibration dataset and a first quantity of time measured by a clock at the first node. The real-time duration of the task may be determined based on the timestamp. The first thread may recalibrate the first clock by at least generating, based on the first quantity of time measured by the clock and a second quantity of time measured by a wall clock of an operating system of the multi-socket computing system, a second calibration dataset. The first thread may update the first data structure to include the second calibration dataset while a second thread accesses a second data structure to obtain calibration data.Type: ApplicationFiled: April 1, 2020Publication date: October 7, 2021Inventors: Ivan Schreter, Sergey Yurenev
-
Patent number: 11086832Abstract: The subject matter disclosed herein relates to out of memory error handling in a database system. A database operation can be received by an in-memory database. The database operation can be for a database object stored in a database table that can be represented as a plurality of pages that can be persisted in a page chain. The in-memory database can reserve out of memory space sufficient to load a predetermined number of pages in the page chain into memory. The in-memory database can iteratively process each page in the page chain until completion of the database operation. The iterative process can include loading the page from persistence into memory of the in-memory database, performing at least a portion of the database operation using the loaded page, and unloading the page from the memory of the in-memory database. Related apparatus, systems, techniques, and articles are also described.Type: GrantFiled: October 16, 2015Date of Patent: August 10, 2021Assignee: SAP SEInventors: Panfeng Zhou, Colin Florendo, Ivan Schreter, Thorsten Glebe, David Wein
-
Patent number: 11079942Abstract: A method for controlling access to a shared filesystem stored in a distributed data storage system is provided. The method can include storing a file comprising a shared filesystem as an inode object and a series of data block objects comprising the shared filesystem. Responding to a request from a client to open the file can include generating, in the shared filesystem, a client object, an open file object, and a client index object. The client object can be linked to the open file object and the client index object. The open file object and the client index object can be further linked to the inode object to indicate the file being accessed by the client. Related systems and articles of manufacture, including computer program products, are also provided.Type: GrantFiled: July 6, 2018Date of Patent: August 3, 2021Assignee: SAP SEInventor: Ivan Schreter
-
Publication number: 20210224280Abstract: A system and method of query processing in a multi-level storage system having a unified table architecture. A query is received by a common query execution engine connected with the unified table architecture, the query specifying a data record. The common query execution engine performs a look-up for the data record based on the query at the first level storage structure. If the data record is not present at the first level storage structure, the common query execution engine performs separate look-ups in each of the second level storage structure and the main store.Type: ApplicationFiled: April 1, 2021Publication date: July 22, 2021Inventors: Franz Faerber, Juchang Lee, Ivan Schreter
-
Patent number: 11003665Abstract: A system and method of query processing in a multi-level storage system having a unified table architecture. A query is received by a common query execution engine connected with the unified table architecture, the query specifying a data record. The common query execution engine performs a look-up for the data record based on the query at the first level storage structure. If the data record is not present at the first level storage structure, the common query execution engine performs separate look-ups in each of the second level storage structure and the main store.Type: GrantFiled: September 8, 2016Date of Patent: May 11, 2021Assignee: SAP SEInventors: Franz Faerber, Juchang Lee, Ivan Schreter
-
Patent number: 10997164Abstract: A new unique value to be added to a column of a database table can be written to an in-memory array representing a dictionary of the column, and space can be allocated in at least one dictionary block on at least one page maintained on a persistent storage without writing the new unique value to the at least one dictionary block. A pending materialization bit for the at least one page can be set to identify the at least one page for deferred materialization.Type: GrantFiled: November 23, 2015Date of Patent: May 4, 2021Assignee: SAP SEInventors: Steffen Geissinger, Ivan Schreter
-
Patent number: 10970175Abstract: An approach for providing flexible durability operations for a data storage application can include requests to perform logging operations of data storage application having an indication of a durability mode to use for the logging operation. The logging operation can be initiated according to the indication of the durability mode and a callback indicating log write completion can be called according to the indication of the durability mode.Type: GrantFiled: June 15, 2016Date of Patent: April 6, 2021Assignee: SAP SEInventor: Ivan Schreter
-
Patent number: 10901789Abstract: A system and method of registering one or more objects in a container of a multi-threaded computing system. A method includes prefixing, to each object of the one or more objects, an object header having a version counter with an initial version count of zero. The method further includes for each object to be allocated to a thread of the multi-threaded computing system, allocating an object frame associated with each allocated object to the thread while maintaining the object header. The method further includes constructing each allocated object in the object frame after the object header, and initializing the object header of each allocated object by executing a store/store memory barrier and incrementing the version counter by a count of one to mark the associated allocated object as valid.Type: GrantFiled: April 2, 2019Date of Patent: January 26, 2021Assignee: SAP SEInventor: Ivan Schreter
-
Patent number: 10901639Abstract: A system for allocating memory (e.g., heap) in multi-core processors is provided. In some implementations, the system performs operations comprising receiving, at a shared cache having a plurality of segments, a first data allocation including a plurality of data blocks, and allocating at least a first and second data block from the first allocation. First and second segments in the shared cache can each comprise a plurality of data slots (e.g., of equal length). Allocating the first and second data blocks can include storing the first data block in a data slot of the first segment and storing the second data block in a data slot of the second segment. The plurality of data slots which do not contain data may contain padding, and/or the data slots to which the first and second data blocks are allocated are not adjacent. Related systems, methods, and articles of manufacture are also described.Type: GrantFiled: February 8, 2017Date of Patent: January 26, 2021Assignee: SAP SEInventors: Daniel Booss, Robert Kettler, Mehul Wagle, Harshada Khandekar, Ivan Schreter
-
Patent number: 10896062Abstract: A memory allocator assigns temporary memory limits to each of a plurality of processes requiring memory. Thereafter, at least one assigned temporary memory limit is changed during execution of a corresponding process. Related apparatus, systems, techniques and articles are also described.Type: GrantFiled: November 7, 2011Date of Patent: January 19, 2021Assignee: SAP SEInventors: Ivan Schreter, Daniel Booss
-
Patent number: 10860553Abstract: Deleting a data record from the second level storage or main store is disclosed. A look-up is performed for the data record in the first level storage, where the data record is defined by a row identifier. If the row identifier is found in the first level storage, a look-up is performed for an updated row identifier representing an update of the data record in the second level storage and the main store, the update of the data record being defined by an updated row identifier. If the updated row identifier is found in the second level storage, an undo log is generated from the first level storage to invalidate a row identifier of the row identifier. A flag is generated representing an invalid updated row identifier, and a redo log is generated to restore the data record in the first level storage.Type: GrantFiled: August 21, 2017Date of Patent: December 8, 2020Assignee: SAP SEInventors: Franz Faerber, Juchang Lee, Ivan Schreter
-
Patent number: 10853351Abstract: A system and method of logless atomic data movement. An internal transaction is started within a multi-level storage architecture, the internal transaction to merge data from the first level storage structure to the second level storage structure. Committed data is read from a first level storage structure of the multi-level storage architecture as specified by the internal transaction. The committed data from the first level storage structure is inserted into a second level storage structure in a bulk insertion process, and the committed data is marked as being deleted from the first level storage. The internal transaction is then committed to the multi-level storage architecture when the committed data has been inserted into the second level storage structure.Type: GrantFiled: March 13, 2017Date of Patent: December 1, 2020Assignee: SAP SEInventors: Franz Faerber, Juchang Lee, Ivan Schreter
-
Patent number: 10824673Abstract: A system includes a non-volatile random access memory storing a column store main fragment of a column of a database table, and a processing unit to read the column store main fragment from the non-volatile random access memory. A volatile random access memory storing a column store delta fragment of the column of the database table may also be included, in which the processing unit is to write to the column store delta fragment. According to some systems, the stored column store main fragment is byte-addressable, and is copied from the volatile random access memory to the non-volatile random access memory without using a filesystem cache.Type: GrantFiled: September 5, 2017Date of Patent: November 3, 2020Assignee: SAP SEInventors: Oliver Rebholz, Ivan Schreter, Abdelkader Sellami, Daniel Booss, Gunter Radestock, Peter Bumbulis, Alexander Boehm, Frank Renkes, Werner Thesing, Thomas Willhalm
-
Patent number: 10817196Abstract: A method for generating a data directory can include allocating a first page for storing a first segment of a log recording changes applied to data subsequent to a checkpoint. When the first page reaches maximum capacity, a second page can be allocated for storing a second segment of the log. A third page can be allocated for storing a first page list that includes a first page reference to the second data page. A fourth page serving as a restart page can be updated. The fourth page can store a second page list of data pages storing the data directory. The fourth page can be updated to add, to the second page list, a second page reference to the data page. Crash recovery at the computing node can be performed based on the data directory. Related systems and articles of manufacture are also provided.Type: GrantFiled: July 6, 2018Date of Patent: October 27, 2020Assignee: SAP SEInventor: Ivan Schreter