Spark 读取 CSV 文件设置 option 参数详解
引言
spark 在读取 csv 文件时,可能会涉及到很多参数设置,这篇文章总结了 option 里面的参数,希望能够对你有所帮助
option 参数详解
| 参数 | 解释 |
|---|---|
sep |
默认是, 指定单个字符分割字段和值 |
encoding |
默认是uft-8通过给定的编码类型进行解码 |
quote |
默认是“,其中分隔符可以是值的一部分,设置用于转义带引号的值的单个字符。如果您想关闭引号,则需要设置一个空字符串,而不是null。 |
escape |
默认(\)设置单个字符用于在引号里面转义引号 |
charToEscapeQuoteEscaping |
默认是转义字符(上面的escape)或者\0,当转义字符和引号(quote)字符不同的时候,默认是转义字符(escape),否则为\0 |
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(默认启用)来控制此行为。 |
Spark 读取 CSV 文件设置 option 参数详解的更多相关文章
- Jmeter读取CSV文件,请求参数乱码
Jmeter读取CSV文件,请求参数乱码 1.修改本地配置文件,jmeter.properties,修改以下配置项 sampleresult.default.encoding=UTF-8 重启Jmet ...
- python读取数据文件:pandas包详解
本文转载自https://blog.csdn.net/brucewong0516/article/details/79092579 pandas包是一个高效的文件读取工具,适用于txt,excel,等 ...
- Pyspark读取csv文件
#_*_coding:utf-8_*_ # spark读取csv文件 #指定schema: schema = StructType([ # true代表不为null StructField(" ...
- spark.read.csv读取CSV文件 ArrayIndexOutOfBoundsException报错
通过 spark.read.csv读取CSV文件时,遇到 到 ArrayIndexOutOfBoundsException报错,初步判断是缺少参数导致,放百度看看,没找引起问题相关的参数. 第一个看到 ...
- jmeter请求参数中文乱码及无法读取CSV文件解决办法
解决办法:参考http://blog.csdn.net/u012167045/article/details/70868306 版本:2.6 我是修改请求http请中的编码为Content encod ...
- python之读取配置文件模块configparser(二)参数详解
configparser.ConfigParser参数详解 从configparser的__ini__中可以看到有如下参数: def __init__(self, defaults=None, dic ...
- Spark参数详解 一(Spark1.6)
Spark参数详解 (Spark1.6) 参考文档:Spark官网 在Spark的web UI在"Environment"选项卡中列出Spark属性.这是一个很有用的地方,可以检查 ...
- spark 写csv文件出现乱码 以及写文件读文件总结
参考链接:https://blog.csdn.net/qq_56870570/article/details/118492373 result_with_newipad.write.mode(&quo ...
- [spark]-Spark2.x集群搭建与参数详解
在前面的Spark发展历程和基本概念中介绍了Spark的一些基本概念,熟悉了这些基本概念对于集群的搭建是很有必要的.我们可以了解到每个参数配置的作用是什么.这里将详细介绍Spark集群搭建以及xml参 ...
- [Python Study Notes]pd.read_csv()函数读取csv文件绘图
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ...
随机推荐
- Java 内存模型与 Happens-Before 关系深度解析
在 Java 并发编程中,Java 内存模型(Java Memory Model, JMM)与 Happens-Before 关系是理解多线程数据可见性和有序性的核心理论.本文从 JMM 的抽象模型出 ...
- 提高数据的安全性和可控性,数栈基于 Ranger 实现的 Spark SQL 权限控制实践之路
在企业级应用中,数据的安全性和隐私保护是极其重要的.Spark 作为数栈底层计算引擎之一,必须确保数据只能被授权的人员访问,避免出现数据泄露和滥用的情况.为了实现Spark SQL 对数据的精细化管理 ...
- X6在数栈指标管理中的应用
一.需求背景 产品成立之初,产品的需求是需要对各种指标进行公式运算,组合成一个新的复合指标,供后续使用.当时产品提出的形式是有两种: 一种是直接让用户输入,不作任何其他操作,但这种方式带来的问题一 ...
- cuda安装失败解决方法
cuda安装失败解决方法 1.问题 安装cuda11.3版本时,一直出现安装失败的情况,多次安装依然失败 之前安装的时候都是默认选择推荐的安装,如下图所示: 失败的图片如下: 2.解决方法 解决方法如 ...
- websocket h5控制 pc 大屏 进行协同操作
接到产品需求单 ,哎说多都是累 这几天接口写个没停 今天捣鼓一下这个需求 需求简要说明:客户找我们做的pc端可视化大屏 需要扫码 到 h5端移动端控制pc端大屏 移动端当然也是一个网页 一对一操控 分 ...
- fiddler抓包mumu模拟器
https://www.cnblogs.com/will-wu/p/14600235.html 1,分别下载最新版本的fiddler和mumu模拟器. 2,启动 fiddler ,去Tools -&g ...
- json字符串不规范 怎么使用parse反序列化
json不规范 亲人两行泪 var myJsonStr = "{name:'张三', 'age':20}"; // 甚至有的key或者value是双引号包起来的 引号都不统一 JS ...
- 前端开发系列059-网络篇之网络基础知识和HTTP协议
一.网络编程基本概念 1.1 客户端和服务器的基本概念 客户端(Client)能从服务器获取资源为客户提供服务的程序(设备). 服务器(Server)为客户端提供服务.提供数据.提供资源的机器. 说明 ...
- 日事清助力制造业IPD全生命周期管理:从开发流程到持续优化的跨部门协作实践
一.先聊聊IPD,它到底是什么 在竞争激烈的市场中,产品的快速.精准开发是企业致胜的关键.而为了确保新产品能够顺利从概念到落地,越来越多的企业采用集成产品开发(IPD, Integrated Prod ...
- ETL数据集成丨通过ETLCloud工具,将Oracle数据实时同步至Doris中
ETLCloud是一个全面的数据集成平台,专注于解决大数据量和高合规要求环境下的数据集成需求.采用先进的技术架构,如微服务和全Web可视化的集成设计,为用户提供了一站式的数据处理解决方案. 主要特点和 ...