当前位置: 首页 > news >正文

软件系统开发平台漳州seo网站快速排名

软件系统开发平台,漳州seo网站快速排名,dw可以做有后台的网站么,注册企业邮箱免费当Hive提供的内置函数不能满足查询需求时,用户可以根据自己业务编写自定义函数(User Defined Functions, UDF), 然后在HiveQL中调用。 例如有这样一个需求:为了保护用户隐私,当查询数据的时候,需要将用户手机号的中间…

当Hive提供的内置函数不能满足查询需求时,用户可以根据自己业务编写自定义函数(User Defined Functions, UDF), 然后在HiveQL中调用。

例如有这样一个需求:为了保护用户隐私,当查询数据的时候,需要将用户手机号的中间四位用*号代替,比如手机号18001292688需要显示为180****2688。这时候就可以写一个自定义函数实现这个需求。

新建项目MyUDF,添加Maven依赖

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>org.example</groupId><artifactId>MyUDF</artifactId><version>1.0-SNAPSHOT</version><properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><hive.version>2.1.1-cdh6.1.0</hive.version></properties><dependencies><dependency><groupId>jdk.tools</groupId><artifactId>jdk.tools</artifactId><version>1.8</version><scope>system</scope><systemPath>${JAVA_HOME}/lib/tools.jar</systemPath></dependency><!--Hadoop common包--><!-- https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-common --><dependency><groupId>org.apache.hadoop</groupId><artifactId>hadoop-common</artifactId><version>2.10.2</version></dependency><!-- https://mvnrepository.com/artifact/org.apache.hive/hive-exec --><dependency><groupId>org.apache.hive</groupId><artifactId>hive-exec</artifactId><version>${hive.version}</version></dependency></dependencies><!--添加CDH的仓库--><repositories><repository><id>nexus-aliyun</id><url>http://maven.aliyun.com/nexus/content/groups/public</url></repository><repository><id>cloudera</id><url>https://repository.cloudera.com/artifactory/cloudera-repos</url></repository></repositories><build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.6.0</version><configuration><source>1.8</source><target>1.8</target><encoding>UTF-8</encoding></configuration></plugin></plugins></build></project>

新建类hive.demo.MyUDF

package hive.demo;
import org.apache.hadoop.hive.ql.exec.UDF;
import org.apache.hadoop.io.Text;/*** Hive自定义函数类*/
public class MyUDF extends UDF{/*** @param text* 调用函数时需要传入的参数* @return 隐藏后的手机号码* 自定义函数类需要一个名为evaluate()的方法,Hive将调用该方法*/public String evaluate(Text text){String result = "手机号码错误!";if(text != null && text.getLength() == 11){String inputStr = text.toString();StringBuffer sb = new StringBuffer();sb.append(inputStr.substring(0,3));sb.append("****");sb.append(inputStr.substring(7));result = sb.toString();}return result;}
}

 打包MyUDF.jar上传至路径,比如/home/hadoop/

在Hive CLI中执行

hive>add jar /home/hadoop/MyUDF.jar;

创建函数名称

CREATE TEMPORARY FUNCTION formatPhone AS 'hive.demo.MyUDF';

新建一个表测试一下这个自定义的函数

CREATE TABLE t_user(id INT, phone STRING);
INSERT INTO TABLE t_user 
SELECT 1, '13123567589'
UNION ALL SELECT 2, '15898705673'
UNION ALL SELECT 3, '18001292688';

http://www.mmbaike.com/news/284.html

相关文章:

  • 1024d wordpress安卓优化神器
  • 传统企业营销型网站建设软文代写兼职
  • 长沙多地发布最新通告seo宣传
  • 南宁网站制作计划市场营销咨询
  • 衡水网站建seo推广有哪些
  • 做简单网站需要学什么软件有哪些内容百度推广公司电话
  • 合肥市住房城乡建设委官方网站描述优化方法
  • 门头沟做网站南宁今日头条最新消息
  • 郑州网站模板哪里有南宁网站推广公司
  • 怎么提高网站访问量廊坊seo
  • 个人网站能干嘛友妙招链接
  • 中国材料信息网seo视频教程
  • 乐清小程序企业seo职位
  • 云南微网站建设的公司有哪些吸引人的微信软文范例
  • 盐城专业做网站的公司优秀软文范例
  • 电商网站建设目的女装标题优化关键词
  • dedecms蓝色企业网站模板哪里做网络推广好
  • 域名和网站的关系如何提高网站排名的方法
  • 官方网站内容可做证据吗做网站公司
  • 陕西营销型手机网站建设东莞整站优化
  • 我的世界大橙子做皮肤的网站网站建设网络推广seo
  • iis发布php网站深圳网络公司推广平台
  • 滨州公司网站建设推广如何制作一个网页
  • 想开个影视网站 那有做的上海百度推广开户
  • 轴承网站建设今日要闻 最新热点
  • 安徽电子学会网站建设基础建站如何提升和优化
  • 做网站搭建的公司谷歌三件套
  • 增加清晰度的网站绍兴seo排名外包
  • 专业网站建设公司地址中国体育新闻
  • 网站功能界面设计学企业管理培训班