Patents by Inventor Christoph Weyerhaeuser

Christoph Weyerhaeuser 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: 20180137011
    Abstract: Described herein includes a calculation scenario of a calculation engine that efficiently partitions data for processing at separate hosts, including in parallel, and unions intermediate results from such separate processing when required for further processing. Such parallel processing of partitions can allow for faster processing times, and such unioning of data only when required for further processing can limit the transferring of data that results in slower processing.
    Type: Application
    Filed: November 17, 2016
    Publication date: May 17, 2018
    Inventors: JULIAN SCHWING, Johannes Merx, Christoph Weyerhaeuser
  • Patent number: 9916374
    Abstract: A query is received by a database server from a remote application server. The query encapsulates an on-the-fly calculation scenario that defines a data flow model that includes one or more calculation nodes. Thereafter, the database server instantiates the on-the-fly calculation scenario. The database server then executes the operations defined by the calculation nodes of the instantiated calculation scenario to result in a responsive data set so that the database server can provide the data set to the application server. Related apparatus, systems, methods, and articles are also described.
    Type: Grant
    Filed: May 31, 2013
    Date of Patent: March 13, 2018
    Assignee: SAP SE
    Inventors: Christoph Weyerhaeuser, Tobias Mindnich, Daniel Baeumges, Johannes Merx
  • Patent number: 9846724
    Abstract: According to an aspect, a database system for integrating calculation models into execution plans includes a first engine configured to parse a query to be applied on a database. The first engine is configured to invoke a second engine during query compilation. The second engine is configured to instantiate a calculation model based on the query, and the second engine is configured to derive a converted calculation model by converting the calculation model into a format compatible with the first engine. The first engine is configured to incorporate the converted calculation model into an execution plan during the query compilation and execute the query on the database according to execution plan.
    Type: Grant
    Filed: November 13, 2014
    Date of Patent: December 19, 2017
    Assignee: SAP SE
    Inventors: Christoph Weyerhaeuser, Tobias Mindnich, Johannes Merx, Yongsik Yoon, Sung Heun Wi, Jeong Ae Han
  • Patent number: 9842137
    Abstract: The present invention includes a database with a semantic layer for performing standard SQL and complex operations custom to one or more application. In one embodiment the present invention includes receiving a data request from an application in a database, the data request specifying standard SQL operations and custom application operations to be performed for said application. The data request is processed in a semantic layer of the database. The semantic layer processes the standard SQL operations and the custom application operations and generates a logical execution plan comprising the standard SQL operations and the custom application operations. The logical execution plan is converted into a physical execution plan, which is executed by the database to generate a data result. The data result may be sent back to the application.
    Type: Grant
    Filed: January 6, 2015
    Date of Patent: December 12, 2017
    Assignee: SAP SE
    Inventors: Franz Faerber, Daniel Baeumges, Tobias Mindnich, Christoph Weyerhaeuser
  • Publication number: 20170322952
    Abstract: A calculation engine of a database management system is described. In some implementations, the calculation engine receives a calculation scenario including a plurality of join operations defining an intersection between at least two nodes. The calculation engine optimizes a first join which is of a certain cardinality, and for which no attributes are requested, other than a join attribute. The optimization includes determining whether a static filter is present for a first node or a second node of the first join, and pruning the first node and/or the second node from the hierarchical join when the attribute is not requested from the first node or the second node and/or when the static filter is not present for the first node or the second node. Related systems, methods, and articles of manufacture are also described.
    Type: Application
    Filed: May 9, 2016
    Publication date: November 9, 2017
    Inventors: Julian Schwing, Johannes Merx, Christoph Weyerhaeuser
  • Publication number: 20170323001
    Abstract: A calculation engine of a database management system is described. In some implementations, the calculation engine receives a calculation scenario including a plurality of calculation views comprising one or more relational operations. The calculation engine determines whether a first calculation view includes a second calculation view configured as an operand of one of the relational operations of the first calculation view, and also determines whether the second calculation view comprises a non-relational operation. The calculation engine further converts the plurality of calculation views into a calculation plan via merging the first calculation view with the second calculation view when the first calculation view is determined to comprise the second calculation view as an operand, and replacing the second calculation view with a view search operation when the second calculation view is determined to comprise the non-relational operation.
    Type: Application
    Filed: May 9, 2016
    Publication date: November 9, 2017
    Applicants: SAP SE, SAP SE
    Inventors: Julian Schwing, Johannes Merx, Christoph Weyerhaeuser
  • Publication number: 20170322988
    Abstract: A calculation engine of a database management system is described. In an exemplary implementation, the calculation engine receives a calculation scenario. The calculation scenario includes one or more relational operations and one or more non-relational operations of a multiprovider, the multiprovider utilizing a plurality of database partitions. The calculation engine processes the one or more non-relational operations via the multiprovider. After processing the one or more non-relational operations, the calculation engine converts the one or more relational operations. This converting comprises filtering first data from the plurality of partitions to form second data and forming third data by performing a union operation on the second data. Thereafter, the third data is filtered to form fourth data. Related systems, methods, and articles of manufacture are also described.
    Type: Application
    Filed: May 9, 2016
    Publication date: November 9, 2017
    Inventors: Christoph Weyerhaeuser, Johannes Merx
  • Patent number: 9767151
    Abstract: A query is received by a database server from a remote application server. The query is associated with a calculation scenario that defines a data flow model that includes one or more calculation nodes and that includes at least one hierarchy filter. Each hierarchy filter is a filter of at least one hierarchy table. Each calculation node defines one or more operations to execute on the database server. Thereafter, the database server instantiates the calculation scenario. The instantiating includes optimizing the calculation scenario by transforming at least one hierarchy filter and pushing down the at least one transformed hierarchy filter to a lower calculation node. The database server then executes the operations defined by the calculation nodes of the optimized calculation scenario to result in a responsive data set. The database server can subsequently provide the data set to the application server.
    Type: Grant
    Filed: November 18, 2013
    Date of Patent: September 19, 2017
    Assignee: SAP SE
    Inventors: Tobias Mindnich, Christoph Weyerhaeuser, Johannes Merx
  • Patent number: 9753981
    Abstract: A query is received by a database server from a remote application server. The query is associated with a calculation scenario that defines a data flow model that includes one or more calculation nodes. The calculation nodes each define one or more operations to execute by a calculation engine on the database server. Thereafter, the database server instantiates a runtime model of the calculation scenario by accessing a local settings object stored with the calculation scenario that specifies local settings for the calculation scenario. Subsequently, the database server executes the operations defined by the calculation nodes of the instantiated calculation scenario to result in a responsive data set. The data set can then be provided by the database server to the application server.
    Type: Grant
    Filed: March 11, 2014
    Date of Patent: September 5, 2017
    Assignee: SAP SE
    Inventors: Christoph Weyerhaeuser, Tobias Mindnich, Johannes Merx, Joerg Schad, Julian Schwing
  • Patent number: 9715527
    Abstract: A database server receives a query from a remote application server that is associated with a calculation scenario. The calculation scenario defines a data flow model that includes one or more calculation nodes that each define one or more operations to execute on the database server. The database server can be a column-oriented database and at least one of the calculation nodes comprises at least one join operation. Thereafter, the database server instantiates the calculation scenario so that it is optimized by removing one or more join operations and associated branches within the calculation scenario. The database server then executes the operations defined by the calculation nodes of the optimized calculation scenario to result in a responsive data set. The database server then provides the data set to the application server.
    Type: Grant
    Filed: November 18, 2013
    Date of Patent: July 25, 2017
    Assignee: SAP SE
    Inventors: Tobias Mindnich, Christoph Weyerhaeuser, Johannes Merx
  • Patent number: 9672250
    Abstract: A select query or a data referencing a calculation scenario is received by a database server from a remote application server. The specified calculation scenario is one of a plurality of calculation scenarios and it defines a data flow model that includes one or more calculation nodes. Each calculation node defines one or more operations to execute on the database server. Thereafter, the database server instantiates the specified calculation scenario and executes the operations defined by the calculation nodes of the instantiated calculation scenario to result in a responsive data set. This data set is then provided by the database server to the application server. Related apparatus, systems, techniques and articles are also described.
    Type: Grant
    Filed: April 8, 2016
    Date of Patent: June 6, 2017
    Assignee: SAP SE
    Inventors: Christoph Weyerhaeuser, Daniel Baeumges, Tobias Mindnich, Thomas Legler
  • Publication number: 20170147637
    Abstract: Methods and apparatus, including computer program products, are provided for union node pruning. In one aspect, there is provided a method, which may include receiving, by a calculation engine, a query; processing a calculation scenario including a union node; accessing a pruning table associated with the union node, wherein the pruning table includes semantic information describing the first input from the first data source node and the second input from the second data source node; determining whether the first data source node and the second data source node can be pruned by at least comparing the semantic information to at least one filter of the query; and pruning, based on a result of the determining, at least one the first data source node or the second data source node. Related apparatus, systems, methods, and articles are also described.
    Type: Application
    Filed: November 19, 2015
    Publication date: May 25, 2017
    Inventors: Tobias Mindnich, Julian Schwing, Christoph Weyerhaeuser, Isil Pekel, Johannes Merx, Alena Bakulina
  • Publication number: 20170147705
    Abstract: Based on received input, a vertex table of the database layer and a vertex key column in the vertex table can be identified. The vertex key column defines vertices of a graph representation. Also based on the received input, an edge table of the database layer, an edge key column in the edge table, a source column in the edge table, and a target column in the edge table can be identified. The source column and target column define relationships between vertices of the plurality of vertices. Within a graph workspace object, graph relationships linking the vertices defined by the vertex key column via edges defined by the source column and target column in the edge table can be assigned, and the graph workspace can be generated in a higher level programming layer based on the graph workspace object.
    Type: Application
    Filed: November 19, 2015
    Publication date: May 25, 2017
    Inventors: Romans Kasperovics, Tobias Mindnich, Cornelia Kinder, Christoph Weyerhaeuser, Thomas Fischer
  • Publication number: 20170147636
    Abstract: Methods and apparatus, including computer program products, are provided for first and last aggregation. In one aspect, there is provided a method, which may include receiving, by a calculation engine, a query; detecting, by the calculation engine, whether the query includes a first aggregation and/or a last aggregation over at least one group and at least one keyfigure; optimizing the received query, when the detecting indicates the received query includes the first aggregation and/or the last aggregation, wherein the optimizing further comprises initiating execution of the received query by at least: performing a single read of a table, detecting, from the single table read, at least one group, and indicating, in the detected at least one group, the first aggregation in the at least one keyfigure and/or the last aggregation in the at least one keyfigure; and returning, for the at least one detected group, the indicated first aggregation and/or the indicated second aggregation.
    Type: Application
    Filed: November 20, 2015
    Publication date: May 25, 2017
    Inventors: Christoph Weyerhaeuser, Tobias Mindnich, Johannes Merx, Julian Schwing
  • Publication number: 20170139987
    Abstract: A calculation engine is described that executes calculation scenarios comprising a plurality of calculation nodes that each specify operations to be performed to execute the query. One of the nodes can be a semantic node that is used to modify a higher-level programming language query that stacks the calculation scenario on top of another semantic node based calculation scenario for operations that call for processing of non-processable key figures. Non-processable key figures being key figures that produce incorrect semantics when processed by higher-level calculation scenarios. Related apparatus, systems, methods, and articles are also described.
    Type: Application
    Filed: November 18, 2015
    Publication date: May 18, 2017
    Inventors: Christoph Weyerhaeuser, Tobias Mindnich, Johannes Merx, Alena Bakulina
  • Publication number: 20170139989
    Abstract: A calculation engine of a database management system receives a calculation scenario. The calculation scenario comprises a query of a multiprovider that comprises a plurality of partitions. The calculation engine evaluates the query to identify a partition of the plurality of partitions that is not necessary for responding to the query. The calculation engine prunes the partition from the calculation scenario. The pruning comprises not loading or accessing the partition in the execution of the query and/or removing the filter constraint for the partition.
    Type: Application
    Filed: November 18, 2015
    Publication date: May 18, 2017
    Inventors: Christoph Weyerhaeuser, Tobias Mindnich, Johannes Merx, Julian Schwing
  • Publication number: 20170139988
    Abstract: A stacked calculation view, defining a calculation scenario, having calculation views associated with high-level programming logic which can include complex analytical privileges. Resolving, using a high-level programming logic layer, a calculation view having associated high-level programming logic with the next calculation view in the stack to generate a sub-query. Converting the sub-query into a format readable by a database system and separating the part of the sub-query provided by the high-level programming logic from the sub-query to form a high-level programming logic filter in the database system format. Merge the high-level programming logic filter into the calculation scenario to provide a calculation scenario including high-level programming logic information in the database system format.
    Type: Application
    Filed: November 18, 2015
    Publication date: May 18, 2017
    Inventors: JOHANNES MERX, Tobias Mindnich, Christoph Weyerhaeuser
  • Publication number: 20170139982
    Abstract: A database server receives a request to perform a primary query on a table of a database. A first table query can be generated and can include a starting row identifier, ROW A, and a number of rows, n, for generating a data chunk from the table of the database. Multiple table queries can be performed each having a different starting row identifier and each defining the number of rows forming a data chunk. The primary query can be extended with the first table query in preparation for performing the primary query on the first data chunk.
    Type: Application
    Filed: November 18, 2015
    Publication date: May 18, 2017
    Inventors: Christoph Weyerhaeuser, Alena Bakulina, Tobias Mindnich, Johannes Merx, Julian Schwing
  • Patent number: 9619514
    Abstract: A query is received by a database server from a remote application server. The query is associated with a calculation scenario that defines a data flow model that includes one or more nodes that each define one or more operations for execution by a calculation engine on the database server. Thereafter, the database server instantiates a runtime model of the calculation scenario based on the nodes of the instantiated calculation scenario. Subsequently, one or more of the nodes are identified as being convertible into a relational database format. These nodes are then used to form a container node. An execution plan of the runtime model of the calculation scenario including the container node is built that is executed by the database server to result in a data set which is provided by the database server to the application server.
    Type: Grant
    Filed: June 17, 2014
    Date of Patent: April 11, 2017
    Assignee: SAP SE
    Inventors: Tobias Mindnich, Jeong Ae Han, Johannes Merx, Christoph Weyerhaeuser, Yongsik Yoon, Sung Heun Wi
  • Patent number: 9613094
    Abstract: A database server receives a query associated with a calculation scenario that defines a data flow model that includes one or more calculation nodes. Each calculation node defines one or more operations to execute on the database server, the database server comprising a column-oriented database. Thereafter, the database server instantiates the calculation scenario and executes the operations defined by the calculation nodes of the instantiated calculation scenario to result in a responsive data set having a result table with a row for each column in the column-oriented database implicated by the query having a constant value. The database server then provides the data set to the application server. Related apparatus, systems, methods, and articles are also described.
    Type: Grant
    Filed: October 29, 2013
    Date of Patent: April 4, 2017
    Assignee: SAP SE
    Inventors: Tobias Mindnich, Christoph Weyerhaeuser, Johannes Merx