Patents by Inventor Thomas Neumann
Thomas Neumann 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: 20240134894Abstract: A method executes at a computer system to retrieve data from a database. Upon receiving a database query, the computer system translates the query into an intermediate representation, and estimates a compilation time to compile the intermediate representation into machine executable code. The query execution time to retrieve a result set is also estimated. In accordance with a determination that the query execution time and compilation time satisfy an interpretation criterion, the computer system invokes a byte code interpreter to interpret the intermediate representation and retrieve the result set from the database. In accordance with a determination that the query execution and compilation times satisfy one of a plurality of compilation criteria, the computer system compiles the intermediate representation to form machine code and executes the machine code to retrieve the result set from the database. In some cases, the query intermediate representation is optimized prior to compilation.Type: ApplicationFiled: October 17, 2023Publication date: April 25, 2024Inventors: Thomas NEUMANN, Viktor Leis, Alfons Kemper, Tobias Muehlbauer, Jan Finis
-
Patent number: 11789988Abstract: A method is executed at a computer system to retrieve data from a database. Upon receiving a database query, a database engine of the computer system parses the query to form an operator tree including a plurality of join operators. For one of the plurality of clauses, the database engine adds to the operator tree a respective node that specifies a mark join operator, a single join operator, an inner join operator, or an outer join operator. Specifically, the database engine adds the mark join operator when the clause includes one of a predetermined set of predicate subqueries, and adds the single join operator when the clause includes a scalar subquery. The database engine performs one or more optimization passes on the operator tree to form an optimized execution plan, and executes the optimized execution plan to retrieve a result set from the database.Type: GrantFiled: July 8, 2021Date of Patent: October 17, 2023Assignee: Tableau Software, Inc.Inventors: Thomas Neumann, Viktor Leis, Alfons Kemper, Tobias Muehlbauer, Jan Finis
-
Patent number: 11720561Abstract: A method dynamically selects query execution operators. A database engine receives a query, parses the query to form a query execution tree, and compiles the tree to form a first executable plan that includes in-memory operators. The database engine executes the first plan, including executing in-memory operators in parallel. While executing a first in-memory operator, insufficient memory is detected. In response, the database engine aborts the execution, and recompiles the query tree in two ways, forming a second executable plan that replaces the first in-memory operator with a first spooling operator. The first spooling operator executes within a fixed volatile memory budget and swaps to non-volatile memory according to the budget. A third executable plan retains the first in-memory operator, but schedules it to run serially. The database engine selects either the second plan or the third plan, and executes the selected plan to return results for the query.Type: GrantFiled: April 12, 2022Date of Patent: August 8, 2023Assignee: Tableau Software, Inc.Inventors: Michael Schreier, Thomas Neumann, Viktor Leis, Alfons Kemper, Tobias Muehlbauer, Jan Finis
-
Patent number: 11704347Abstract: A method executes at a computer system to retrieve data from a database. Upon receiving a database query, the computer system translates the query into an intermediate representation, and estimates a compilation time to compile the intermediate representation into machine executable code. The query execution time to retrieve a result set is also estimated. In accordance with a determination that the query execution time and compilation time satisfy an interpretation criterion, the computer system invokes a byte code interpreter to interpret the intermediate representation and retrieve the result set from the database. In accordance with a determination that the query execution and compilation times satisfy one of a plurality of compilation criteria, the computer system compiles the intermediate representation to form machine code and executes the machine code to retrieve the result set from the database. In some cases, the query intermediate representation is optimized prior to compilation.Type: GrantFiled: July 6, 2021Date of Patent: July 18, 2023Assignee: Tableau Software, Inc.Inventors: Thomas Neumann, Viktor Leis, Alfons Kemper, Tobias Muehlbauer, Jan Finis
-
Patent number: 11514048Abstract: A method implements optimization of database queries by computing domain cardinality estimates. A client sends a database query to a server. The method parses the query to identify data columns. For each of the data columns, the method computes a lower bound and an upper bound of distinct data values using a pre-computed table size. The method also computes a patch factor by applying a pre-computed function to a ratio between a number of distinct data values that appear exactly once in a data sample and a number of distinct data values in the sample. Based on the patch factor, the lower bound, and the upper bound, the method computes an estimate of distinct values for each of the data columns. The method subsequently generates an execution plan for the query according to the computed estimates, executes the execution plan, and returns a result set to the client.Type: GrantFiled: November 3, 2020Date of Patent: November 29, 2022Assignee: TABLEAU SOFTWARE, INC.Inventors: Sebastian Hofstetter, Moritz Kaufmann, Thomas Neumann, Viktor Leis, Alfons Kemper, Tobias Muehlbauer, Jan Finis, Manuel Then
-
Patent number: 11475005Abstract: A database engine includes one or more computing devices, each having one or more processors and memory. The memory stores programs configured for execution by the processors. The database engine receives a database query from a client, and parses the database query to build a query operator tree. The query operator tree 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 determining that a first query operator is equivalent to a second query operator during a traversal of the query operator tree, and replacing the second query operator with a link to reuse results from 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 to the client.Type: GrantFiled: October 6, 2020Date of Patent: October 18, 2022Assignee: TABLEAU SOFTWARE, INC.Inventors: Adrian Vogelsgesang, Michael Haubenschild, Richard L. Cole, Jan Finis, Manuel Then, Tobias Muehlbauer, Thomas Neumann
-
Publication number: 20220244995Abstract: A safety device is provided for monitoring at least one machine that has at least one sensor for generating sensor data on the machine and a processing unit for the sensor data that is connected at least indirectly to the sensor and to the machine and that is configured as a runtime environment having at least one computing node and to allow at least one logic unit to run on the computing node, wherein at least one logic unit comprises a safety functional unit for a safety relevant evaluation of the sensor data to output in the case of a safety relevant event a safety signal to the machine for triggering a safety response, In this respect, the processing unit is furthermore configured to generate and resolve logic units and/or to assign them to a computing node.Type: ApplicationFiled: December 29, 2021Publication date: August 4, 2022Inventors: Christoph HOFMANN, Thomas NEUMANN, Sanketh RAMACHANDRA
-
Publication number: 20220237193Abstract: A method dynamically selects query execution operators. A database engine receives a query, parses the query to form a query execution tree, and compiles the tree to form a first executable plan that includes in-memory operators. The database engine executes the first plan, including executing in-memory operators in parallel. While executing a first in-memory operator, insufficient memory is detected. In response, the database engine aborts the execution, and recompiles the query tree in two ways, forming a second executable plan that replaces the first in-memory operator with a first spooling operator. The first spooling operator executes within a fixed volatile memory budget and swaps to non-volatile memory according to the budget. A third executable plan retains the first in-memory operator, but schedules it to run serially. The database engine selects either the second plan or the third plan, and executes the selected plan to return results for the query.Type: ApplicationFiled: April 12, 2022Publication date: July 28, 2022Inventors: Michael SCHREIER, Thomas Neumann, Viktor Leis, Alfonss Kemper, Tobias Muehlbauer, Jan Finis
-
Publication number: 20220186445Abstract: A compactor roller for a soil compactor comprises a roller shell (24), rotatable about a roller axis of rotation (W) and surrounding a roller interior (23), an oscillation/vibration assembly (28) arranged in the roller interior (23), wherein the oscillation/vibration assembly (28) comprises a first oscillation/vibration unit (30) with at least one drivable first unbalanced mass (50, 50?) for rotation about a first oscillation/vibration axis of rotation (D1), and a second oscillation/vibration unit (32) with at least one drivable second unbalanced mass (52, 52?) for rotation about a second oscillation/vibration axis of rotation (D2.Type: ApplicationFiled: December 8, 2021Publication date: June 16, 2022Inventor: Thomas NEUMANN
-
Publication number: 20220169348Abstract: Artificial intelligence can be used to provide accurate realignment functionality for various different marine devices on a watercraft. A system is provided for aligning one or more marine devices, where one or more controllers are configured to receive marine data from the marine device and receive secondary data from one or more second devices. An expected alignment characteristic is determined based on the secondary data and a corresponding deviation therefrom is determined based on marine data. In response to determining the deviation, the controllers are configured to cause at least one of a notification indicating a misalignment of the marine device to be provided to a user, a data adjustment to marine data so as to produce recalibrated marine data, or a physical adjustment to be applied to the marine device so as to subsequently receive realigned marine data from the marine device.Type: ApplicationFiled: November 30, 2020Publication date: June 2, 2022Inventors: Karl Thomas Neumann, Jeremy J. Schroeder
-
Publication number: 20220171043Abstract: A system for analysis of sonar data is provided comprising sonar transducer assembl(ies), processor(s), and a memory. The memory includes computer program code that is configured to, when executed, cause processor(s) to receive sonar data, where an object is represented within sonar data, and additional data from a data source other than the sonar transducer assembl(ies). The processor(s) further determine object characteristic(s) of the object using sonar data and additional data, and determine an estimated object-type for the object represented within sonar data using the object characteristic(s). The processor(s) further generate a sonar image based on sonar data, cause display of the sonar image, and cause provision of an indication of the estimated object-type so that the indication of the estimated object-type is correlated to the object representation in the sonar image.Type: ApplicationFiled: November 30, 2020Publication date: June 2, 2022Inventors: Karl Thomas Neumann, Jeremiah Clark
-
Publication number: 20220171019Abstract: A system for the display of radar returns is provided. The system comprises a radar configured to provide radar data, a processor, and a display configured to present the radar data. The system comprises memory including computer program code configured to, when executed, cause the processor to receive the radar data, wherein an object is represented within the radar data; receive additional data from a data source other than the radar; and determine object characteristic(s) of the object using the radar data and additional data, wherein the object characteristic(s) comprises a position, a velocity, an intensity, or an object classification of one or more objects. The computer program code is also configured to cause the processor to cause presentation of the radar data including a representation of the object and an indication of the corresponding object characteristic(s). A marine electronic device and a non-transitory computer readable medium are also provided.Type: ApplicationFiled: November 30, 2020Publication date: June 2, 2022Inventors: Karl Thomas Neumann, Laurence T. Bates
-
Patent number: 11327519Abstract: A manual controller for controlling a machine comprises a mounting platform and a control lever. The control lever is mounted in a joint on the mounting platform so that it can pivot about an axis. A position sensor detects the deflection of the control lever and generates a signal corresponding to the deflection. An evaluation and processing unit processes the signal from the position sensor and controls the machine according to the deflection. A return mechanism returns the control lever back to a starting position.Type: GrantFiled: June 29, 2018Date of Patent: May 10, 2022Assignee: FERNSTEUERGERÄTE Kurt Oelsch GmbHInventors: Thomas Neumann, Marcus Schinkel, Volker Jahn
-
Patent number: 11301469Abstract: A method dynamically selects query execution operators. A database engine receives a query, parses the query to form a query execution tree, and compiles the tree to form a first executable plan that includes in-memory operators. The database engine executes the first plan, including executing in-memory operators in parallel. While executing a first in-memory operator, insufficient memory is detected. In response, the database engine aborts the execution, and recompiles the query tree in two ways, forming a second executable plan that replaces the first in-memory operator with a first spooling operator. The first spooling operator executes within a fixed volatile memory budget and swaps to non-volatile memory according to the budget. A third executable plan retains the first in-memory operator, but schedules it to run serially. The database engine selects either the second plan or the third plan, and executes the selected plan to return results for the query.Type: GrantFiled: September 4, 2020Date of Patent: April 12, 2022Assignee: TABLEAU SOFTWARE, INC.Inventors: Michael Schreier, Thomas Neumann, Viktor Leis, Alfons Kemper, Tobias Muehlbauer, Jan Finis
-
Publication number: 20220043846Abstract: A method is executed at a computer system to retrieve data from a database. Upon receiving a database query, a database engine of the computer system parses the query to form an operator tree including a plurality of join operators. For one of the plurality of clauses, the database engine adds to the operator tree a respective node that specifies a mark join operator, a single join operator, an inner join operator, or an outer join operator. Specifically, the database engine adds the mark join operator when the clause includes one of a predetermined set of predicate subqueries, and adds the single join operator when the clause includes a scalar subquery. The database engine performs one or more optimization passes on the operator tree to form an optimized execution plan, and executes the optimized execution plan to retrieve a result set from the database.Type: ApplicationFiled: July 8, 2021Publication date: February 10, 2022Inventors: Thomas Neumann, Viktor Leis, Alfons Kemper, Tobias Muehlbauer, Jan Finis
-
Patent number: 11211943Abstract: A method compares text strings having Unicode encoding. The method receives a first string S=s1s2 . . . sn and a second string T=t1t2 . . . tm, where s1, s2, . . . , sn and t1, t2, . . . , tm are Unicode characters. The method computes a first string weight for the first string S according to a weight function ƒ. When S consists of ASCII characters, ƒ(S)=S. when S includes one or more non-replaceable non-ASCII characters, the first string weight ƒ(S) is a concatenation of an ASCII weight prefix ƒA(S) and a Unicode weight suffix ƒU(S). The method also computes a second string weight for the second text string T. Equality of the strings is tested using the string weights.Type: GrantFiled: September 29, 2020Date of Patent: December 28, 2021Assignee: TABLEAU SOFTWARE, INC.Inventors: Thomas Neumann, Viktor Leis, Alfons Kemper
-
Publication number: 20210390303Abstract: A method for monitoring an industrial process step of an industrial process by a monitoring system. A machine learning system of the monitoring system is provided that contains a correlation between digital image data as input data and process states of the industrial process step to be monitored as output data using at least one machine-trained decision algorithm. Digital image data is recorded by at least one image sensor of at least one image acquisition unit of the monitoring system. At least one current process state is determined using the decision algorithm by generating at least one current process state of the industrial process step as output data rom the recorded digital image data as input data of the machine learning system. The industrial process step is monitored by generating a visual, acoustic and/or haptic output as a function of the at least one determined current process state.Type: ApplicationFiled: August 26, 2021Publication date: December 16, 2021Applicant: WAGO Verwaltungsgesellschaft mbHInventors: Thomas NEUMANN, Daniel MARCEK, Florian WEISS
-
Publication number: 20210334298Abstract: A method executes at a computer system to retrieve data from a database. Upon receiving a database query, the computer system translates the query into an intermediate representation, and estimates a compilation time to compile the intermediate representation into machine executable code. The query execution time to retrieve a result set is also estimated. In accordance with a determination that the query execution time and compilation time satisfy an interpretation criterion, the computer system invokes a byte code interpreter to interpret the intermediate representation and retrieve the result set from the database. In accordance with a determination that the query execution and compilation times satisfy one of a plurality of compilation criteria, the computer system compiles the intermediate representation to form machine code and executes the machine code to retrieve the result set from the database. In some cases, the query intermediate representation is optimized prior to compilation.Type: ApplicationFiled: July 6, 2021Publication date: October 28, 2021Inventors: Thomas NEUMANN, Viktor Leis, Alfons Kemper, Tobias MUEHLBAUER, Jan Finis
-
Patent number: 11068520Abstract: A method is executed at a computer system to retrieve data from a database. Upon receiving a database query, a database engine of the computer system parses the query to form an operator tree including a plurality of join operators. For each of the plurality of clauses, the database engine adds to the operator tree a respective node that specifies a mark join operator, a single join operator, an inner join operator, or an outer join operator. Specifically, the database engine adds the mark join operator when the respective clause includes one of a predetermined set of predicate subqueries, and adds the single join operator when the respective clause includes a scalar subquery. The database engine performs one or more optimization passes on the operator tree to form an optimized execution plan, and executes the optimized execution plan to retrieve a result set from the database.Type: GrantFiled: February 6, 2018Date of Patent: July 20, 2021Assignee: TABLEAU SOFTWARE, INC.Inventors: Thomas Neumann, Viktor Leis, Alfons Kemper, Tobias Muehlbauer, Jan Finis
-
Patent number: 11055331Abstract: A method executes at a computer system to retrieve data from a database. Upon receiving a database query, the computer system translates the query into an intermediate representation, and estimates a compilation time to compile the intermediate representation into machine executable code. The query execution time to retrieve a result set is also estimated. In accordance with a determination that the query execution time and compilation time satisfy an interpretation criterion, the computer system invokes a byte code interpreter to interpret the intermediate representation and retrieve the result set from the database. In accordance with a determination that the query execution and compilation times satisfy one of a plurality of compilation criteria, the computer system compiles the intermediate representation to form machine code and executes the machine code to retrieve the result set from the database. In some cases, the query intermediate representation is optimized prior to compilation.Type: GrantFiled: September 8, 2017Date of Patent: July 6, 2021Assignee: TABLEAU SOFTWARE, INC.Inventors: Thomas Neumann, Viktor Leis, Alfons Kemper, Tobias Muehlbauer, Jan Finis