
# 配置Hive Transform功能开关
#### 操作场景
Hive的Transform功能允许用户在Hive查询中嵌入外部脚本（如Python、Java等），对数据进行复杂的转换和处理。这使得用户能够执行无法通过标准Hive函数实现的自定义数据处理逻辑。Transform操作将数据传递给外部脚本进行处理，然后将处理后的结果返回给Hive，从而实现数据的清洗、转换、丰富等操作。这一功能扩展了Hive的能力，满足了更复杂的ETL需求。
Hive开源社区版本禁用Transform功能。MRS Hive提供配置开关，集群已启用Kerberos认证（安全模式）默认为禁用Transform功能，与开源社区版本保持一致。用户可修改配置开关，开启Transform功能，当开启Transform功能时，存在一定的安全风险，请谨慎使用。
#### 约束与限制
集群未启用Kerberos认证（普通模式）默认允许执行Transform功能，不支持该章节操作；但Hive开启Ranger鉴权后默认禁用Transform功能，支持按照该章节操作开启或禁用Transform功能。
#### 操作步骤
1. 登录FusionInsight Manager，选择"集群 \> 服务 \> Hive \> 配置 \> 全部配置"。 
   ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001724746869.png "点击放大")
   
   
2. 修改或新增"hive.security.transform.disallow"参数。 
   - 集群已启用Kerberos认证（安全模式） 在搜索框中搜索"hive.security.transform.disallow"，修改参数值为"true"或"false"，修改后保存配置并重启所有HiveServer实例。
     
   
   - 集群未启用Kerberos认证（普通模式）且Hive启用了Ranger鉴权 在左侧导航栏选择"HiveServer（角色） \> 自定义"，对参数文件"hivemetastore-site.xml"添加自定义参数，设置"名称"为"hive.security.transform.disallow"，"值"为"true"或"false"，修改后保存配置并重启所有HiveServer实例。
     
   
   
   ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/public_sys-resources/note_3.0-zh-cn.png)
   - "hive.security.transform.disallow"参数值为"true"时，禁用Transform功能，与开源社区版本保持一致。
   
   - "hive.security.transform.disallow"参数值为"false"时，开启Transform功能，存在一定的安全风险。
    
   
   
 
