有很好的例子可以使用它,就像这里一样,但是在火花壳上" ...createDF不是org.apache.spark.sql.SparkSession"的成员。
PS:使用 Spark v2.2。
编辑:对不起,这是一个外部库。问题变化不大:如何在Spark-shell会话中导入Github库?
createDF(( 不是 SparkSession 方法。这是火花达里亚方法。您需要安装依赖项并导入 spark-daria 库,您应该能够使用它。 以下文章供您参考。
https://medium.com/@mrpowers/manually-creating-spark-dataframes-b14dae906393
如何在 Spark-shell 会话中导入 Github 库?
您可以将此别名与properties-file
值中的相应">etc"一起使用。
alias sshell_daria='export SPARK_MAJOR_VERSION=2; spark-shell --packages mrpowers:spark-daria:0.35.0-s_2.11 --properties-file /opt/_etc_/_etc2_/conf/sparkShell.conf'
但是,它并不总是正常工作,在此消息之后,Spark-shell 停止工作
SPARK_MAJOR_VERSION is set to 2, using Spark2
Ivy Default Cache set to: /home/_etc_/.ivy2/cache
The jars for the packages stored in: /home/_etc_/.ivy2/jars
:: loading settings :: url = jar:file:/usr/hdp/2.6.4.0-91/spark2/jars/ivy-2.4.0.jar!/org/apache/ivy/core/settings/ivysettings.mrpowers#spark-daria added as a dependency
:: resolving dependencies :: org.apache.spark#spark-submit-parent;1.0
confs: [default]
您可以在 dl.bintray.com 下载当前版本作为jar文件,--jars
选项而不是packages
。因此,在这种情况下,正确的别名是
alias sshell_daria='export SPARK_MAJOR_VERSION=2; spark-shell --jars _your_path_/spark-daria-0.35.0-s_2.12.jar --properties-file /opt/_etc_/_etc2_/conf/sparkShell.conf'