Дельта-совместное использование с Python и проблема с искрой. [DATA_SOURCE_NOT_FOUND] Не удалось найти источник данных: ⇐ Python

Программы на Python
Anonymous
Дельта-совместное использование с Python и проблема с искрой. [DATA_SOURCE_NOT_FOUND] Не удалось найти источник данных:

Сообщение Anonymous »

Я пытаюсь получить доступ из проекта Python к полученному мной общему доступу Delta. У меня нет проблем с доступом к нему с помощью «load_as_pandas», но мне нужно фильтровать таблицы перед их загрузкой, поэтому я пытаюсь использовать Spark, но у меня возникла проблема при попытке использовать его несколькими разными способами.
лайк:

Код: Выделить всё

table = delta_sharing.load_as_spark(table_name)

Код: Выделить всё

df = spark.read.format("deltaSharing").load(table_name)
и имя_таблицы имеет следующую структуру: "#.." (также он работает для панд, поэтому он хорошо создан)
Итак, проблема, с которой я столкнулся:

Код: Выделить всё

Py4JJavaError: An error occurred while calling o441.load.
: org.apache.spark.SparkClassNotFoundException: [DATA_SOURCE_NOT_FOUND] Failed to find the data source: deltaSharing. Please find packages at `https://spark.apache.org/third-party-projects.html`.
at org.apache.spark.sql.errors.QueryExecutionErrors$.dataSourceNotFoundError(QueryExecutionErrors.scala:725)
at org.apache.spark.sql.execution.datasources.DataSource$.lookupDataSource(DataSource.scala:647)
at org.apache.spark.sql.execution.datasources.DataSource$.lookupDataSourceV2(DataSource.scala:697)
at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:208)
at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:186)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:244)
at py4j.reflection.ReflectionEngine.invoke(ReflectionEngine.java:374)
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.ClientServerConnection.waitForCommands(ClientServerConnection.java:182)
at py4j.ClientServerConnection.run(ClientServerConnection.java:106)
at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.lang.ClassNotFoundException: deltaSharing.DefaultSource
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:476)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:594)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:527)
at org.apache.spark.sql.execution.datasources.DataSource$.$anonfun$lookupDataSource$5(DataSource.scala:633)
at scala.util.Try$.apply(Try.scala:213)
at org.apache.spark.sql.execution.datasources.DataSource$.$anonfun$lookupDataSource$4(DataSource.scala:633)
at scala.util.Failure.orElse(Try.scala:224)
Похоже, что это проблема версии/пакета, но я не могу найти способ ее решения и не уверен, что это настоящая проблема.

Подробнее здесь: https://stackoverflow.com/questions/790 ... ailed-to-f

Вернуться в «Python»