Patents by Inventor Jan Finis
Jan Finis 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: 10795887Abstract: A database engine receives a query and parses the query to form a first intermediate query. The engine compiles the first intermediate query to form a first executable plan that includes in-memory operators that execute within memory without swapping to secondary memory. While executing a first in-memory operator in the first executable plan, the engine detects insufficient memory and aborts execution of the first executable plan. The engine optimizes the first intermediate query to form a second intermediate query, and compiles the second intermediate query to form a second executable plan. The second plan includes spooling operators that execute within fixed memory budgets and are configured to swap to the secondary memory when needed. The engine executes the second executable plan, including the spooling operators, to retrieve results from the database that are responsive to the query. The engine then returns the retrieved results.Type: GrantFiled: August 18, 2017Date of Patent: October 6, 2020Assignee: Tableau Software, Inc.Inventors: Michael Schreier, Thomas Neumann, Viktor Leis, Alfons Kemper, Tobias Muehlbauer, Jan Finis
-
Patent number: 10769124Abstract: A system includes determination of a first interval encoding of a first version of a hierarchy of nodes, determination of a second version of the hierarchy of nodes, determination of a first difference between the first version of the hierarchy of nodes and the second version of the hierarchy of nodes, and determination of a first swap of two translation ranges of the first interval encoding, the first swap representing the first difference.Type: GrantFiled: August 31, 2015Date of Patent: September 8, 2020Assignee: SAP SEInventors: Jan Finis, Robert Brunel
-
Publication number: 20200201860Abstract: A database engine receives a database query from a client. The database engine parses the database query to build a query operator tree that includes a plurality of query operators. The database engine performs one or more optimization passes on the query operator tree, including a deduplication optimization pass, to form an optimized execution plan. The deduplication optimization pass includes: creating a list of query operators via a first traversal of the query operator tree, determining a first query operator that is equivalent to a second query operator, based on a hash map, via a second traversal of the query operator tree, and substituting, via a third traversal of the query operator tree, the second query operator with a tree node that links to the first query operator. The database engine executes the optimized execution plan to retrieve a result set from the database, and returns the result set.Type: ApplicationFiled: December 21, 2018Publication date: June 25, 2020Inventors: Adrian Vogelsgesang, Michael Haubenschild, Rick Cole, Jan Finis, Manuel Then, Tobias Muehlbauer, Thomas Neumann
-
Patent number: 10657133Abstract: A system includes storage of data of a hierarchy, where each node of the hierarchy is represented by a row, and each row includes a level of its respective node, a pointer to a lower bound entry of an order index structure associated with the hierarchy, and a pointer to an upper bound entry of the order index structure associated with the hierarchy, reception of a pointer l, and determination of an entry e of the order index structure to which the received pointer l points.Type: GrantFiled: January 30, 2018Date of Patent: May 19, 2020Assignee: SAP SEInventors: Jan Finis, Robert Brunel
-
Patent number: 10521430Abstract: A method dynamically selects query execution operators for a database engine. The database engine receives a query and parses the query to form a query execution tree. The engine creates a first executable plan that includes in-memory operators, which execute within the volatile memory. While executing a first in-memory operator, the engine detects insufficient memory to complete the execution and aborts the execution. The engine then recompiles the query execution tree to form a second executable plan, which includes spooling operators. Each spooling operator executes within a fixed volatile memory budget. The engine executes the second executable plan, including the plurality of spooling operators, to identify a set of results from the database that is responsive to the query, and returns the results.Type: GrantFiled: July 14, 2017Date of Patent: December 31, 2019Assignee: Tableau Software, Inc.Inventors: Michael Schreier, Thomas Neumann, Viktor Leis, Alfons Kemper, Tobias Muehlbauer, Jan Finis
-
Patent number: 10423623Abstract: A system includes a stored table comprising a plurality of rows and at least one column, each of the plurality of rows associated with a node of a hierarchy, and one of the at least one columns implicity representing a position of a row's associated node within the hierarchy, wherein a Structured Query Language query is received and, response to the query, one or more values of the one of the at least one columns are determined and one or more properties of the hierarchy are determined based on the one or more values.Type: GrantFiled: February 5, 2015Date of Patent: September 24, 2019Assignee: SAP SEInventors: Robert Brunel, Jan Finis, Gerald Franz
-
Publication number: 20190146961Abstract: A system includes determination, based on a plurality of rows of a table, where each of the plurality of rows associated with a respective row_id represents a respective a node of a hierarchy, row_id pairs of each parent node-child node pair of the hierarchy, execution, based on the row_id pairs, of a depth-first traversal of the hierarchy to sequentially add each row_id of the plurality of rows to a hierarchy index and receive a NODE value associated with the added row_id, and, for each of the plurality of rows, update of a row based on the NODE value associated with the row_id of the row.Type: ApplicationFiled: January 16, 2019Publication date: May 16, 2019Inventors: Jan Finis, Robert Brunel
-
Patent number: 10223395Abstract: A system includes determination, based on a plurality of rows of a table, where each of the plurality of rows associated with a respective row_id represents a respective a node of a hierarchy, row_id pairs of each parent node-child node pair of the hierarchy, execution, based on the row_id pairs, of a depth-first traversal of the hierarchy to sequentially add each row_id of the plurality of rows to a hierarchy index and receive a NODE value associated with the added row_id, and, for each of the plurality of rows, update of a row based on the NODE value associated with the row_id of the row.Type: GrantFiled: October 14, 2015Date of Patent: March 5, 2019Assignee: SAP SEInventors: Jan Finis, Robert Brunel
-
Publication number: 20180165332Abstract: A system includes storage of data of a hierarchy, where each node of the hierarchy is represented by a row, and each row includes a level of its respective node, a pointer to a lower bound entry of an order index structure associated with the hierarchy, and a pointer to an upper bound entry of the order index structure associated with the hierarchy, reception of a pointer l, and determination of an entry e of the order index structure to which the received pointer l points.Type: ApplicationFiled: January 30, 2018Publication date: June 14, 2018Inventors: Jan Finis, Robert Brunel
-
Patent number: 9916359Abstract: A system includes storage of data of a hierarchy, where each node of the hierarchy is represented by a row, and each row includes a level of its respective node, a pointer to a lower bound entry of an order index structure associated with the hierarchy, and a pointer to an upper bound entry of the order index structure associated with the hierarchy, reception of a pointer l, and determination of an entry e of the order index structure to which the received pointer l points.Type: GrantFiled: June 1, 2015Date of Patent: March 13, 2018Assignee: SAP SEInventors: Jan Finis, Robert Brunel
-
Patent number: 9576011Abstract: A system includes generation of an encoding for each of a hierarchy of nodes, each of the nodes associated with one or more attributes, and the encoding for each node including a first pointer and a second pointer, and generation of an order tree comprising a hierarchy of entries, where each pointer of the encoding points to a respective one of the entries, wherein the encoding and the order tree indicate a position of each node in the hierarchy of nodes.Type: GrantFiled: January 27, 2016Date of Patent: February 21, 2017Assignee: SAP SEInventors: Jan Finis, Robert Brunel
-
Publication number: 20160350380Abstract: A system includes storage of data of a hierarchy, where each node of the hierarchy is represented by a row, and each row includes a level of its respective node, a pointer to a lower bound entry of an order index structure associated with the hierarchy, and a pointer to an upper bound entry of the order index structure associated with the hierarchy, reception of a pointer l, and determination of an entry e of the order index structure to which the received pointer l points.Type: ApplicationFiled: June 1, 2015Publication date: December 1, 2016Inventors: Jan Finis, Robert Brunel
-
Publication number: 20160232207Abstract: A system includes a stored table comprising a plurality of rows and at least one column, each of the plurality of rows associated with a node of a hierarchy, and one of the at least one columns implicity representing a position of a row's associated node within the hierarchy, wherein a Structured Query Language query is received and, response to the query, one or more values of the one of the at least one columns are determined and one or more properties of the hierarchy are determined based on the one or more values.Type: ApplicationFiled: February 5, 2015Publication date: August 11, 2016Inventors: Robert Brunel, Jan Finis, Gerald Franz
-
Publication number: 20160232189Abstract: A system includes determination, based on a plurality of rows of a table, where each of the plurality of rows associated with a respective row_id represents a respective a node of a hierarchy, row_id pairs of each parent node-child node pair of the hierarchy, execution, based on the row_id pairs, of a depth-first traversal of the hierarchy to sequentially add each row_id of the plurality of rows to a hierarchy index and receive a NODE value associated with the added row_id, and, for each of the plurality of rows, update of a row based on the NODE value associated with the row_id of the row.Type: ApplicationFiled: October 14, 2015Publication date: August 11, 2016Inventors: Jan Finis, Robert Brunel
-
Publication number: 20160140154Abstract: A system includes generation of an encoding for each of a hierarchy of nodes, each of the nodes associated with one or more attributes, and the encoding for each node including a first pointer and a second pointer, and generation of an order tree comprising a hierarchy of entries, where each pointer of the encoding points to a respective one of the entries, wherein the encoding and the order tree indicate a position of each node in the hierarchy of nodes.Type: ApplicationFiled: January 27, 2016Publication date: May 19, 2016Inventors: Jan Finis, Robert Brunel
-
Patent number: 9280575Abstract: A system includes generation of an encoding for each of a hierarchy of nodes, each of the nodes associated with one or more attributes, and the encoding for each node including a first pointer and a second pointer, and generation of an order tree comprising a hierarchy of entries, where each pointer of the encoding points to a respective one of the entries, wherein the encoding and the order tree indicate a position of each node in the hierarchy of nodes.Type: GrantFiled: July 19, 2013Date of Patent: March 8, 2016Assignee: SAP SEInventors: Jan Finis, Robert Brunel
-
Publication number: 20150370836Abstract: A system includes generation of a first interval encoding of a first version of a hierarchy of nodes, determination of a second version of the hierarchy of nodes, and determination of a first interval delta based on the first interval encoding and the second version of the hierarchy of nodes.Type: ApplicationFiled: August 31, 2015Publication date: December 24, 2015Inventors: Jan Finis, Robert Brunel
-
Patent number: 9152665Abstract: A system includes generation of a first interval encoding of a first version of a hierarchy of nodes, determination of a second version of the hierarchy of nodes, and determination of a first interval delta based on the first interval encoding and the second version of the hierarchy of nodes.Type: GrantFiled: July 1, 2013Date of Patent: October 6, 2015Assignee: SAP SEInventors: Jan Finis, Robert Brunel
-
Patent number: 9087091Abstract: A system includes determination of a first tree comprising a first hierarchy of nodes and a second tree comprising a second hierarchy of nodes, determination of first subtrees of the first tree which are identical to first subtrees of the second tree, generation of a first mapping between nodes of the first subtrees of the first tree and nodes of the first subtrees of the second tree, generation of a first feature vector for each of second subtrees of the first tree, insertion of the first feature vectors into an index structure, generation of a second feature vector for each of second subtrees of the second tree, and generation of a second mapping between nodes of second subtrees of the first tree and nodes of the second subtrees of the second tree based on the second feature vectors and the index structure.Type: GrantFiled: August 7, 2013Date of Patent: July 21, 2015Assignee: SAP SEInventors: Martin Raiber, Jan Finis, Robert Brunel
-
Publication number: 20150046464Abstract: A system includes determination of a first tree comprising a first hierarchy of nodes and a second tree comprising a second hierarchy of nodes, determination of first subtrees of the first tree which are identical to first subtrees of the second tree, generation of a first mapping between nodes of the first subtrees of the first tree and nodes of the first subtrees of the second tree, generation of a first feature vector for each of second subtrees of the first tree, insertion of the first feature vectors into an index structure, generation of a second feature vector for each of second subtrees of the second tree, and generation of a second mapping between nodes of second subtrees of the first tree and nodes of the second subtrees of the second tree based on the second feature vectors and the index structure.Type: ApplicationFiled: August 7, 2013Publication date: February 12, 2015Inventors: Martin Raiber, Jan Finis, Robert Brunel