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: 10521117
    Abstract: First page data from one or more pages stored on a persistent storage can be loaded into a page buffer in a main system memory of one or more computing systems, and second page data that includes first dictionary values of a first dictionary for a first database column can be loaded and pinned into the page buffer in the main system memory. First contents of a first dictionary block containing first re-direction references to the first dictionary can be copied from the loaded first page data into a first in-memory array, and the first page data can be deallocated from the page buffer. The first re-direction references can direct to the first dictionary values of the first dictionary in the pinned second page data.
    Type: Grant
    Filed: November 24, 2015
    Date of Patent: December 31, 2019
    Assignee: SAP SE
    Inventors: Steffen Geissinger, Ivan Schreter, Mihnea Andrei
  • Patent number: 10474648
    Abstract: Metadata is stored within a database for each of a plurality of objects in different frames associated with a structure descriptor (e.g., a container directory entry, etc.). The frames are part of a metadata page and each comprising an object and a header specifying a version identifier for the object and a size of the object. The structure descriptor initially is built for a first build identifier. Thereafter, upon the structure descriptor changing from the first build identifier to a second build identifier, at least one of the objects that require migration is identified. The identification is based on the version identifier for the object being different from the second build identifier. In response, the identified objects are migrated from their corresponding frame to a new frame. The new frame includes the objects and new headers that include a version identifier equal to the second build identifier.
    Type: Grant
    Filed: November 25, 2014
    Date of Patent: November 12, 2019
    Assignee: SAP SE
    Inventors: Ivan Schreter, Dirk Thomsen
  • Patent number: 10409864
    Abstract: Disclosed herein are system, method, and computer program product embodiments for utilizing a transaction control block for providing reader-writer access to transaction commit status. An embodiment operates by receiving a row read request and determining that the row is versioned. The system determines that a first timestamp information for a row destroy transaction associated with the row exists in a transaction control block and retrieves the first timestamp information from the transaction control block.
    Type: Grant
    Filed: November 25, 2014
    Date of Patent: September 10, 2019
    Assignee: SAP SE
    Inventors: Ivan Schreter, Chang-Gyoo Park
  • Patent number: 10402115
    Abstract: A generic state machine concept can be used to decouple specific state machine functionality from any specific consensus protocol. A generic state machine can prepare a local log record and generate a local log index in response to a data update received at a computing node of a plurality of computing nodes in a distributed data storage application. The generic state machine can pass replication information to one or more other computing nodes in the plurality of computing nodes in accordance with the consensus protocol and can mutate a state of the generic state machine upon the plurality of computing nodes achieving a quorum.
    Type: Grant
    Filed: November 29, 2016
    Date of Patent: September 3, 2019
    Assignee: SAP, SE
    Inventor: Ivan Schreter
  • Publication number: 20190258580
    Abstract: A method may include dividing, into a first portion of memory resources and a second portion of memory resources, a plurality of memory resources included in a cache coupled with a database. The plurality of memory resources included in the cache may store data from the database. The first portion of memory resources may be occupied by data assigned to a first weight class. The second portion of memory resources may be occupied by data assigned to a second weight class. The first portion of memory resources may be selected based at least on the first weight class and an age of at least some of the data occupying the first portion of memory resources. In response to the selection of the first portion of memory resources, the first portion of memory resources may be reclaimed. Related systems and articles of manufacture, including computer program products, are also provided.
    Type: Application
    Filed: February 20, 2018
    Publication date: August 22, 2019
    Inventors: Daniel Booss, Ivan Schreter
  • Patent number: 10379750
    Abstract: An available receive slot of an incoming network queue can be allocated to a network packet of a request received at a computing node, and receipt of the network packet can be processed using the allocated receive slot. An available free I/O control block of a free I/O control block queue and an available request slot from a free request queue can be allocated to the network packet after completion of the receipt processing. The free I/O control block queue and free request queue respectively have a same number of I/O queue blocks and request slots as the incoming network queue has receive slots. An I/O task required for the network packet can be completed using the allocated I/O control block, and an available send slot of an outgoing network queue can be allocated to send a reply to a client machine from which the request was received.
    Type: Grant
    Filed: May 22, 2017
    Date of Patent: August 13, 2019
    Assignee: SAP SE
    Inventor: Ivan Schreter
  • Patent number: 10372688
    Abstract: A record within a destination virtual file is generated on a destination node of a distributed data storage system. The record comprises a link directed to a source virtual file stored on a source node. The source virtual file is mapped to a chain of linked pages stored in a page buffer of the distributed data storage system. A request is later received at the destination node to access data defined by the destination virtual file. Data is provided, in response to the request, from the source virtual file stored on the source node using the link. Related apparatus, systems, techniques and articles are also described.
    Type: Grant
    Filed: November 7, 2011
    Date of Patent: August 6, 2019
    Assignee: SAP SE
    Inventors: Dirk Thomsen, Ivan Schreter
  • Patent number: 10348817
    Abstract: Network packets containing data of a data request received from a client machine by a leader replica of a cluster of replicas can be passed to follower replicas of the cluster, and a replicate request can be sent to the follower replicas after the network packets have been sent to the follower replicas. A mutation required by the data request can be recorded as committed upon receipt of replication confirmation messages from a quorum of the replicas, and the client machine can be notified that the mutation has been completed after the recording of the mutation as committed. In one option, the client machine can send the network packets to the leader replica, which in turn sends these network packets to the follower replicas. In another option, the client machine can send the network packets to the leader replica and to the follower replicas.
    Type: Grant
    Filed: May 22, 2017
    Date of Patent: July 9, 2019
    Assignee: SAP SE
    Inventor: Ivan Schreter
  • Patent number: 10341168
    Abstract: A topology manager implemented on a data partition of a distributed computing system can be notified that a destination computing node in the distributed computing system is not responding to a communication request. Upon determining that the destination computing node is dead and/or has a loss of communication with one or more, and optionally a majority of other computing nodes in a plurality of computing nodes of the distributed computing system, the topology manager can retire the destination computing node and cause a load balancing of replicas of data partitions in the distributed computing system to compensate for loss of the retired computing node.
    Type: Grant
    Filed: April 18, 2017
    Date of Patent: July 2, 2019
    Assignee: SAP SE
    Inventor: Ivan Schreter
  • Patent number: 10296611
    Abstract: The subject matter disclosed herein provides methods for reformatting a page due to a rollover. An in-memory array holding a column of data can be maintained. One or more pages can be maintained. Each page can have one or more rows for storing the column of data. The column of data in the in-memory array can be monitored for a change. A rollover can be performed on at least one of the pages based on the change. The rollover can reformat the at least one page by rewriting metadata associated with the at least one page. Related apparatus, systems, techniques, and articles are also described.
    Type: Grant
    Filed: November 25, 2014
    Date of Patent: May 21, 2019
    Inventors: David Wein, Mihnea Andrei, Ivan Schreter, Rolando Blanco, Thomas Legler
  • Patent number: 10289709
    Abstract: A first block in a page chain can be assigned to a first dictionary for a first column of a database. The page chain can include a plurality of dictionary blocks allocated to a plurality of dictionaries of a plurality of columns including the first column such that the plurality of dictionary blocks is interleaved in the page chain. A new unique value to be added to the first column can be appended to an end of the first dictionary. The plurality of dictionaries can be loaded from the page chain into memory of one or more computers performing operations of a database management system. The loading can include scanning the page chain a single time and assigning the plurality of dictionary blocks to the respective dictionaries of the plurality of dictionaries.
    Type: Grant
    Filed: November 23, 2015
    Date of Patent: May 14, 2019
    Assignee: SAP SE
    Inventors: Steffen Geissinger, Ivan Schreter
  • Patent number: 10275289
    Abstract: First logical cores supported on physical processor cores in a computing system can be designated for execution of message-passing workers of a plurality of message workers while at least second logical cores supported on the physical processor cores can be designated for execution of procedural code such that resources of a physical processor core supporting the first logical core and the second logical core are shared between a first logical core and a second logical core. A database object in a repository can be assigned to one message-passing worker, which can execute operations on the database object while procedurally coded operations are processed using the second logical core on one or more of the plurality of physical processor cores while the first logical core executes the message-passing worker.
    Type: Grant
    Filed: February 13, 2017
    Date of Patent: April 30, 2019
    Assignee: SAP SE
    Inventor: Ivan Schreter
  • Patent number: 10255309
    Abstract: At least one read operation is concurrently performed with at least one write operation that each insert a key/value pair into a backing array of a backing hash table of a hash table forming part of a columnar in-memory database. The backing array maps a plurality of pointers each to a respective bucket. Each bucket includes at least one state bit and a hashed value of a corresponding key. Thereafter, for each write operation, a first available position in the backing array at which a pointer to a new bucket containing the key/value pair can be inserted is iteratively determined (such that each first available position has no corresponding pre-existing pointer). Subsequently, for each write operation, the pointer to the new bucket containing the key/value pair is inserted at the corresponding first determined position in the backing array. Related apparatus, systems, techniques and articles are also described.
    Type: Grant
    Filed: November 25, 2014
    Date of Patent: April 9, 2019
    Assignee: SAP SE
    Inventors: Rolando Blanco, Ivan Schreter, Thomas Legler
  • Patent number: 10241907
    Abstract: A system includes reception of an instruction to create a data block associated with a portion of a database table in a non-volatile memory system, creation, in response to the instruction to create the data block, of a file associated with the data block in the non-volatile memory system, where a filename of the file comprises an indication that the data block is a temporary block, creation of an entry in a data block map table indicating that the data block is a temporary block, reception of an instruction to commit the data block, and, in response to the instruction to commit the data block, flush data associated with the data block to the file in the non-volatile memory system, rename the file to remove the indication that the data block is a temporary block, and update the entry in the data block map to indicate that the data block is a committed block.
    Type: Grant
    Filed: May 18, 2017
    Date of Patent: March 26, 2019
    Assignee: SAP SE
    Inventors: Ivan Schreter, Daniel Booss, Akanksha Meghlan, Mehul Wagle
  • Patent number: 10235422
    Abstract: A system includes reception of a value, determination of whether the value is associated with a respective value identifier in a dictionary index associating each of a plurality of values with a respective value identifier, and in response to a determination that the value is not associated with a respective value identifier in the dictionary index: reservation of a slot of a reservation array comprising a plurality of slots, writing of the value into the reserved slot, insertion of a reserved value identifier of the reserved slot and a version counter of the reserved slot into a position of the dictionary index corresponding to the value, insertion of the value into a position of a dictionary vector storing a respective value in each of a plurality of vector positions, insertion of a first value identifier corresponding to the position of the dictionary vector into the position of the dictionary index corresponding to the value, and returning of the first value identifier.
    Type: Grant
    Filed: May 8, 2014
    Date of Patent: March 19, 2019
    Assignee: SAP SE
    Inventor: Ivan Schreter
  • Patent number: 10180812
    Abstract: A cluster of nodes can receive a request to perform a logging operation of a distributed data storage application. The logging operation can include writing of data to a secondary storage of each of the nodes of the plurality of nodes. The request can include an indication of a durability mode to use for the logging operation. The logging operation can be initiated at each node of the plurality of nodes according to the indication of the durability mode, a completion callback can be run at each node of the plurality of nodes according to the indication of the durability mode, a global durability state and a global commit state can be determined for the cluster, and a reply can be returned to the request once the global durability state and global commit state are consistent with the indication of the durability mode to be used for the logging operation.
    Type: Grant
    Filed: June 16, 2016
    Date of Patent: January 15, 2019
    Assignee: SAP SE
    Inventor: Ivan Schreter
  • Publication number: 20190012105
    Abstract: A method can include caching, at a first computing node and a second computing node, a replica of an anchor object. The anchor object can link to a topology object storing elements comprising a distributed data storage system. The first computing node can reside in a first availability zone. The second computing node can reside in a second availability zone. The first availability zone and the second availability zone can be part of a data center. The first computing node and the second computing node can each store a data partition associated with a data container belonging to a tenant. A replica of the topology object can be cached at the first availability zone and the second availability zone. A query requiring data associated with the tenant can be executed based on the cached replica of the anchor objects and/or topology objects.
    Type: Application
    Filed: July 6, 2018
    Publication date: January 10, 2019
    Inventor: Ivan Schreter
  • Publication number: 20190012084
    Abstract: A method for page based data persistence can include storing data associated with a state machine at a computing node. The data can be stored by at least allocating a first data page for storing the data. In response to the allocation of the first data page, a first page reference to the first data page can be added to a first page list in an in-memory buffer at the computing node. When the in-memory buffer reaches maximum capacity, a second data page can be allocated for storing the first page list. A second page reference to the second data page can be added to a second page list in the in-memory buffer. Related systems and articles of manufacture, including computer program products, are also provided.
    Type: Application
    Filed: July 6, 2018
    Publication date: January 10, 2019
    Inventor: Ivan Schreter
  • Publication number: 20190012357
    Abstract: A method for logging changes to data stored in a distributed data storage system can include responding to a request to change the data stored in the distributed data storage system by generating a log entry corresponding to the change. A replica of the data can be stored at each of a first computing node and a second computing node comprising the distributed data storage system. The log entry can be added to a first log stored at the first computing node and propagated to the second computing node to add the first log entry to a second log stored at the second computing node. A crash recovery can be performed at the first computing node and/or the second computing node based on the first log and/or the second log. Related systems and articles of manufacture, including computer program products, are also provided.
    Type: Application
    Filed: July 6, 2018
    Publication date: January 10, 2019
    Inventor: Ivan Schreter
  • Publication number: 20190012336
    Abstract: 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: Application
    Filed: July 6, 2018
    Publication date: January 10, 2019
    Inventor: Ivan Schreter