Spark sql で array_to_stringを自作する
やり方意外と簡単でした。
参考したページは
Using SparkSQL UDFs to Create Date Times in Spark 1.5
scala> import org.apache.spark.sql.functions.udf
scala> def arrayToString(array:Seq[String],separator:String) = array.mkString(separator)
scala> sqlContext.udf.register("array_to_string", arrayToString(_:Seq[String],_:String))
scala> sqlContext.sql("select array_to_string(array('aaa','bbb'),'@') x").collect.foreach(println)
[aaa@bbb]
ちゃんと動いた