CDH6.2版本 HiveUDF 应用测试说明

简介: CDH6.2版本 HiveUDF 应用测试说明

HiveUDF是hive自定义函数,可以应用hiveSQL中。
本文通过java编写了距离查询函数getDistane,传参2个参数(城市地址),通过调用高德地图的api查询两地之间的距离。

编写UDF函数

1.png

将程序打包成getDistance.jar包

注意:
1、 编写的类必须继承org.apache.hadoop.hive.ql.exec.UDF类
2、 业务函数必须为public 权限,且函数名称必须为evaluate

通过hue将jar包上传至hdfs

1、 使用hdfs用户登录至hue
2、 将jar上传至根目录

2.png

通过hue将jar包内的函数注册至hive

使用hiveSql命令注册函数

命令格式:Create function [function_name] as [‘function_class’] using jar [‘jar_path’]

注册函数名称为:getDistance,jar包的class为:com.my.GetDistance,jar包的路径为hdfs:///getDistance.jar

1.    create function getDistance as 'com.my.GetDistance' using jar 'hdfs:///getDistance.jar';  

3.png

刷新函数库

注册成功后,刷新函数库

1.    reload function  

4.png

注:删除自定义函数命令
drop function [function_name]
reload function

验证函数

由于本实例需要调用高德地图api,需要连接外网
1、 配置虚拟机node1,使其能连接外网
修改 /etc/sysconfig/network-scripts/ifcfg-ens33文件,将BOOTPROTO=static改为BOOTPROTO=dhcp,修改后如下图:

5.png

重启网络服务 systemctl restart network

2、 执行hiveSql语句验证函数执行结果

查询北京至上海的距离

1.    select concat(getDistance('北京','上海'),'KM') as distance  

6.png

结果:1211KM,执行成功

目录
相关文章
|
1月前
|
Java 测试技术 数据安全/隐私保护
软件测试中的自动化策略与工具应用
在软件开发的快速迭代中,自动化测试以其高效、稳定的特点成为了质量保证的重要手段。本文将深入探讨自动化测试的核心概念、常见工具的应用,以及如何设计有效的自动化测试策略,旨在为读者提供一套完整的自动化测试解决方案,帮助团队提升测试效率和软件质量。
|
2月前
|
jenkins 测试技术 持续交付
探索自动化测试在持续集成中的应用与挑战
本文深入探讨了自动化测试在现代软件开发流程,特别是持续集成(CI)环境中的关键作用。通过分析自动化测试的优势、实施策略以及面临的主要挑战,旨在为开发团队提供实用的指导和建议。文章不仅概述了自动化测试的基本原理和最佳实践,还详细讨论了如何克服实施过程中遇到的技术难题和管理障碍,以实现更高效、更可靠的软件交付。
|
2月前
|
机器学习/深度学习 人工智能 测试技术
探索自动化测试框架在软件开发中的应用与挑战##
本文将深入探讨自动化测试框架在现代软件开发过程中的应用,分析其优势与面临的挑战。通过具体案例分析,揭示如何有效整合自动化测试以提升软件质量和开发效率。 ##
|
2月前
|
并行计算 算法 测试技术
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面,旨在通过综合策略提升程序性能,满足实际需求。
82 1
|
2月前
|
敏捷开发 监控 jenkins
探索自动化测试框架在敏捷开发中的应用与优化##
本文深入探讨了自动化测试框架在现代敏捷软件开发流程中的关键作用,分析了其面临的挑战及优化策略。通过对比传统测试方法,阐述了自动化测试如何加速软件迭代周期,提升产品质量,并针对实施过程中的常见问题提出了解决方案。旨在为读者提供一套高效、可扩展的自动化测试实践指南。 ##
58 9
|
2月前
|
监控 安全 测试技术
如何在实际项目中应用Python Web开发的安全测试知识?
如何在实际项目中应用Python Web开发的安全测试知识?
43 4
|
2月前
|
监控 JavaScript 前端开发
如何在实际应用中测试和比较React和Vue的性能?
总之,通过多种方法的综合运用,可以相对客观地比较 React 和 Vue 在实际应用中的性能表现,为项目的选择和优化提供有力的依据。
51 1
|
2月前
|
自然语言处理 安全 测试技术
基于大模型的应用的测试的一些注意事项
大模型应用测试需注意三大冲突:时间敏感性冲突,即模型数据可能随时间变得过时;数据真实性冲突,指训练数据中可能存在虚假信息,影响模型准确性;数据一致性冲突,表现为模型对语义相同但句法不同的输入反应不一。测试时应针对这些问题设计用例,确保模型性能。
99 4
|
2月前
|
Java 测试技术 API
软件测试中的自动化测试框架选择与应用##
在快速迭代的软件开发周期中,选择合适的自动化测试框架对于提高软件质量和开发效率至关重要。本文探讨了当前流行的几种自动化测试框架的特点和适用场景,旨在为软件开发团队提供决策依据。 ##
|
2月前
|
机器学习/深度学习 人工智能 安全
探索AI在软件工程中的最新应用:自动化测试与代码审查
探索AI在软件工程中的最新应用:自动化测试与代码审查

热门文章

最新文章