

# 常见数据类型
<a name="aws-glue-api-common"></a>

常见数据类型介绍 AWS Glue 中的各种常见的数据类型。

## Tag 结构
<a name="aws-glue-api-common-Tag"></a>

`Tag` 对象表示用户可分配给 AWS 资源的标签。每个标签都包含定义的一个键和一个可选值。

有关标签以及如何控制对 AWS Glue 中资源的访问的更多信息，请参阅开发人员指南中的 [AWS Glue 中的 AWS 标签](https://docs.aws.amazon.com/glue/latest/dg/monitor-tags.html)和[指定 AWS Glue 资源 ARN](https://docs.aws.amazon.com/glue/latest/dg/glue-specifying-resource-arns.html)。

**字段**
+ `key` – UTF-8 字符串，长度不少于 1 个字节或超过 128 个字节。

  标签键。在对象上创建标签时需要这个键。键区分大小写，并且不得包含前缀 aws。
+ `value` – UTF-8 字符串，不超过 256 个字节。

  标签值。在对象上创建标签时，值是可选的。值区分大小写，并且不得包含前缀 aws。

## DecimalNumber 结构
<a name="aws-glue-api-common-DecimalNumber"></a>

包含以十进制格式表示的数字值。

**字段**
+ `UnscaledValue` – *必填*：Blob。

  未标定的数字值。
+ `Scale` – *必填*：数字（整数）。

  确定小数点落在未标定的值中的位置的标定。

## ErrorDetail 结构
<a name="aws-glue-api-common-ErrorDetail"></a>

包含有关错误的详细信息。

**字段**
+ `ErrorCode` – UTF-8 字符串，长度不少于 1 个字节或超过 255 个字节，与 [Single-line string pattern](#aws-glue-api-regex-oneLine) 匹配。

  与此错误关联的代码。
+ `ErrorMessage` – 描述字符串，长度不超过 2048 个字节，与 [URI address multi-line string pattern](#aws-glue-api-regex-uri) 匹配。

  描述错误的消息。

## PropertyPredicate 结构
<a name="aws-glue-api-common-PropertyPredicate"></a>

定义属性谓词。

**字段**
+ `Key`：值字符串，长度不少于 1 个字节，不超过 1024 个字节。

  属性的键。
+ `Value`：值字符串，长度不少于 1 个字节，不超过 1024 个字节。

  属性的值。
+ `Comparator` – UTF-8 字符串（有效值：`EQUALS` \$1 `GREATER_THAN` \$1 `LESS_THAN` \$1 `GREATER_THAN_EQUALS` \$1 `LESS_THAN_EQUALS`）。

  用于将此属性与其他属性进行比较的比较运算符。

## ResourceUri 结构
<a name="aws-glue-api-common-ResourceUri"></a>

函数资源的 URI。

**字段**
+ `ResourceType` – UTF-8 字符串（有效值：`JAR` \$1 `FILE` \$1 `ARCHIVE`）。

  资源的类型。
+ `Uri` - 统一资源标识符 (uri)，不少于 1 个字节或超过 1024 个字节，与 [URI address multi-line string pattern](#aws-glue-api-regex-uri) 匹配。

  用于访问资源的 URI。

## ColumnStatistics 结构
<a name="aws-glue-api-common-ColumnStatistics"></a>

表示表或分区生成的列级统计数据。

**字段**
+ `ColumnName` – *必填：*UTF-8 字符串，长度不少于 1 个字节或超过 255 个字节，与 [Single-line string pattern](#aws-glue-api-regex-oneLine) 匹配。

  统计数据所属列的名称。
+ `ColumnType` – *必填*：类型名称，长度不超过 20000 个字节，与 [Single-line string pattern](#aws-glue-api-regex-oneLine) 匹配。

  列的数据类型。
+ `AnalyzedTime` – *必填*：时间戳。

  生成列统计数据的时间戳。
+ `StatisticsData` – *必填：*一个 [ColumnStatisticsData](#aws-glue-api-common-ColumnStatisticsData) 对象。

  `ColumnStatisticData` 对象，其中包含统计数据值。

## ColumnStatisticsError 结构
<a name="aws-glue-api-common-ColumnStatisticsError"></a>

封装失败的 `ColumnStatistics` 对象以及失败原因。

**字段**
+ `ColumnStatistics` – 一个 [ColumnStatistics](#aws-glue-api-common-ColumnStatistics) 对象。

  列的 `ColumnStatistics`。
+ `Error` – 一个 [ErrorDetail](#aws-glue-api-common-ErrorDetail) 对象。

  包含操作失败原因的错误消息。

## ColumnError 结构
<a name="aws-glue-api-common-ColumnError"></a>

封装失败的列名称以及失败原因。

**字段**
+ `ColumnName` – UTF-8 字符串，长度不少于 1 个字节或超过 255 个字节，与 [Single-line string pattern](#aws-glue-api-regex-oneLine) 匹配。

  封装失败的列名称。
+ `Error` – 一个 [ErrorDetail](#aws-glue-api-common-ErrorDetail) 对象。

  包含操作失败原因的错误消息。

## ColumnStatisticsData 结构
<a name="aws-glue-api-common-ColumnStatisticsData"></a>

包含单个类型的列统计数据。只应设置一个数据对象，并由 `Type` 属性指示。

**字段**
+ `Type` – *必填*：UTF-8 字符串（有效值：`BOOLEAN` \$1 `DATE` \$1 `DECIMAL` \$1 `DOUBLE` \$1 `LONG` \$1 `STRING` \$1 `BINARY`）。

  列统计数据的类型。
+ `BooleanColumnStatisticsData` – 一个 [BooleanColumnStatisticsData](#aws-glue-api-common-BooleanColumnStatisticsData) 对象。

  布尔值列统计数据。
+ `DateColumnStatisticsData` – 一个 [DateColumnStatisticsData](#aws-glue-api-common-DateColumnStatisticsData) 对象。

  日期列统计数据。
+ `DecimalColumnStatisticsData` – 一个 [DecimalColumnStatisticsData](#aws-glue-api-common-DecimalColumnStatisticsData) 对象。

   十进制列统计数据。其中的 UnscaledValues 是 Base64 编码的二进制对象，存储十进制未缩放值的大端二进制补码表示法。
+ `DoubleColumnStatisticsData` – 一个 [DoubleColumnStatisticsData](#aws-glue-api-common-DoubleColumnStatisticsData) 对象。

  双列统计数据。
+ `LongColumnStatisticsData` – 一个 [LongColumnStatisticsData](#aws-glue-api-common-LongColumnStatisticsData) 对象。

  长列统计数据。
+ `StringColumnStatisticsData` – 一个 [StringColumnStatisticsData](#aws-glue-api-common-StringColumnStatisticsData) 对象。

  字符串列统计数据。
+ `BinaryColumnStatisticsData` – 一个 [BinaryColumnStatisticsData](#aws-glue-api-common-BinaryColumnStatisticsData) 对象。

  二进制列统计数据。

## BooleanColumnStatisticsData 结构
<a name="aws-glue-api-common-BooleanColumnStatisticsData"></a>

定义支持布尔值数据列的列统计数据。

**字段**
+ `NumberOfTrues` – *必填*：数字（长度），至多为“无”。

  列中的 True 值数量。
+ `NumberOfFalses` – *必填*：数字（长度），至多为“无”。

  列中的 False 数量。
+ `NumberOfNulls` – *必填*：数字（长度），至多为“无”。

  列中空值的数量。

## DateColumnStatisticsData 结构
<a name="aws-glue-api-common-DateColumnStatisticsData"></a>

定义支持时间戳数据列的列统计数据。

**字段**
+ `MinimumValue` – 时间戳。

  列中的最低值。
+ `MaximumValue` – 时间戳。

  列中的最高值。
+ `NumberOfNulls` – *必填*：数字（长度），至多为“无”。

  列中空值的数量。
+ `NumberOfDistinctValues` – *必填*：数字（长度），至多为“无”。

  列中的独特值的数量。

## DecimalColumnStatisticsData 结构
<a name="aws-glue-api-common-DecimalColumnStatisticsData"></a>

定义支持固定点数数据列的列统计数据。

**字段**
+ `MinimumValue` – 一个 [DecimalNumber](#aws-glue-api-common-DecimalNumber) 对象。

  列中的最低值。
+ `MaximumValue` – 一个 [DecimalNumber](#aws-glue-api-common-DecimalNumber) 对象。

  列中的最高值。
+ `NumberOfNulls` – *必填*：数字（长度），至多为“无”。

  列中空值的数量。
+ `NumberOfDistinctValues` – *必填*：数字（长度），至多为“无”。

  列中的独特值的数量。

## DoubleColumnStatisticsData 结构
<a name="aws-glue-api-common-DoubleColumnStatisticsData"></a>

定义支持浮动点数数据列的列统计数据。

**字段**
+ `MinimumValue` – 数字（double）。

  列中的最低值。
+ `MaximumValue` – 数字（double）。

  列中的最高值。
+ `NumberOfNulls` – *必填*：数字（长度），至多为“无”。

  列中空值的数量。
+ `NumberOfDistinctValues` – *必填*：数字（长度），至多为“无”。

  列中的独特值的数量。

## LongColumnStatisticsData 结构
<a name="aws-glue-api-common-LongColumnStatisticsData"></a>

定义支持整数数据列的列统计数据。

**字段**
+ `MinimumValue` – 数字（长型）。

  列中的最低值。
+ `MaximumValue` – 数字（长型）。

  列中的最高值。
+ `NumberOfNulls` – *必填*：数字（长度），至多为“无”。

  列中空值的数量。
+ `NumberOfDistinctValues` – *必填*：数字（长度），至多为“无”。

  列中的独特值的数量。

## StringColumnStatisticsData 结构
<a name="aws-glue-api-common-StringColumnStatisticsData"></a>

定义支持字符序列数据值的列统计数据。

**字段**
+ `MaximumLength` – *必填*：数字（长度），至多为“无”。

  列中最长字符串的长度。
+ `AverageLength` – *必填*：数字（长度），至多为“无”。

  列中的平均字符串长度。
+ `NumberOfNulls` – *必填*：数字（长度），至多为“无”。

  列中空值的数量。
+ `NumberOfDistinctValues` – *必填*：数字（长度），至多为“无”。

  列中的独特值的数量。

## BinaryColumnStatisticsData 结构
<a name="aws-glue-api-common-BinaryColumnStatisticsData"></a>

定义支持位序列数据值的列统计数据。

**字段**
+ `MaximumLength` – *必填*：数字（长度），至多为“无”。

  列中最长位序列的长度。
+ `AverageLength` – *必填*：数字（长度），至多为“无”。

  列中的平均位序列长度。
+ `NumberOfNulls` – *必填*：数字（长度），至多为“无”。

  列中空值的数量。

## 字符串模式
<a name="aws-glue-api-common-_string-patterns"></a>

API 使用以下正则表达式来定义对于各种字符串参数和成员有效的内容：
+ 单行字符串模式 -“`[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\t]*`”
+ URI 地址多行字符串模式 -“`[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*`”
+ Logstash Grok 字符串模式 -“`[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\t]*`”
+ 标识符字符串模式 -“`[A-Za-z_][A-Za-z0-9_]*`”
+ AWS IAM ARN 字符串模式 –“`arn:aws:iam::\d{12}:role/.*`”
+ 版本字符串模式 -“`^[a-zA-Z0-9-_]+$`”
+ 日志组字符串模式 -“`[\.\-_/#A-Za-z0-9]+`”
+ 日志流字符串模式 -“`[^:*]*`”
+ 自定义字符串模式 \$110 –“`[a-zA-Z0-9-_]+`”
+ 自定义字符串模式 \$111 –“`[-a-zA-Z0-9+=/:_]*`”
+ 自定义字符串模式 \$112 –“`[\S\s]*`”
+ 自定义字符串模式 \$113 –“`.*\S.*`”
+ 自定义字符串模式 \$114 –“`[a-zA-Z0-9-=._/@]+`”
+ 自定义字符串模式 \$115 –“`[1-9][0-9]*|[1-9][0-9]*-[1-9][0-9]*`”
+ 自定义字符串模式 \$116 –“`[A-Z][A-Za-z\.]+`”
+ 自定义字符串模式 \$117 –“`[\S]*`”
+ 自定义字符串模式 \$118 –“`[\w]*`”
+ 自定义字符串模式 \$119 –“`arn:aws[a-z\-]*:iam::\d{12}:role/?[a-zA-Z_0-9+=,.@\-_/]+`”
+ 自定义字符串模式 \$120 –“`subnet-[a-z0-9]+`”
+ 自定义字符串模式 \$121 –“`\d{12}`”
+ 自定义字符串模式 \$122 –“`([a-z]+)-([a-z]+-)?([a-z]+)-[0-9]+[a-z]+`”
+ 自定义字符串模式 \$123 –“`[a-zA-Z0-9.-]*`”
+ 自定义字符串模式 \$124 –“`arn:aws[a-z0-9\-]*:lambda:[a-z0-9\-]+:\d{12}:function:([\w\-]{1,64})`”
+ 自定义字符串模式 \$125 –“`^(?!(.*[.\/\\]|aws:)).*$`”
+ 自定义字符串模式 \$126 –“`[^\r\n]`”
+ 自定义字符串模式 \$127 –“`^\w+\.\w+\.\w+$`”
+ 自定义字符串模式 \$128 –“`^\w+\.\w+$`”
+ 自定义字符串模式 \$129 –“`^$|arn:aws[a-z0-9-]*:kms:.*`”
+ 自定义字符串模式 \$130 –“`arn:aws[^:]*:iam::[0-9]*:role/.+`”
+ 自定义字符串模式 \$131 –“`[\.\-_A-Za-z0-9]+`”
+ 自定义字符串模式 \$132 –“`^s3://([^/]+)/([^/]+/)*([^/]+)$`”
+ 自定义字符串模式 \$133 –“`.*`”
+ 自定义字符串模式 \$134 –“`^(Sun|Mon|Tue|Wed|Thu|Fri|Sat):([01]?[0-9]|2[0-3])$`”
+ 自定义字符串模式 \$135 – "`[a-zA-Z0-9_.-]+`"
+ 自定义字符串模式 36 –“`^arn:aws(-(cn|us-gov|eusc|iso(-[bef])?))?:secretsmanager:.*$`”
+ 自定义字符串模式 37 –“`\S+`”
+ 自定义字符串模式 \$138 –“`^[\x20-\x7E]*$`”
+ 自定义字符串模式 \$139 –“`^([a-zA-Z0-9_=]+)\.([a-zA-Z0-9_=]+)\.([a-zA-Z0-9_\-\+\/=]*)`”
+ 自定义字符串模式 \$140 –“`^(https?)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]`”
+ 自定义字符串模式 \$141 –“`^(https?):\/\/[^\s/$.?#].[^\s]*$`”
+ 自定义字符串模式 \$142 –“`arn:aws:kms:.*`”
+ 自定义字符串模式 \$143 –“`^subnet-[a-z0-9]+$`”
+ 自定义字符串模式 \$144 –“`[\p{L}\p{N}\p{P}]*`”
+ 自定义字符串模式 \$145 –“`[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}`”
+ 自定义字符串模式 \$146：“`[a-zA-Z0-9-_$#.]+`”
+ 自定义字符串模式 \$147：“`^\d{12}$`”
+ 自定义字符串模式 \$148：“`^(\w+\.)+\w+$`”
+ 自定义字符串模式 \$149：“`^([2-3]|3[.]9)$`”
+ 自定义字符串模式 \$150：“`arn:aws(-(cn|us-gov|eusc|iso(-[bef])?))?:glue:.*`”
+ 自定义字符串模式 \$151：“`[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}`”
+ 自定义字符串模式 \$152：“`(^arn:aws(-(cn|us-gov|eusc|iso(-[bef])?))?:iam::\w{12}:root)`”
+ 自定义字符串模式 \$153：“`^arn:aws(-(cn|us-gov|eusc|iso(-[bef])?))?:iam::[0-9]{12}:role/.+`”
+ 自定义字符串模式 \$154：“`[\s\S]*`”
+ 自定义字符串模式 \$155：“`([\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF]|[^\S\r\n"'= ;])*`”
+ 自定义字符串模式 \$156：“`^[A-Z\_]+$`”
+ 自定义字符串模式 \$157：“`^[A-Za-z0-9]+$`”
+ 自定义字符串模式 \$158：“`[*A-Za-z0-9_-]*`”
+ 自定义字符串模式 \$159:“`([\u0020-\u007E\r\s\n])*`”
+ 自定义字符串模式 \$160：“`[A-Za-z0-9_-]*`”
+ 自定义字符串模式 \$161：“`([\u0009\u000B\u000C\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF])*`”
+ 自定义字符串模式 \$162：“`([\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\s])*`”
+ 自定义字符串模式 \$163 –“`([^\r\n])*`”