Abstract:
A calculation engine of a database management system is described. The calculation engine may receive a query associated with a calculation scenario that defines a data flow model. The data flow model may include one or more calculation nodes, each of which corresponding to an operation performed on one or more database tables stored at a database. The one or more calculation nodes may include at least one calculation node corresponding to a ranking filter operation. The calculation engine may execute the query including by executing the calculation scenario. The executing of the calculation scenario may include performing the ranking filter operation to generate a result corresponding to at least a portion of rows included in a first partition of a database table stored at the database. Related systems, methods, and articles of manufacture are provided.
Abstract:
Described herein is a top operator of a calculation scenario of a calculation engine that can process and rank data according to certain logical criterion requested in a query. Based on the ranked data, the top operator can provide the data results in response to the query. The top operator can provide additional useful data in the data results when certain conditions are met. The top operator can provide the data results in a useful and efficient manner.
Abstract:
A range k-nearest neighbor search query of a database is processed by first defining an inner rectangle bounded within a circle around a center point specified by the range k-nearest neighbor search query. Thereafter, a distance to the center point is calculated for each point within the inner rectangle. Query results are returned if k or more points are within the inner rectangle. Otherwise, at least one additional query is executed. Related apparatus, systems, techniques and articles are also described.
Abstract:
Described herein is a top operator of a calculation scenario of a calculation engine that can process and rank data according to certain logical criterion requested in a query. Based on the ranked data, the top operator can provide the data results in response to the query. The top operator can provide additional useful data in the data results when certain conditions are met. The top operator can provide the data results in a useful and efficient manner.
Abstract:
According to an aspect, a system for moving a filter in a query model to ensure query semantics includes a query engine configured to obtain a query model for a query to be executed on a database. The query engine includes a query optimizer configured to instantiate the query model by merging the query with the query model. The query optimizer includes a filter mover configured to move a filter to a point within the instantiated query model such that semantics for the query within the instantiated query model is ensured.
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.
Abstract:
A calculation engine is described that executes calculation scenarios comprising a plurality of calculation nodes that specify operations to be performed to execute the query. One of the nodes can be a semantic node that is used to modify the query for operations requiring special handling including handling of hierarchy views. Related apparatus, systems, methods, and articles are also described.
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. Related apparatus, systems, methods, and articles are also described.
Abstract:
A query is received by a database server from a remote application server that is associated with a calculation scenario that defines a data flow model including one or more calculation nodes including stacked multiproviders. Subsequently, the database server instantiates the calculation scenario and afterwards optimizes the calculation scenario. As part of the optimization, the calculation scenario is optimized by merging the two multiproviders. Thereafter, the operations defined by the calculation nodes of the optimized calculation scenario can be executed to result in a responsive data set. Next, the data set is provided to the application server by the database server.
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.