专栏首页数据挖掘Spark No FileSystem for scheme file 解决方法

Spark No FileSystem for scheme file 解决方法

在给代码带包成jar后,放到环境中运行出现如下错误:

Exception in thread "main" java.io.IOException: No FileSystem for scheme: file
    at org.apache.hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:2644)
    at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2651)
    at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:92)
    at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2687)
    at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2669)
    at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:371)
    at org.apache.hadoop.fs.Path.getFileSystem(Path.java:295)
    at org.apache.spark.sql.catalyst.catalog.SessionCatalog.makeQualifiedPath(SessionCatalog.scala:115)
    at org.apache.spark.sql.catalyst.catalog.SessionCatalog.createDatabase(SessionCatalog.scala:145)
    at org.apache.spark.sql.catalyst.catalog.SessionCatalog.<init>(SessionCatalog.scala:89)
    at org.apache.spark.sql.internal.SessionState.catalog$lzycompute(SessionState.scala:95)
    at org.apache.spark.sql.internal.SessionState.catalog(SessionState.scala:95)
    at org.apache.spark.sql.internal.SessionState$$anon$1.<init>(SessionState.scala:112)
    at org.apache.spark.sql.internal.SessionState.analyzer$lzycompute(SessionState.scala:112)
    at org.apache.spark.sql.internal.SessionState.analyzer(SessionState.scala:111)
    at org.apache.spark.sql.execution.QueryExecution.assertAnalyzed(QueryExecution.scala:49)
    at org.apache.spark.sql.Dataset$.ofRows(Dataset.scala:64)
    at org.apache.spark.sql.SparkSession.baseRelationToDataFrame(SparkSession.scala:382)
    at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:143)
    at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:122)
    at org.elasticsearch.spark.sql.EsSparkSQL$.esDF(EsSparkSQL.scala:52)
    at org.elasticsearch.spark.sql.EsSparkSQL$.esDF(EsSparkSQL.scala:66)
    at org.elasticsearch.spark.sql.package$SparkSessionFunctions.esDF(package.scala:58)
    at SQLAttack$.getDayDataByES(SQLAttack.scala:51)
    at SQLAttack$.main(SQLAttack.scala:25)
    at SQLAttack.main(SQLAttack.scala)

这是因为 HDFS 的配置文件没写好,更改方式如下:

找到自己项目保存库的位置,依次点击:

File -> Settings -> Build,Execution,Deployment -> Build Tools -> Maven -> Local repository

这里的 Local repository 就是项目保存库的位置。在这里面依次打开文件位置:

\repository\org\apache\hadoop\hadoop-common\2.7.2

rar 打开 hadoop-common-2.7.2.jar ,把里面的 core-default.xml 下载到本地,打开添加更改,在 <!--- global properties --> 添加如下字段:

<!--- global properties -->
<property>
        <name>fs.hdfs.impl</name>
        <value>org.apache.hadoop.hdfs.DistributedFileSystem</value>
        <description>The FileSystem for hdfs: uris.</description>
</property>
<property>
        <name>fs.file.impl</name>
        <value>org.apache.hadoop.fs.LocalFileSystem</value>
        <description>The FileSystem for hdfs: uris.</description>
</property>

将更改后的 core-default.xml 重新放入 hadoop-common-2.7.2.jar 中,再次打包就可以运行了

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • dataframe行变换为列

    使用 import org.apache.spark.sql.functions 里面的函数,具体的方式可以看 functions :

    机器学习和大数据挖掘
  • scala的break和continue

    scala 是没有 continue 的,但是包含 break,可以用 break 构造出 continue 的效果

    机器学习和大数据挖掘
  • scala的reduce

    spark 中的 reduce 非常的好用,reduce 可以对 dataframe 中的元素进行计算、拼接等等。例如生成了一个 dataframe :

    机器学习和大数据挖掘
  • spark和kafka jar包冲突NoSuchMethodError: net.jpountz.lz4.LZ4BlockInputStream

    在利用Spark和Kafka处理数据时,有时会同时在maven pom中引入Spark和Kafka的相关依赖。但是当利用Spark SQL处理数据生成的Data...

    大数据学习与分享
  • Spark读取CSV异常 java.lang.ArrayIndexOutOfBoundsException:62

    情况1: 将GBK编码的文件转文UTF-8(我碰见的),当然这种情况也可以用情况2中的解决办法解决~

    董可伦
  • Spark2.3.1+Kafka0.9使用Direct模式消费信息异常

    在验证kafka属性时不能使用scala默认的类,需要指定kafka带的类 createDirectStream[String, String, StringD...

    笨兔儿
  • spark1.4加载mysql数据 创建Dataframe及join操作连接方法问题

    最后无奈。。就用原来的方法 创建软连接,加载数据,发现可以。。这我就不明白了。。。

    用户3003813
  • org.apache.spark.sql.AnalysisException: Table or view not found: `traintext`.`train`; line 1 pos 14;

    恭喜老铁,跟我遇到了一样的问题,接下来是解决方法: 遇到的问题: org.apache.spark.sql.AnalysisException: Table o...

    用户1171305
  • Spark提交Jar任务警告: Initial job has not accepted any resources;

    WARN TaskSchedulerImpl: Initial job has not accepted any resources; check your...

    时间静止不是简史
  • org.apache.spark.streaming.dstream.MappedDStream@5a69b104 has not been initialized现象原因及方案

    codingforfun

扫码关注云+社区

领取腾讯云代金券