Ответ 1
Spark 2.0 +:
SPARK-10605 ввел встроенную реализацию collect_list
и collect_set
. SparkSession
с поддержкой Hive или HiveContext
больше не требуется.
Spark 2.0-SNAPSHOT (до 2016-05-03):
Вам нужно включить поддержку Hive для данного SparkSession
:
В Scala:
val spark = SparkSession.builder
.master("local")
.appName("testing")
.enableHiveSupport() // <- enable Hive support.
.getOrCreate()
В Python:
spark = (SparkSession.builder
.enableHiveSupport()
.getOrCreate())
Spark & lt; 2.0:
Чтобы использовать UUF для Hive (см. https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF), вы используете Spark, построенный с поддержкой Hive (это уже распространяется, когда вы используйте предварительно созданные двоичные файлы, что, как представляется, здесь) и инициализируйте SparkContext
с помощью HiveContext
.
В Scala:
import org.apache.spark.sql.hive.HiveContext
import org.apache.spark.sql.SQLContext
val sqlContext: SQLContext = new HiveContext(sc)
В Python:
from pyspark.sql import HiveContext
sqlContext = HiveContext(sc)