在 Cloud Data Fusion Studio 中,您可以使用 Wrangler 工作区对数据集行中的值进行编码和解码。在格式之间进行转换有助于您安全地处理二进制载荷、设置网址参数格式,以及为下游处理准备记录。
对行进行编码
您可以使用数据的基础编码,在因历史原因而仅限于 US-ASCII 数据的环境中存储或传输数据。您可以在没有这些旧版限制的新应用中使用它,因为它允许使用文本编辑器操作对象。
您可以将以下基于 RFC-4648 的编码方案应用于列中的所有值:
- Base32
- Base64
- Hex
- 网址
编码时,Wrangler 会生成一个新列,其名称格式如下:<column>_encode_<type> except for url-encode。
Cloud Data Fusion 会对列值使用以下规则:
- 如果列为
null,则生成的列也为null。 - 如果在行中找不到所选列,则系统会跳过该行。
- 如果列值不具有字符串或字节数据类型,则转换会失败,并显示错误。
支持的编码选项
Wrangler 支持以下编码选项:
- 对 base64 进行编码
- Base64 选项会将
encode64指令作为转换步骤添加到配方中,并创建一个包含编码值的新列。 - Base32 编码
- Base32 选项会将
encode32指令作为转换步骤添加到配方中,并创建一个包含编码值的新列。 - 编码十六进制
- 十六进制选项会将
encode_hex指令作为转换步骤添加到配方中,并创建一个包含编码值的新列。 - 对网址进行编码
- 网址选项会将
url-encode指令作为转换步骤添加到配方中,并对当前列进行编码。
解码行
您可以使用数据的基础解码,在因历史原因而仅限于 US-ASCII 数据的环境中存储或传输数据。您可以在没有这些旧版限制的新应用中使用它,因为它允许使用文本编辑器操作对象。
您可以对列中的每个值应用以下基于 RFC-4648 的解码方案:
- Base32
- Base64
- Hex
- 网址
解码时,Wrangler 会生成一个新列,其名称采用以下格式:<column>_encode_<type>,url-decode 除外。
Cloud Data Fusion 会对列值使用以下规则:
- 如果列为
null,则生成的列也为null。 - 如果在行中找不到所选列,则系统会跳过该行。
- 如果列值不包含字符串或字节数组数据类型,则操作会失败。
支持的解码选项
Wrangler 支持以下编码选项:
- 对 base64 进行解码
- base64 选项会将
decode64指令作为转换步骤添加到配方中,并创建一个包含解码值的新列。 - 对 base32 进行解码
- base32 选项会将
decode32指令作为转换步骤添加到配方中,并创建一个包含解码值的新列。 - 解码十六进制
- 十六进制选项会将
decode hex指令作为转换步骤添加到配方中,并创建一个包含解码值的新列。 - 解码网址
- 网址选项会将
url-decode指令作为转换步骤添加到配方中,并对当前列进行解码。
后续步骤
- 详细了解 Wrangler 指令。