我正在尝试使用 Jupyter Notebook 中的 pyspark 读取 Azure Blob 存储上的 CSV 文件,但遇到以下错误:
Py4JJavaError:调用 o34.csv 时发生错误。: java.lang.RuntimeException:java.lang.ClassNotFoundException:在 org.apache 的 org.apache.hadoop.conf.Configuration.getClass(Configuration.java:2667) 中找不到类 org.apache.hadoop.fs.azure.NativeAzureFileSystem .hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:3431) 在 org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:3466) 在 org.apache.hadoop.fs.FileSystem.access$300(FileSystem. java:174) 在 org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:3574) 在 org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:3521) 在 org.apache .hadoop.fs.FileSystem.get(FileSystem.java:540) 位于 org.apache.hadoop.fs.Path.getFileSystem(Path.java:365) 位于 org.apache.spark.sql.execution.datasources.DataSource$。 $anonfun$checkAndGlobPathIfNecessary$1(DataSource.scala:747) 在 scala.collection.immutable.List.map(List.scala:293) 在 org.apache.spark.sql.execution.datasources.DataSource$.checkAndGlobPathIfNecessary(DataSource.scala) :745)在org.apache.spark.sql.execution.datasources.DataSource.checkAndGlobPathIfNecessary(DataSource.scala:577)在org.apache.spark.sql.execution.datasources.DataSource.resolveRelation(DataSource.scala:408)在org.apache.spark.sql.DataFrameReader.loadV1Source(DataFrameReader.scala:274) 在 org.apache.spark.sql.DataFrameReader.$anonfun$load$3(DataFrameReader.scala:245) 在 scala.Option.getOrElse(Option. scala:189)在org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:245)在org.apache.spark.sql.DataFrameReader.csv(DataFrameReader.scala:571)在java.base / jdk.internal .reflect.NativeMethodAccessorImpl.invoke0(本机方法)位于 java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)位于 java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 43)在java.base / java.lang.reflect.Method.invoke(Method.java:566)在py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:244)在py4j.reflection.ReflectionEngine.invoke(ReflectionEngine.java) :357)在py4j.Gateway.invoke(Gateway.java:282)在py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:132)在py4j.commands.CallCommand.execute(CallCommand.java:79)在py4j.ClientServerConnection .waitForCommands(ClientServerConnection.java:182) 在 py4j.ClientServerConnection.run(ClientServerConnection.java:106) 在 java.base/java.lang.Thread.run(Thread.java:829) 引起:java.lang.ClassNotFoundException:在 org.apache.hadoop.conf.Configuration.getClassByName(Configuration.java:2571) 处找不到类 org.apache.hadoop.fs.azure.NativeAzureFileSystem 在 org.apache.hadoop.conf.Configuration.getClass(Configuration.java:第2665章) ... 29 更多
以下是我遵循的步骤: 我有一个可用的 kubernetes 集群。
我安装了一个 HELM 图表 JupyterHub,它似乎工作正常,我在那里安装了 Pyspark。 …