[译]介绍Spark2.4的用于处理复杂数据类型的新内置函数与高阶函数
[译]介绍Spark2.4的用于处理复杂数据类型的新内置函数与高阶函数
本文翻译自databricks的介绍spark2.4新特性的blog,英文原文参考原文链接
Apache Spark2.4总共支持了29个用于处理复杂数据类型(比如,数组类型等)的新内置函数和高阶函数。
在Spark2.4版本之前,有两种典型的方式处理复杂数据类型:
- 将嵌套结构的数据转化为多行数据,然后使用函数处理,最后再组装成嵌套结构。
- 自己构建一个UDF。
和之前不同,新的内置函数可以直接操作复杂数据类型,同时新的高阶函数可以使用匿名的lambda函数处理复杂数据类型,和UDF类似,但是性能大大提高。
在本篇文章,我们将通过一些示例展示部分内置函数以及它们的具体用法。
典型的处理方式
我们首先来看一下Spark2.4以前典型的处理方式。