---
title: 前置条件
description: "- 本小节仅使用OmniOperator算子加速 UDF（用户自定义函数，User Defined Functions）功能才需要进行操作，当前的OmniOperator算子加速 UDF插件仅支持Simple UDF，用于执行基于Hive UDF框架编写的UDF函数。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/2200SPC5/bds/kunpengomniop_20_0048.html
sourcePath: /source/zh/kunpengboostkithistory/2200SPC5/bds/kunpengomniop_20_0048.html
indexId: 1548cb2ac793354d128232613f899c1a997ce81628deabac4b56c2f863af9f1f73
---
# 前置条件

- 本小节仅使用OmniOperator算子加速 UDF（用户自定义函数，User Defined Functions）功能才需要进行操作，当前的OmniOperator算子加速 UDF插件仅支持Simple UDF，用于执行基于Hive UDF框架编写的UDF函数。
- OmniOperator算子加速 UDF支持表达式行处理和批处理两种方式，两种方式可根据更改配置文件进行切换。


OmniOperator算子加速关于UDF的所需文件需用户提供相关JAR包和配置文件，形如udf.zip，conf.zip和udf.properties，其中udf.zip包含所有UDF的class文件，conf.zip包含UDF所依赖的配置文件，udf.properties是OmniOperator算子加速 UDF配置文件，以udfName1和udfName2函数为例，udf.properties内容格式如下：


1. 将上述相关压缩文件上传到管理节点和计算节点的“/opt/omni-operator/hive-udf”目录。

  a. 选中所有节点，单击“配置业务流”。
  b. 选择“自定义”，单击“下一步”
  c. 选择“文件传输”，单击“添加”。
  d. 编辑任务1~任务3的内容，单击“保存”。
**表1 任务1编辑参数内容**

| 参数 | 内容 |
| --- | --- |
| 任务名称 | 拷贝软件包udf.zip |
| 任务描述 | 拷贝udf.zip软件包到全部节点 |
| 传输方向 | 从本地传至远端主机 |
| 本地路径 | 本地安装包所在的目录 |
| 远端路径 | /opt/omni\-operator/hive\-udf |


**表2 任务2编辑参数内容**

| 参数 | 内容 |
| --- | --- |
| 任务名称 | 拷贝conf.zip软件包 |
| 任务描述 | 拷贝conf.zip软件包到全部节点 |
| 传输方向 | 从本地传至远端主机 |
| 本地路径 | 本地安装包所在的目录 |
| 远端路径 | /opt/omni\-operator/hive\-udf |


**表3 任务3编辑参数内容**

| 参数 | 内容 |
| --- | --- |
| 任务名称 | 拷贝udf.properties文件 |
| 任务描述 | 拷贝udf.properties文件到全部节点 |
| 传输方向 | 从本地传至远端主机 |
| 本地路径 | 本地安装包所在的目录 |
| 远端路径 | /opt/omni\-operator/hive\-udf |


2. 解压udf.zip、conf.zip并配置环境变量。

  a. 选择“命令执行”，单击“添加”。
  b. 编辑任务4~5内容，单击“保存”。
**表4 任务4编辑参数内容**

| 参数 | 内容 |
| --- | --- |
| 任务名称 | 解压udf.zip、conf.zip软件包 |
| 任务描述 | 解压udf.zip、conf.zip软件包 |
| 运行目录 | /opt/omni\-operator/hive\-udf |
| 执行命令 | unzip \-o udf.zip;rm \-f udf.zip;unzip \-o conf.zip;rm \-f conf.zip; |


**表5 任务5编辑参数内容**

| 参数 | 内容 |
| --- | --- |
| 任务名称 | 配置OmniOperator算子加速 UDF环境变量 |
| 任务描述 | 在所有节点配置OmniOperator算子加速 UDF环境变量 |
| 运行目录 | /opt/omni\-operator |
| 执行命令 | sed \-i '$a export LD\_LIBRARY\_PATH=${JAVA\_HOME}/jre/lib/aarch64/server/:$LD\_LIBRARY\_PATH' ~/.bashrc;source ~/.bashrc;sed \-i '$a export OMNI\_HOME=/opt/omni\-operator' ~/.bashrc;source ~/.bashrc; |


3. 导出业务流，保存至本地。后续其他节点需要安装OmniOperator算子加速时，可通过导入业务流，快速安装。

  a. 单击右上角的“导出”。
    弹出“选择模板保存路径”窗口。

  b. 将模板命名为“OmniOperator算子加速 UDF插件部署及配置WorkFlow”，单击“保存”。
4. 执行业务流。
  单击右下角的“完成”，选择“执行业务流”。执行状态成功即可。


上述udf.zip压缩包名称用户根据自己实际情况可进行自定义，本处仅提供示例。
