如何在sparksql中实现sql功能,如存储过程或函数?
我知道hbase中的hpl sql和协处理器。但是想知道是否有类似的东西可以在火花中使用。
答案 0 :(得分:1)
您可以考虑使用User Defined Function和内置函数
一个简单的例子
;
<强>结果强>
val dataset = Seq((0, "hello"), (1, "world")).toDF("id", "text")
val upper: String => String = _.toUpperCase
import org.apache.spark.sql.functions.udf
val upperUDF = udf(upper)
// Apply the UDF to change the source dataset
scala> dataset.withColumn("upper", upperUDF('text)).show
答案 1 :(得分:0)
我们无法在SparkSql中创建SP /功能。但是,最好的方法是像CTE一样创建一个临时表,并将这些表用于进一步使用。或者,您可以在Spark中创建UDF函数。