pyspark 将sqlite文件加载到DataFrame

falq053o  于 2023-10-15  发布在  Spark
关注(0)|答案(2)|浏览(131)

在Apache Spark中加载sqlite文件。
我试着这样做:

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文件的最佳方法是什么?

vcirk6k6

vcirk6k61#

我会将数据库导出到一个CSV文件,并使用DB Browser for SQLite

  1. Open Database按钮
    1.选择数据库文件
  2. File → Export → Table(s) as CSV file,默认值应该没问题
    然后使用spark-csv将CSV文件加载到Spark框架中(参见链接以获取示例)。
    否则,您也可以尝试使用JDBC连接到数据库的托管示例。
ca1c2owp

ca1c2owp2#

.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,并且要使用合适的版本。

相关问题