-
公开(公告)号:US11556532B2
公开(公告)日:2023-01-17
申请号:US16366176
申请日:2019-03-27
申请人: SAP SE
IPC分类号: G06F16/2453 , G06F16/22 , G06F16/23
摘要: 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.
-
公开(公告)号:US20160350394A1
公开(公告)日:2016-12-01
申请号:US14726251
申请日:2015-05-29
申请人: SAP SE
发明人: Gordon Gaumnitz , Arnaud Lacurie , Ingo Mueller , Jonathan Dees
IPC分类号: G06F17/30
CPC分类号: G06F17/30598 , G06F17/3033 , G06F17/30339 , G06F17/30377 , G06F17/30442 , G06F17/30489 , G06F17/30584
摘要: 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.
摘要翻译: 使用即时汇编可编译代码来响应数据库查询将输入汇总到散列表中。 可以生成可编译代码,该代码被配置为使可编程处理器基于输入数据库产生一个或多个哈希图。 一个或多个hashmaps可以对应于来自输入的每个单独的线程。 可编译代码可以配置为使一个或多个处理器将hashmaps插入调度程序。 可以生成可编译代码,其被配置为:将元素从一个或多个hashmaps聚合到具有相同分区标识的元素的桶中; 重新分配具有相同分区身份的元素桶以减少桶内的组数; 便于将所有非空元素从每个目标分区合并成合并分区。
-
公开(公告)号:US20200311075A1
公开(公告)日:2020-10-01
申请号:US16366176
申请日:2019-03-27
申请人: SAP SE
IPC分类号: G06F16/2453 , G06F16/22 , G06F16/23
摘要: 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.
-
公开(公告)号:US20170228319A1
公开(公告)日:2017-08-10
申请号:US15040501
申请日:2016-02-10
申请人: SAP SE
发明人: Ingo MUELLER , Arnaud Lacurie
CPC分类号: G06F17/3048 , G06F12/023 , G06F12/1018 , G06F17/3033 , G06F17/30528 , G06F17/30554 , G06F17/30584
摘要: 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.
-
公开(公告)号:US10713150B1
公开(公告)日:2020-07-14
申请号:US16375272
申请日:2019-04-04
申请人: SAP SE
发明人: Dennis Felsing , Arnaud Lacurie , Till Merker
摘要: 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.
-
公开(公告)号:US10114866B2
公开(公告)日:2018-10-30
申请号:US15040501
申请日:2016-02-10
申请人: SAP SE
发明人: Ingo Mueller , Arnaud Lacurie
IPC分类号: G06F17/30 , G06F12/0895 , G06F12/0864 , G06F12/02 , G06F12/1018
摘要: 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.
-
公开(公告)号:US10055480B2
公开(公告)日:2018-08-21
申请号:US14726251
申请日:2015-05-29
申请人: SAP SE
发明人: Gordon Gaumnitz , Arnaud Lacurie , Ingo Mueller , Jonathan Dees
IPC分类号: G06F17/30
CPC分类号: G06F16/285 , G06F16/2255 , G06F16/2282 , G06F16/2379 , G06F16/2453 , G06F16/24556 , G06F16/278
摘要: 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.
-
公开(公告)号:US11157491B2
公开(公告)日:2021-10-26
申请号:US16164682
申请日:2018-10-18
申请人: SAP SE
发明人: Nicolas Meyer , Yann Colina , Maik Goergens , Arnaud Lacurie , Srdan Stipic
IPC分类号: G06F16/242 , G06F8/41
摘要: 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.
-
公开(公告)号:US10127281B2
公开(公告)日:2018-11-13
申请号:US15016978
申请日:2016-02-05
申请人: SAP SE
发明人: Ingo Mueller , Arnaud Lacurie
IPC分类号: G06F17/30 , G06F12/0895 , G06F12/0864 , G06F12/02 , G06F12/1018
摘要: 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.
-
公开(公告)号:US20170228373A1
公开(公告)日:2017-08-10
申请号:US15016978
申请日:2016-02-05
申请人: SAP SE
发明人: Ingo Mueller , Arnaud Lacurie
CPC分类号: G06F17/3048 , G06F12/023 , G06F12/0864 , G06F12/0895 , G06F12/1018 , G06F17/3033 , G06F17/30528 , G06F17/30554 , G06F17/30584 , G06F2212/604
摘要: 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.
-
-
-
-
-
-
-
-
-