00:00
那么接下来我们来实际操作一下啊,手动的自己创建一个udf函数,那就要具体的写代码了啊,打开咱们那个ID啊,新建一个M工程。来麦工程啊,不需要使用任何的一个模板,下一步然后给它取个组名叫com点艾微博,然后它的一个工程名叫have,我们就叫udf吧,OK,下一步好,Finish完成。那选择在当前窗口打开,因为后面的那个工程我们已经不需要了。创建一个工程之后,我们首先要做的是不是导入它的一个依赖啊。那依赖这地方文档里面已经给大家提供了,你只需要导入have它的一个操作,哎,这个包就OK了。来。保存一下,哎,这个时候他已经在导相应的依赖了,接下来我们创建一个类吧,创建一个类来写我们具体的一个代码。啊,你有一个class,我们那个那呢叫com点的硅谷点,Have。
01:06
Udf udf就叫这个类,下一步这个类我们之前分析的时候,它要继承一个什么。Have包下的一个udf函数对吧?导包的时候一定要注意,不要导错包了,确定。接下来我们是要写一个。函数,然后表明你这个U点自定义的udf函数要干哪些事情,这个地方我们就写一个。来来,大家看一下这个函数干了什么用啊?哎,对,它就是将我们输入一个字段啊,它让它变成小写的输出,但你一定要注意啊,它虽然没有什么override这个关这个标签,但是你一定要注意,它这个方法名是不能变换的,那有兴趣的同学可以自己试一下,你换一个方法名,看它到时候能不能,哎,创建成功,OK,那到这个地方呢,我们这个自定义的have这个函数就写完了啊,这个方法就写完了,接下来我们是不是打包扔到集群上啊。
02:13
OK,我们这个地方就用idea自带的一个打包工具啊。来咱们一般都会把这个小闪电给勾上,就表示跳过测试代码啊,当然就是咱们现在这个代码当中啊,你勾与不勾都无所谓,对吧,因为咱们没有任何的一个测试代码,但是习惯性你在公司当中做开发的时候啊,你都把这个小闪电给勾上啊,给勾上啊,走一下我们那个package,你点这个运行,或者说在package上双击都可以。哎,等待他这个打包完成。好,那这个时候你可以看到已经打包完成,接下来我们把这个打好的包拿出来吧,CTRLC我们先放到桌面,然后拖进我们那个集群里边。
03:00
那我们给了一个包,改个名字吧,就叫udf udf点价好。那么接下来我们把这个咱们刚才打好的包放到咱们集群上面,Outt加po CD到T。Model,然后对德斯下面,等会我们把这个包放到这个,对德斯下面,我们一直用的这个目录对吧,OK,把这个包拖进来。拖进来之后啊,咱们要进入这个have窗口。进入hi窗口之后,我们要干什么事?所以第一步我们是不是要把下包给它添加进来,第二步是创建咱们一个函数对吧,然后咱们才可以用咱们自定义的,哎,这个方法形成的这个函数,好,那我们来操作一下叫爱的这样,然后指明你炸包所在的地方吧,那我们这个路径呢,哎,你过来PWD粘一下吧,这个地方敲很容易敲错的。
04:00
OK,然后是udf,点这把它添加进来。分号OK,你看这边已经显示添加了一个什么。Udf的一个S吧,到咱们那个当前的一个目录当中,OK,那接下来其实就是到我们那个创建。函数吧,创建函数create。Temporarypoa。外temporary。方式,你要注意接下来是不是你取的一个函数名啊,MY我们取就叫my lower可以吧,就是咱们的一个卷小写的,但是你要注意啊,后面一定要跟着是来看一下跟着是你。相关联的。主类的名称是不是啊,要关联的主类名称,那我们就要去拿一下我们这个主类的一个全路径,哎,Copy reference。来,然后ASA咱们的刚才拿过来的这个全路径类的全类名好走一下。
05:07
这边显示已经创建成功了啊,创建成功了,好,然后接下来我们用一下咱们这个函数吧,我们EP那张表里边in name是不是全是大写的呀,那我们通过咱们这个函数啊,让这个姓名啊全部变成小写来试一下来。Select。My lower,哎,这个函数。然后把我们的e name传进去,然后from EP这张表吧,OK,走一下看它能不能,哎,实现咱们这个大写转小写的一个功能,走。那么此时可以看到结果,是不是将我们的姓名全部转化成了小写啊?这就是咱们整个自定义函数的一个过程,你先要继承它have当中的一个什么函数啊?Udf这个类对吧,然后你实现的那个方法一定是确定的名字,有新的同学可以改个名字,创建一下一个函数,你看你创建的函数能不能用。
06:06
好不好,OK,之后是你要切记的是,你要想你创建的这个函数啊,能自己用,你一定要把你刚才写的代码形成的价包是不是添加到你have的路径下。对吧,之后你才能创建咱们的一个。Have当中的一个函数啊,后面就跟着你可以相应的去使用你自己的一个函数。这是整个创建自定义函数的一个全过程。
我来说两句