• Spark 读取 CSV 文件设置 option 参数详解


    引言

    spark 在读取 csv 文件时,可能会涉及到很多参数设置,这篇文章总结了 option 里面的参数,希望能够对你有所帮助

    option 参数详解

    参数 解释
    sep 默认是, 指定单个字符分割字段和值
    encoding 默认是uft-8通过给定的编码类型进行解码
    quote 默认是,其中分隔符可以是值的一部分,设置用于转义带引号的值的单个字符。如果您想关闭引号,则需要设置一个空字符串,而不是null
    escape 默认()设置单个字符用于在引号里面转义引号
    charToEscapeQuoteEscaping 默认是转义字符(上面的escape)或者,当转义字符和引号(quote)字符不同的时候,默认是转义字符(escape),否则为
    comment 默认是空值,设置用于跳过行的单个字符,以该字符开头。默认情况下,它是禁用的
    header 默认是false,将第一行作为列名
    enforceSchema 默认是true, 如果将其设置为true,则指定或推断的模式将强制应用于数据源文件,而CSV文件中的标头将被忽略。 如果选项设置为false,则在header选项设置为true的情况下,将针对CSV文件中的所有标题验证模式。模式中的字段名称和CSV标头中的列名称是根据它们的位置检查的,并考虑了*spark.sql.caseSensitive。虽然默认值为true,但是建议禁用 enforceSchema选项,以避免产生错误的结果
    inferSchema inferSchema(默认为false`):从数据自动推断输入模式。 *需要对数据进行一次额外的传递
    samplingRatio 默认为1.0,定义用于模式推断的行的分数
    ignoreLeadingWhiteSpace 默认为false,一个标志,指示是否应跳过正在读取的值中的前导空格
    ignoreTrailingWhiteSpace 默认为false一个标志,指示是否应跳过正在读取的值的结尾空格
    nullValue 默认是空的字符串,设置null值的字符串表示形式。从2.0.1开始,这适用于所有支持的类型,包括字符串类型
    emptyValue 默认是空字符串,设置一个空值的字符串表示形式
    nanValue 默认是Nan,设置非数字的字符串表示形式
    positiveInf 默认是Inf
    negativeInf 默认是-Inf 设置负无穷值的字符串表示形式
    dateFormat 默认是yyyy-MM-dd,设置指示日期格式的字符串。自定义日期格式遵循java.text.SimpleDateFormat中的格式。这适用于日期类型
    timestampFormat 默认是yyyy-MM-dd'T'HH:mm:ss.SSSXXX,设置表示时间戳格式的字符串。自定义日期格式遵循java.text.SimpleDateFormat中的格式。这适用于时间戳记类型
    maxColumns 默认是20480定义多少列数目的硬性设置
    maxCharsPerColumn 默认是-1定义读取的任何给定值允许的最大字符数。默认情况下为-1,表示长度不受限制
    mode 默认(允许)允许一种在解析过程中处理损坏记录的模式。它支持以下不区分大小写的模式。请注意,Spark尝试在列修剪下仅解析CSV中必需的列。因此,损坏的记录可以根据所需的字段集而有所不同。可以通过spark.sql.csv.parser.columnPruning.enabled(默认启用)来控制此行为。
    作者:Binge
    本文版权归作者和博客园共有,转载必须给出原文链接,并保留此段声明,否则保留追究法律责任的权利。
  • 相关阅读:
    XSLT的Replace函数
    Predicate<T> 委托
    《人生的智慧》第二章 人的自身
    Kmeans文本聚类:获取weka计算的聚类中心,完成文本聚类
    VCKbase转载:C++调用ADO
    Kmeans文本聚类系列之如何调用Preprocess类
    Kmeans文本聚类系列之全部代码
    近期计划
    Kmeans 聚类之建立文档向量模型(VSM)
    LibSVM文本分类之结果统计
  • 原文地址:https://www.cnblogs.com/binbingg/p/14832279.html
Copyright © 2020-2023  润新知