docker parquet error中的Spark未find预定义的模式

我有一个基于https://github.com/gettyimages/docker-spark的本地火花testing集群,其中包括R.特别是,这个图像被使用: https : //hub.docker.com/r/possibly/spark/

尝试使用sparkR读取parquet文件时,会发生此exception。 读取地板文件在本地火花设备上没有任何问题。

myData.parquet <- read.parquet(sqlContext, "/mappedFolder/myFile.parquet") 16/03/29 20:36:02 ERROR RBackendHandler: parquet on 4 failed Fehler in invokeJava(isStatic = FALSE, objId$id, methodName, ...) : java.lang.AssertionError: assertion failed: No predefined schema found, and no Parquet data files or summary files found under file:/mappedFolder/myFile.parquet. at scala.Predef$.assert(Predef.scala:179) at org.apache.spark.sql.execution.datasources.parquet.ParquetRelation$MetadataCache.org$apache$spark$sql$execution$datasources$parquet$ParquetRelation$MetadataCache$$readSchema(ParquetRelation.scala:512) at org.apache.spark.sql.execution.datasources.parquet.ParquetRelation$MetadataCache$$anonfun$12.apply(ParquetRelation.scala:421) at org.apache.spark.sql.execution.datasources.parquet.ParquetRelation$MetadataCache$$anonfun$12.apply(ParquetRelation.scala:421) at scala.Option.orElse(Option.scala:257) at org.apache.spark.sql.execution.datasources.parquet.ParquetRelation$MetadataCache.refresh(ParquetRelation.scala:421) at org.apache.spark.sql.execution.datasources.parquet.ParquetRelation.org$apache$spark$sql$execution$datasources$parquet$ParquetRelation$$metadataCac 

奇怪的是相同的错误是相同的 – 即使是不存在的文件。

但在terminal,我可以看到文件在那里:

  /mappedFolder/myFile.parquet root@worker:/mappedFolder/myFile.parquet# ls _common_metadata part-r-00097-e5221f6f-e125-4f52-9f6d-4f38485787b3.gz.parquet part-r-00196-e5221f6f-e125-4f52-9f6d-4f38485787b3.gz.parquet .... 

在我的dockerized spark的testing运行期间,我最初的parquet文件似乎已经损坏。

解决方法:从原始来源重新创build镶木地板文件