• Spark中加载本地(或者hdfs)文件以及SparkContext实例的textFile使用


    原文链接:Spark中加载本地(或者hdfs)文件以及SparkContext实例的textFile使用

      默认是从hdfs读取文件,也可以指定sc.textFile("路径").在路径前面加上hdfs://表示从hdfs文件系统上读  

     本地文件读取 sc.textFile("路径").在路径前面加上file:// 表示从本地文件系统读,如file:///home/user/spark/README.md ‍

    网上很多例子,包括官网的例子,都是用textFile来加载一个文件创建RDD,类似sc.textFile("hdfs://n1:8020/user/hdfs/input")

    textFile的参数是一个path,这个path可以是:

    1. 一个文件路径,这时候只装载指定的文件

    2. 一个目录路径,这时候只装载指定目录下面的所有文件(不包括子目录下面的文件)

    3. 通过通配符的形式加载多个文件或者加载多个目录下面的所有文件

    第三点是一个使用小技巧,现在假设我的数据结构为先按天分区,再按小时分区的,在hdfs上的目录结构类似于:

    /user/hdfs/input/dt=20130728/hr=00/

    /user/hdfs/input/dt=20130728/hr=01/

    ...

    /user/hdfs/input/dt=20130728/hr=23/

    具体的数据都在hr等于某个时间的目录下面,现在我们要分析20130728这一天的数据,我们就必须把这个目录下面的所有hr=*的子目录下面的数据全 部装载进RDD,于是我们可以这样写:sc.textFile("hdfs://n1:8020/user/hdfs/input /dt=20130728/hr=*/"),注意到hr=*,是一个模糊匹配的方式。

  • 相关阅读:
    我的软件工程课目标
    软件工程课程的建议
    结对编程学习fault、error、failure三种状态
    结对编程项目的过程记录与收获
    “结对编程”之我见
    关于问卷调查
    我的软件工程课目标
    软件工程课程建议
    结对编程2
    结对编程之四则运算
  • 原文地址:https://www.cnblogs.com/gaopeng527/p/5002972.html
Copyright © 2020-2023  润新知