zoukankan      html  css  js  c++  java
  • spark读写文件

        val path="/Volumes/Data/BigData_code/data/retail-data/by-day/2010-12-01.csv"
        spark.read.format("csv").option("header", "true").option("inferSchema", "true")
          .load(path)
    

    对于gz文件的读取,注意(这里讲的txt压缩成gz文件)

    //方法1
    val sourceDF = spark.read.option("delimiter", "	").schema(sourceSchema).format("csv").load(output)
    
    //方法2
    // val sourceRDD = 
    // sc
    // .textFile(output, 20)
    // .map(_.split("	"))
    // .filter(_.length==8)
    // .map(splits => {
    //  (splits(0), splits(1), splits(2), splits(3), splits(4).toLong, splits(5).toLong, splits(6).toLong, splits(7).toLong)
    // })
    
    
    // val sourceDF =sourceRDD
    //       .toDF("key", "fpdn", "date", "ip", "ipLong", "requentCnt", "firstSeen", "lastSeen")
    

    注意分隔符:不同的文件可能会有不同的分隔符。在spark.read中默认的分隔符为‘,’逗号。如果是其他的需要自己设置:

    val sourceDF = spark.read.option("delimiter", "	")     //使用delimiter设置成‘	'
        .schema(sourceSchema).format("csv").load(output)
    

    这里使用的是delimiter。
    如果是方法2,直接textFile的line直接split(" ")

  • 相关阅读:
    B2. Cat Party (Hard Edition)
    Dubbo集群容错
    Dubbo负载均衡
    Dubbo多协议支持
    Dubbo服务分组
    Dubbo多版本控制
    Dubbo管控平台
    Dubbo应用到web工程
    Dubbo使用Zookeeper注册中心
    Dubbo直连方式
  • 原文地址:https://www.cnblogs.com/ALINGMAOMAO/p/14470453.html
Copyright © 2011-2022 走看看