Patents by Inventor Christian Bensberg
Christian Bensberg 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: 20150149513Abstract: Tables in a distributed database can require redistribution, for example to provide improved collocation of tables or table partitions that require joining at a node of multiple nodes across which the distributed database is distributed. Based at least in part on a set of table redistribution parameters, a table redistribution plan can be generated to include redistribution of a table from a first node to a second node. The set of table redistribution parameters can include a grouping parameter indicating at least one other table with which the table should be collocated. The table redistribution plan can be executed to cause the moving of the table from the first node to the second node.Type: ApplicationFiled: November 26, 2013Publication date: May 28, 2015Inventors: Johannes Beigel, Christian Bensberg, Hans-Joerg Leu, Lars Fricke
-
Publication number: 20150149509Abstract: A node type of a plurality of distributed nodes to which a table to be added to a distributed database should be assigned can be identified by applying a set of placement rules defined for the table. The set of placement rules can also be applied to determine whether the table should be partitioned into more than one partition. A table group name associated with the table can be obtained and used in conjunction with the node type and determination of whether to partition the table to store the table in the distributed database on at least one node of the plurality of nodes as one or more partitions.Type: ApplicationFiled: November 26, 2013Publication date: May 28, 2015Inventors: Hans-Joerg Leu, Christian Bensberg, Johannes Beigel, Jochen Becker, Carsten Mueller
-
Publication number: 20150095307Abstract: A system, a method, and a computer program product for providing transparent access to multi-temperature data are disclosed. A query for accessing data is received. The query includes at least one selection parameter for retrieval of data. The data is stored in a plurality of partitions of a database system. Each partition has a maximum data value per column, a minimum data value per column, and a predetermined date associated with the data contained in the partition. A determination is made whether at least one selection parameter is greater than the minimum data value per column and less than the maximum data value per column. The queried data is retrieved from the partition using the predetermined date associated with the data contained in the partition.Type: ApplicationFiled: October 1, 2013Publication date: April 2, 2015Inventors: Christian Bensberg, Christian Kraus, Axel Herbst, Stefan Elfner, Holger Schwedes, Heiko Gerwens
-
Publication number: 20150039588Abstract: A dynamic split node defined within a calculation model can receive data being operated on by a calculation plan generated based on the calculation model. A partition specification can be applied to one or more reference columns in a table containing at least some of the received data. The applying can cause the table to be split such that a plurality of records in the table are partitioned according to the partition specification. A separate processing path can be set for each partition, and execution of the calculation plan can continue using the separate processing paths, each of which can be assigned to a processing node of a plurality of available processing nodes.Type: ApplicationFiled: October 20, 2014Publication date: February 5, 2015Inventors: Daniel Baeumges, Christian Bensberg, Lars Fricke
-
Publication number: 20140351291Abstract: A table creation request pertaining to a table in a database maintained on a multi-node data partitioning landscape that comprises a plurality of processing nodes can specify a number of partitions to be generated. At run time, a currently available number of processing nodes in the multi-node data partitioning landscape can be queried, and this currently available number of processing nodes can be compared with the specified number of partitions to be generated for the created table. The table can be generated with the specified number of partitions such that the generated partitions are located across the plurality of partitions according to a load balancing approach if the number of processing nodes equals the number of partitions to be generated or according to other information in the table request if the number of processing nodes does not equal the specified number of partitions.Type: ApplicationFiled: August 6, 2014Publication date: November 27, 2014Inventors: Lars Fricke, Christian Bensberg
-
Patent number: 8880565Abstract: A table creation request pertaining to a table in a database maintained on a multi-node data partitioning landscape that comprises a plurality of processing nodes can specify a number of partitions to be generated. At run time, a currently available number of processing nodes in the multi-node data partitioning landscape can be queried, and this currently available number of processing nodes can be compared with the specified number of partitions to be generated for the created table. The table can be generated with the specified number of partitions such that the generated partitions are located across the plurality of partitions according to a load balancing approach if the number of processing nodes equals the number of partitions to be generated or according to other information in the table request if the number of processing nodes does not equal the specified number of partitions.Type: GrantFiled: December 23, 2011Date of Patent: November 4, 2014Assignee: SAP SEInventors: Lars Fricke, Christian Bensberg
-
Patent number: 8868594Abstract: A dynamic split node defined within a calculation model can receive data being operated on by a calculation plan generated based on the calculation model. A partition specification can be applied to one or more reference columns in a table containing at least some of the received data. The applying can cause the table to be split such that a plurality of records in the table are partitioned according to the partition specification. A separate processing path can be set for each partition, and execution of the calculation plan can continue using the separate processing paths, each of which can be assigned to a processing node of a plurality of available processing nodes.Type: GrantFiled: December 23, 2011Date of Patent: October 21, 2014Assignee: SAP AGInventors: Daniel Baeumges, Christian Bensberg, Lars Fricke
-
Publication number: 20140258300Abstract: A recipient node of a multi-node data partitioning landscape can receive, directly from a requesting machine without being handled by a master node, a first data request related to a table. A target node of a plurality of processing nodes can be identified to handle the data request. The determining can include the recipient node applying partitioning information to determine a target data partition of the plurality of data partitions to which the data request should be directed and mapping information associating each data partition of the plurality of data partitions with an assigned node of the plurality of processing nodes. The recipient node can redirect the data request to the target node so that the target node can act on the target data partition in response to the data request.Type: ApplicationFiled: May 21, 2014Publication date: September 11, 2014Inventors: Daniel Baeumges, Lars Fricke, Christian Bensberg
-
Patent number: 8812564Abstract: An insertion of a record into a table that includes a primary key column and a second column that includes a global uniqueness constraint across all of a plurality of data partitions across which the table is split is initiated without checking that a value of the record in the second column is globally unique by contacting other partitions the one partition to which the record is to be added to. The insertion can be processed, at least in part by implementing a write lock on the one partition but without implementing a read lock on the other partitions. The write lock on the one partition can be released after the insertion is completed, after which the validity of the insertion can be verified, for example by examining the other parts and a delta partition corresponding to the table. The insertion can be undone if the insertion was not valid.Type: GrantFiled: December 20, 2011Date of Patent: August 19, 2014Assignee: SAP AGInventors: Thomas Peh, Wolfgang Stephan, Andreas Tonder, Lars Fricke, Christian Bensberg
-
Publication number: 20140172794Abstract: Data replication in a database includes identifying a source database system. The source database includes a main index file and a delta log file. To create a replica, one or more symbolic links to the source database system are generated. The symbolic links identify a path to a physical location of the source database. A replica of the source database is generated based on the symbolic links. The replica includes a copy of the main index file and delta log file. Information associated with the replica and the symbolic links is stored in a recovery log. Replica are provided transparently to most database engine components by re-using partitioning infrastructure. Components “see” replica as tables with a single partition; that partition is a local replica.Type: ApplicationFiled: December 19, 2012Publication date: June 19, 2014Inventors: Christian BARTHOLOMÄ, Michael Mühle, Hans-Jörg Leu, Steffen Geissinger, Thorsten Glebe, Martin Heidel, Lars Fricke, Volker Diesel, Christian Bensberg
-
Publication number: 20130166589Abstract: A dynamic split node defined within a calculation model can receive data being operated on by a calculation plan generated based on the calculation model. A partition specification can be applied to one or more reference columns in a table containing at least some of the received data. The applying can cause the table to be split such that a plurality of records in the table are partitioned according to the partition specification. A separate processing path can be set for each partition, and execution of the calculation plan can continue using the separate processing paths, each of which can be assigned to a processing node of a plurality of available processing nodes.Type: ApplicationFiled: December 23, 2011Publication date: June 27, 2013Inventors: Daniel Baeumges, Christian Bensberg, Lars Fricke
-
Publication number: 20130166606Abstract: A table creation request pertaining to a table in a database maintained on a multi-node data partitioning landscape that comprises a plurality of processing nodes can specify a number of partitions to be generated. At run time, a currently available number of processing nodes in the multi-node data partitioning landscape can be queried, and this currently available number of processing nodes can be compared with the specified number of partitions to be generated for the created table. The table can be generated with the specified number of partitions such that the generated partitions are located across the plurality of partitions according to a load balancing approach if the number of processing nodes equals the number of partitions to be generated or according to other information in the table request if the number of processing nodes does not equal the specified number of partitions.Type: ApplicationFiled: December 23, 2011Publication date: June 27, 2013Inventors: Lars Fricke, Christian Bensberg
-
Publication number: 20130159659Abstract: Based on one or more first columns of a table partitioned at a first level over multiple first level partitions, a first partition criteria is evaluated for a data record. Each of the at least first level partitions is further partitioned into a same number of second-level partitions using a same second partitioning method for all first level partitions. One first level partition is identified for storage of the data record, for example by determining the one of the at least two data server processes using the first partition criteria and a first partitioning method that differs from the second partitioning method. Based on one or more second columns of the table, a second partition criteria is evaluated for the data record, and the data record is stored in one of the second-level partitions of the at least two first level partitions.Type: ApplicationFiled: December 19, 2011Publication date: June 20, 2013Inventors: Boris Gelman, Hualin Wang, Daniel Baeumges, Lars Fricke, Christian Bensberg
-
Publication number: 20130159265Abstract: An insertion of a record into a table that includes a primary key column and a second column that includes a global uniqueness constraint across all of a plurality of data partitions across which the table is split is initiated without checking that a value of the record in the second column is globally unique by contacting other partitions the one partition to which the record is to be added to. The insertion can be processed, at least in part by implementing a write lock on the one partition but without implementing a read lock on the other partitions. The write lock on the one partition can be released after the insertion is completed, after which the validity of the insertion can be verified, for example by examining the other parts and a delta partition corresponding to the table. The insertion can be undone if the insertion was not valid.Type: ApplicationFiled: December 20, 2011Publication date: June 20, 2013Inventors: Thomas Peh, Wolfgang Stephan, Andreas Tonder, Lars Fricke, Christian Bensberg
-
Publication number: 20130138628Abstract: According to some embodiments, a system and method for a parallel join of relational data tables may be provided by calculating, by a plurality of concurrently executing execution threads, hash values for join columns of a first input table and a second input table; storing the calculated hash values in a set of disjoint thread-local hash maps for each of the first input table and the second input table; merging the set of thread-local hash maps of the first input table, by a second plurality of execution threads operating concurrently, to produce a set of merged hash maps; comparing each entry of the merged hash maps to each entry of the set of thread-local hash maps for the second input table to determine whether there is a match, according to a join type; and generating an output table including matches as determined by the comparing.Type: ApplicationFiled: January 15, 2013Publication date: May 30, 2013Inventors: Christian Bensberg, Christian Mathis, Frederik Transier, Nico Bohnsack, Kai Stammerjohann
-
Patent number: 8370316Abstract: According to some embodiments, a system and method for a parallel join of relational data tables may be provided by calculating, by a plurality of concurrently executing execution threads, hash values for join columns of a first input table and a second input table; storing the calculated hash values in a set of disjoint thread-local hash maps for each of the first input table and the second input table; merging the set of thread-local hash maps of the first input table, by a second plurality of execution threads operating concurrently, to produce a set of merged hash maps; comparing each entry of the merged hash maps to each entry of the set of thread-local hash maps for the second input table to determine whether there is a match, according to a join type; and generating an output table including matches as determined by the comparing.Type: GrantFiled: December 23, 2010Date of Patent: February 5, 2013Assignee: SAP AGInventors: Christian Bensberg, Christian Mathis, Frederik Transier, Nico Bohnsack, Kai Stammerjohann
-
Publication number: 20120011133Abstract: A computer-implemented system and method for performing distinct operations on multiple tables of shared memory of parallel computing environments are disclosed. A distinct operation is executed on each table of a plurality of tables, each distinct operation eliminating duplicate data from each table, the executing creating a hierarchy of table pairs and distinct results, the distinct results comprising a reduced row set for each table. Duplicates on each reduced row set are detected to complete the distinct operation on the plurality of tables.Type: ApplicationFiled: December 30, 2010Publication date: January 12, 2012Inventors: Franz Faerber, Christian Bensberg, Lars Fricke
-
Publication number: 20120011108Abstract: According to some embodiments, a system and method for a parallel join of relational data tables may be provided by calculating, by a plurality of concurrently executing execution threads, hash values for join columns of a first input table and a second input table; storing the calculated hash values in a set of disjoint thread-local hash maps for each of the first input table and the second input table; merging the set of thread-local hash maps of the first input table, by a second plurality of execution threads operating concurrently, to produce a set of merged hash maps; comparing each entry of the merged hash maps to each entry of the set of thread-local hash maps for the second input table to determine whether there is a match, according to a join type; and generating an output table including matches as determined by the comparing.Type: ApplicationFiled: December 23, 2010Publication date: January 12, 2012Inventors: Christian Bensberg, Christian Mathis, Frederik Transier, Nico Bohnsack, Kai Stammerjohann