我想将sqlite
文件加载到Apache Spark中。
我试过这样:
emailsDf = spark.read.format('sqlite').load("/FileStore/tables/24ioztln1479471916526/database.sqlite")
但它不起作用:
java.lang.ClassNotFoundException: Failed to find data source: sqlite. Please find packages at https://cwiki.apache.org/confluence/display/SPARK/Third+Party+Projects
那么加载sqlite
文件的最佳方式是什么?
答案 0 :(得分:2)
.format('sqlite')不存在。你必须使用jdbc连接到sqlite。
val df = sqlContext.read.format("jdbc").options(
Map(
"url" -> "jdbc:sqlite:/FileStore/tables/24ioztln1479471916526/database.sqlite",
"dbtable" -> "select * from your_table")).load()
运行应用程序时,必须在类路径中使用您正在使用的合适版本的sqlite-jdbc-X.jar。
答案 1 :(得分:1)
我会将数据库导出到包含DB Browser for SQLite的CSV文件:
Open Database
按钮File → Export → Table(s) as CSV file
,默认值应该没问题然后使用spark-csv将CSV文件加载到Spark数据框中(请参阅示例链接)。
否则,您还可以尝试将JDBC连接到数据库的托管实例。