Patents by Inventor Arnaud Lacurie
Arnaud Lacurie 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: 11556532Abstract: A method may include inserting, into a hash trie, data records from a database table. The inserting may include traversing the hash trie to identify, for each data record included in the database table, a corresponding node at which to insert the data record. The hash trie may be traversed based on a hash of a key value associated with each data record. The node at which to insert a data record may be identified based on an offset forming a binary representation of the hash of a key value associated with that data record. The offset may include a portion of a plurality of binary digits forming the binary representation. A data record may be inserted at a corresponding node by updating a data structure included at the node. A database operation may be performed based on the hash trie filled with the data records from the database table.Type: GrantFiled: March 27, 2019Date of Patent: January 17, 2023Assignee: SAP SEInventors: Nico Bohnsack, Dennis Felsing, Arnaud Lacurie, Wolfgang Stephan
-
Patent number: 11157491Abstract: Disclosed embodiments include generating code from a database query and providing a framework to develop complex data structures and the functions that access those data structures outside of the generated code to access the complex data structures. These data structure functions can be precompiled in order to save compilation time at query runtime, and linked to the generated code in a way that the framework can still inline function calls and apply various optimizations on the linked code.Type: GrantFiled: October 18, 2018Date of Patent: October 26, 2021Assignee: SAP SEInventors: Nicolas Meyer, Yann Colina, Maik Goergens, Arnaud Lacurie, Srdan Stipic
-
Publication number: 20200311075Abstract: A method may include inserting, into a hash trie, data records from a database table. The inserting may include traversing the hash trie to identify, for each data record included in the database table, a corresponding node at which to insert the data record. The hash trie may be traversed based on a hash of a key value associated with each data record. The node at which to insert a data record may be identified based on an offset forming a binary representation of the hash of a key value associated with that data record. The offset may include a portion of a plurality of binary digits forming the binary representation. A data record may be inserted at a corresponding node by updating a data structure included at the node. A database operation may be performed based on the hash trie filled with the data records from the database table.Type: ApplicationFiled: March 27, 2019Publication date: October 1, 2020Inventors: Nico Bohnsack, Dennis Felsing, Arnaud Lacurie, Wolfgang Stephan
-
Patent number: 10713150Abstract: A method for measuring code coverage of runtime generated code is provided that can be used for unit testing. In some implementations, the method may include performing unit testing of one or more lines of code of an application by at least: executing during runtime the one or more lines of code, generating, from the executed one or more lines of code, additional code including generated code including instructions to increment at least one counter in a map, the map mapping one or more frames to the at least one counter, compiling the generated code, incrementing, each time the compiled generated code is executed during runtime, the at least one counter in the map, and providing the at least one counter to enable verification of the unit testing of the generated code. Related methods and articles of manufacture are also described.Type: GrantFiled: April 4, 2019Date of Patent: July 14, 2020Assignee: SAP SEInventors: Dennis Felsing, Arnaud Lacurie, Till Merker
-
Publication number: 20200125561Abstract: Disclosed embodiments include generating code from a database query and providing a framework to develop complex data structures and the functions that access those data structures outside of the generated code to access the complex data structures. These data structure functions can be precompiled in order to save compilation time at query runtime, and linked to the generated code in a way that the framework can still inline function calls and apply various optimizations on the linked code.Type: ApplicationFiled: October 18, 2018Publication date: April 23, 2020Inventors: Nicolas Meyer, Yann Colina, Maik Goergens, Arnaud Lacurie, Srdan Stipic
-
Patent number: 10127281Abstract: Disclosed herein are system, method, and computer program product embodiments for database aggregation optimization. An embodiment operates by receiving data from a main memory. Within a cache, a first hash table comprising an aggregate hash of a first portion of the data is generated. A second portion of data is partitioned into one or more of partitions. Within the cache, one or more intermediate hash tables are generated. A first hash table is aggregated based on the one or more intermediate hash tables. At least a portion of the data of the final hash table is provided responsive to a query.Type: GrantFiled: February 5, 2016Date of Patent: November 13, 2018Assignee: SAP SEInventors: Ingo Mueller, Arnaud Lacurie
-
Patent number: 10114866Abstract: Disclosed herein are system, method, and computer program product embodiments for constraining the amount of memory used during data aggregation. An embodiment operates by separating input data into a plurality of partitions. The embodiment then inserts portions of the input data into blocks from a free list at a given level of a pipeline. The embodiment then inserts the blocks into buffers for processing at a subsequent level of the pipeline. The embodiment processes the inserted blocks at the subsequent level of the pipeline and concatenates the intermediate results into a final aggregate result.Type: GrantFiled: February 10, 2016Date of Patent: October 30, 2018Assignee: SAP SEInventors: Ingo Mueller, Arnaud Lacurie
-
Patent number: 10055480Abstract: Aggregating input into hashtables using just-in-time compilation of compilable code in response to a database query. Compilable code can be generated that is configured to cause a programmable processor to produce one or more hashmaps based on the input database. The one or more hashmaps can correspond to each individual thread from the input. The compilable code can be configured to cause the one or more processors to insert the hashmaps into a scheduler. Compilable code can be generated that is configured to: aggregate elements from the one or more hashmaps into buckets of elements having the same partition identity; rehash the buckets of elements having the same partition identity to reduce the number of groups within the bucket; facilitate the merger of all non-empty elements from each target-partition into a merged-partition.Type: GrantFiled: May 29, 2015Date of Patent: August 21, 2018Assignee: SAP SEInventors: Gordon Gaumnitz, Arnaud Lacurie, Ingo Mueller, Jonathan Dees
-
Publication number: 20170228373Abstract: Disclosed herein are system, method, and computer program product embodiments for database aggregation optimization. An embodiment operates by receiving data from a main memory. Within a cache, a first hash table comprising an aggregate hash of a first portion of the data is generated. A second portion of data is partitioned into one or more of partitions. Within the cache, one or more intermediate hash tables are generated. A first hash table is aggregated based on the one or more intermediate hash tables. At least a portion of the data of the final hash table is provided responsive to a query.Type: ApplicationFiled: February 5, 2016Publication date: August 10, 2017Inventors: Ingo Mueller, Arnaud Lacurie
-
Publication number: 20170228319Abstract: Disclosed herein are system, method, and computer program product embodiments for constraining the amount of memory used during data aggregation. An embodiment operates by separating input data into a plurality of partitions. The embodiment then inserts portions of the input data into blocks from a free list at a given level of a pipeline. The embodiment then inserts the blocks into buffers for processing at a subsequent level of the pipeline. The embodiment processes the inserted blocks at the subsequent level of the pipeline and concatenates the intermediate results into a final aggregate result.Type: ApplicationFiled: February 10, 2016Publication date: August 10, 2017Inventors: Ingo MUELLER, Arnaud Lacurie
-
Publication number: 20160350394Abstract: Aggregating input into hashtables using just-in-time compilation of compilable code in response to a database query. Compilable code can be generated that is configured to cause a programmable processor to produce one or more hashmaps based on the input database. The one or more hashmaps can correspond to each individual thread from the input. The compilable code can be configured to cause the one or more processors to insert the hashmaps into a scheduler. Compilable code can be generated that is configured to: aggregate elements from the one or more hashmaps into buckets of elements having the same partition identity; rehash the buckets of elements having the same partition identity to reduce the number of groups within the bucket; facilitate the merger of all non-empty elements from each target-partition into a merged-partition.Type: ApplicationFiled: May 29, 2015Publication date: December 1, 2016Inventors: Gordon Gaumnitz, Arnaud Lacurie, Ingo Mueller, Jonathan Dees