Загрузить базу данных SQLite из местоположения s3, используя строку подключения SQLite jdb c - pyspark - PullRequest
0 голосов
/ 15 апреля 2020

У меня есть файл БД SQLite, хранящийся в корзине s3, и я хочу загрузить указанную c таблицу, которая есть в файле данных pyspark. Вот как я это сделал, но в итоге я получил сообщение об ошибке: « Произошла ошибка при вызове o662.load .: java. sql .SQLException: путь к 's3: //brexit-bucket/fake_db_081119.sqlite ':' / s3: 'не существует'

Вот мой код для того же самого.

df = sqlContext.read.format('jdbc') \
            .options(url='jdbc:sqlite:s3://brexit-bucket/fake_db_081119.sqlite', \
                     dbtable='user',driver='org.sqlite.JDBC').load()

Вот ошибка:

An error occurred while calling o662.load.: java.sql.SQLException: path to 's3://brexit-bucket/fake_db_081119.sqlite': '/s3:' does not exist
at org.sqlite.core.CoreConnection.open(CoreConnection.java:117)
at org.sqlite.core.CoreConnection.<init>(CoreConnection.java:66)
at org.sqlite.jdbc3.JDBC3Connection.<init>(JDBC3Connection.java:21)
at org.sqlite.jdbc4.JDBC4Connection.<init>(JDBC4Connection.java:23)
at org.sqlite.SQLiteConnection.<init>(SQLiteConnection.java:45)
at org.sqlite.JDBC.createConnection(JDBC.java:114)
at org.sqlite.JDBC.connect(JDBC.java:88)
at org.apache.spark.sql.execution.datasources.jdbc.JdbcUtils$$anonfun$createConnectionFactory$1.apply(JdbcUtils.scala:63)
at org.apache.spark.sql.execution.datasources.jdbc.JdbcUtils$$anonfun$createConnectionFactory$1.apply(JdbcUtils.scala:54)
at org.apache.spark.sql.execution.datasources.jdbc.JDBCRDD$.resolveTable(JDBCRDD.scala:56)
at org.apache.spark.sql.execution.datasources.jdbc.JDBCRelation$.getSchema(JDBCRelation.scala:210)
at org.apache.spark.sql.execution.datasources.jdbc.JdbcRelationProvider.createRelation(JdbcRelationProvider.scala:35)
at org.apache.spark.sql.execution.datasources.DataSource.resolveRelation(DataSource.scala:318)
at org.apache.spark.sql.DataFrameReader.loadV1Source(DataFrameReader.scala:223)
at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:211)
at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:167)
at sun.reflect.GeneratedMethodAccessor70.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:244)
at py4j.reflection.ReflectionEngine.invoke(ReflectionEngine.java:357)
at py4j.Gateway.invoke(Gateway.java:282)
at py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:132)
at py4j.commands.CallCommand.execute(CallCommand.java:79)
at py4j.GatewayConnection.run(GatewayConnection.java:238)
at java.lang.Thread.run(Thread.java:748)
...