Python spark-未定义架构,在下未找到拼花数据文件或摘要文件
首先我开始Python spark-未定义架构,在下未找到拼花数据文件或摘要文件,python,jdbc,apache-spark,Python,Jdbc,Apache Spark,首先我开始 $SPARK_HOME/bin/pyspark 然后写下这个代码 sqlContext.load("jdbc", url="jdbc:mysql://IP:3306/test", driver="com.mysql.jdbc.Driver", dbtable="test.test_tb") 当我只写dbtable=“test\u db”时,错误是相同的。 发生此错误后 py4j.protocol.Py4JJavaError:调用o66.load时出错。 :java.lang.As
$SPARK_HOME/bin/pyspark
然后写下这个代码
sqlContext.load("jdbc", url="jdbc:mysql://IP:3306/test", driver="com.mysql.jdbc.Driver", dbtable="test.test_tb")
当我只写dbtable=“test\u db”时,错误是相同的。
发生此错误后
py4j.protocol.Py4JJavaError:调用o66.load时出错。
:java.lang.AssertionError:断言失败:未定义架构,在下未找到拼花数据文件或摘要文件。
位于scala.Predef$.assert(Predef.scala:179)
位于org.apache.spark.sql.parquet.ParquetRelation2$MetadataCache.org$apache$spark$sql$parquet$ParquetRelation2$MetadataCache$$readSchema(newParquet.scala:429)
为什么会发生此错误??
我想知道并解决这个问题
谢谢。我不知道这个错误的原因,但我偶然发现了它,然后找到了一种方法使同样的事情也能工作 试试这个:
df = sqlContext.read.format("jdbc").options(url="jdbc:mysql://server/table?user=usr&password=secret", dbtable="table_name").load()
我认为.load
语法不再有效,或者不适用于jdbc。希望它能起作用
顺便说一下,我用以下命令启动了控制台:
SPARK_CLASSPATH=~/progs/postgresql-9.4-1205.jdbc42.jar pyspark
我的数据库在postgres中,因此我下载了带有jdbc的jar,并按照文档中的建议将其添加到我的类路径中。
我不知道这个错误的原因,但我偶然发现了它,然后找到了一种方法使同样的事情工作 试试这个:
df = sqlContext.read.format("jdbc").options(url="jdbc:mysql://server/table?user=usr&password=secret", dbtable="table_name").load()
我认为.load
语法不再有效,或者不适用于jdbc。希望它能起作用
顺便说一下,我用以下命令启动了控制台:
SPARK_CLASSPATH=~/progs/postgresql-9.4-1205.jdbc42.jar pyspark
我的数据库在postgres中,因此我下载了带有jdbc的jar,并按照文档中的建议将其添加到我的类路径中。