Advertisement

Presto Functions(开发)

阅读量:

文章结构概览

  • Function注册
    • 窗口函数

      • 示例函数SumByFunction实现
      • 函数注册
    • 聚合函数

      • 示例函数AverageAggregations实现
      • 函数注册
    • 标量函数

      • 示例函数ArrayDistinctFunction实现
      • 函数注册

本文将对Presto Functions的开发流程进行系统阐述,从函数的注册阶段到具体功能的实现过程均会进行详尽说明。需要特别指出的是,与Hive UDF具备的动态加载特性不同,Presto Functions并不支持此类操作。

Function注册机制设计

Function的注册过程由FunctionAndTypeManager负责执行,该操作在MetadataManager的构造函数中被触发,此时会创建FunctionAndTypeManager的实例。随后,在FunctionAndTypeManager的构造函数内部,将生成一个FunctionNamespaceManager的新实例,而BuiltInTypeAndFunctionNamespaceManager作为其具体实现之一,会在自身的构造函数中完成对当前Presto系统内所有Functions的注册工作。

复制代码
    ConnectorM

全部评论 (0)

还没有任何评论哟~