noo*_*man 2 pyspark spark-avro
我正在尝试在pyspark中读取avro文件.从如何阅读PySpark中的Avro文件中发现,spark-avro是最好的方法,但是我无法弄清楚如何从他们的Github repo中安装它.没有可下载的jar,我自己构建它吗?怎么样?
它是在群集上运行的Spark 1.6(pyspark).我没有设置它所以不太了解配置,但我有sudo访问权限所以我想我应该能够安装东西.但该机器没有直接的互联网访问权限,因此需要手动复制和安装内容.
谢谢.
您可以spark-avro在运行时添加为包,pyspark或者spark-submit:https://github.com/databricks/spark-avro#with-spark-shell-or-spark-submit但这将需要在驱动程序上访问Internet(驱动程序将分发所有文件致遗嘱执行人).
如果你没有驱动程序的互联网访问权限,你需要建立spark-avro自己的胖罐:
git clone https://github.com/databricks/spark-avro.git
cd spark-avro
# If you are using spark package other than newest,
# checkout appropriate tag based on table in spark-avro README,
# for example for spark 1.6:
# git checkout v2.0.1
./build/sbt assembly
Run Code Online (Sandbox Code Playgroud)
然后使用pyspark shell测试它:
./bin/pyspark --jars ~/git/spark-avro/target/scala-2.11/spark-avro-assembly-3.1.0-SNAPSHOT.jar
>>> spark.range(10).write.format("com.databricks.spark.avro").save("/tmp/output")
>>> spark.read.format("com.databricks.spark.avro").load("/tmp/output").show()
+---+
| id|
+---+
| 7|
| 8|
| 9|
| 2|
| 3|
| 4|
| 0|
| 1|
| 5|
| 6|
+---+
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4039 次 |
| 最近记录: |