更新时间:2024-05-11 GMT+08:00

Spark输出

概述

“Spark输出”算子,用于配置已生成的字段输出到SparkSQL表的列。

输入与输出

  • 输入:需要输出的字段
  • 输出:SparkSQL表

参数说明

表1 算子参数说明

参数

含义

类型

是否必填

默认值

Spark文件存储格式

配置SparkSQL表文件的存储格式(目前支持四种格式:CSV、ORC、RC和PARQUET)。

说明:
  • PARQUET格式是一种列式存储格式,PARQUET要求Loader的输出字段名和SparkSQL表中的字段名保持一致。
  • Hive 1.2.0版本之后,Hive使用字段名称替代字段序号对ORC文件进行解析,因此,Loader的输出字段名和SparkSQL表中的字段名需要保持一致。

enum

CSV

Spark文件压缩格式

在下拉菜单中选择SparkSQL表文件的压缩格式,未配置或选择“NONE”表示不压缩数据。

enum

NONE

Spark ORC文件版本

通过该字段配置ORC文件的版本(当SparkSQL表文件的存储格式是ORC时)。

enum

0.12

输出分隔符

配置分隔符。

string

输出字段

配置输出信息:

  • 位置:配置输出字段的位置。
  • 字段名:配置输出字段的字段名。
  • 类型:配置字段类型,字段类型为“DATE”“TIME”“TIMESTAMP”时,需指定特定时间格式,其他类型指定无效。时间格式如:“yyyyMMdd HH:mm:ss”
  • 十进制格式:配置小数的刻度和精度。
  • 长度:配置字段长度,字段值实际长度太长则按配置的长度截取,“类型”“CHAR”时实际长度不足则空格补齐,“类型”为“VARCHAR”时实际长度不足则不补齐。
  • 分区键:配置是否为分区列。可以不指定分区列,也可以指定多个分区列。配置多个列为分区列时,会按照配置列的先后顺序对其进行拼接。

map

数据处理规则

  • 将字段值输出到SparkSQL表中。
  • 如果指定了一个或多个列为分区列,则在作业配置第四步“输出设置”页面上,会显示“分割程序”属性,该属性表示使用多少个处理器去对分区数据进行处理。
  • 如果没有指定任何列为分区列,则表示不需要对输入数据进行分区处理,“分割程序”属性默认隐藏。

样例

通过“CSV文件输入”算子,生成两个字段A和B。

源文件如下:

配置“Spark输出”算子,将A和B输出到SparkSQL的表中。