[
https://issues.apache.org/jira/browse/FLINK-29717?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Xintong Song updated FLINK-29717:
---------------------------------
Fix Version/s: 1.18.0
(was: 1.17.0)
> Supports hive udaf such as sum/count by native implementation
> ---------------------------------------------------------------
>
> Key: FLINK-29717
> URL: https://issues.apache.org/jira/browse/FLINK-29717
> Project: Flink
> Issue Type: Improvement
> Components: Connectors / Hive, Table SQL / Runtime
> Reporter: dalongliu
> Priority: Major
> Fix For: 1.18.0
>
>
> The current Flink side of the Hive UDAF has a unified encapsulation
> HiveGenericUDAF, and the intermediate result type of the aggregation function
> is encapsulated as RAW type, which is a variable-length data type that is
> serialized and deserialized by default using the Kryo serializer, so
> BinaryRowData does not support in-place updates to this type, which also
> leads to aggregation function that uses the RAW type as an intermediate
> aggregation buffer and cannot use hash-based aggregation strategies. Since
> the intermediate state type of Hive's UDAF is RAW type, it also cannot use
> hash-based aggregation strategy, and the overall performance in TPC-DS
> scenario is more than 2 times than the performance of Flink's built-in
> function. After some research, here we propose implementing this common udaf
> in a native way.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)