我正在学习如何将sqlite连接到Spark the Definitive Guide一书中的火花



我正在使用Jupyter Notebook。

以下是上述用于连接pyspark到sqlite的代码:

driver = "org.sqlite.JDBC"
path = "/data/flight-data/jdbc/my-sqlite.db"
url = "jdbc:sqlite:" + path
tablename = "flight_info"
dbDataFrame = spark.read.format("jdbc").option("url", url)
.option("dbtable", tablename).option("driver", driver).load()

这给了我以下错误:

Py4JJavaError: An error occurred while calling o121.load.  
: java.lang.ClassNotFoundException: org.sqlite.JDBC

请帮我解决这个错误。

问题

使用JDBC API的Spark无法找到类"org.sqlite.JDBC",因为它不在Spark的类路径中。

解决方案

您可以从->Maven Online Repository并将其放置在jars文件夹中。重新启动您的笔记本电脑/应用程序

参考/资源

从maven下载SQLITEJDBC链接-https://repo1.maven.org/maven2/org/xerial/sqlite-jdbc/3.28.0/sqlite-jdbc-3.28.0.jar

最新更新