Rumah  >  Artikel  >  hive内置函数是什么

hive内置函数是什么

coldplay.xixi
coldplay.xixiasal
2021-02-26 12:02:014159semak imbas

hive内置函数:1、用户自定义函数对数据进行处理;2、用来解决输入一行输出多行【(On-to-many maping)】的需求;3、用户自定义聚合函数,操作多个数据行,产生一个数据行。

hive内置函数是什么

本文操作环境:Windows7系统,Dell G3电脑。

hive内置函数:

定义:

UDF(User-Defined-Function),用户自定义函数对数据进行处理。

UDTF(User-Defined Table-Generating Functions) 用来解决 输入一行输出多行(On-to-many maping) 的需求。

UDAF(User Defined Aggregation Function)用户自定义聚合函数,操作多个数据行,产生一个数据行。

用法:

  1、UDF函数可以直接应用于select语句,对查询结构做格式化处理后,再输出内容。

  2、编写UDF函数的时候需要注意一下几点:

a)自定义UDF需要继承org.apache.hadoop.hive.ql.UDF

b)需要实现evaluate函。

c)evaluate函数支持重载。

hive的本地模式:

  大多数的Hadoop job是需要hadoop提供的完整的可扩展性来处理大数据的。不过,有时hive的输入数据量是非常小的。在这种情况下,为查询出发执行任务的时间消耗可能会比实际job的执行时间要多的多。对于大多数这种情况,hive可以通过本地模式在单台机器上处理所有的任务。对于小数据集,执行时间会明显被缩短。

  如此一来,对数据量比较小的操作,就可以在本地执行,这样要比提交任务到集群执行效率要快很多。

  配置如下参数,可以开启Hive的本地模式:

hive> set hive.exec.mode.local.auto=true;(默认为false)

e72b488e67ebd32e6765c504ae5a3f3.png

当一个job满足如下条件才能真正使用本地模式:

    1.job的输入数据大小必须小于参数:hive.exec.mode.local.auto.inputbytes.max(默认128MB)

    2.job的map数必须小于参数:hive.exec.mode.local.auto.tasks.max(默认4)

    3.job的reduce数必须为0或者1

相关免费学习推荐:php编程(视频)

Atas ialah kandungan terperinci hive内置函数是什么. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:cebx文件用什么可以打开Artikel seterusnya:php市场为什么下滑严重