对行进行编码和解码

本页面介绍了如何在执行下列操作时对行进行编码和解码 在 Cloud Data Fusion Studio 的 Wrangler 工作区中准备数据。

编码行

您可以使用数据的基于字符的编码,在出于旧版原因而仅限于 US-ASCII 数据的环境中存储或传输数据。您可以在不受这些旧版限制的新应用中使用它,因为它允许使用文本编辑器操控对象。

您可以将以下基于 RFC-4648 的编码方案应用于列中的所有值:

  • Base32
  • Base64
  • 十六进制颜色值
  • 网址

编码时,Wrangler 会生成一个名称采用以下格式的新列:<column>_encode_<type> except for url-encode

Cloud Data Fusion 对列值使用以下规则:

  • 如果该列为 null,则生成的列也是 null
  • 如果行中未找到所选列,系统会跳过该行。
  • 如果列值没有字符串或字节数据类型,则 转换失败,并显示错误。

支持的编码选项

Wrangler 支持以下编码选项:

编码 base64
Base64 选项将 encode64 指令添加为转换步骤 并创建一个包含编码值的新列。
编码 base32
Base32 选项会将 encode32 指令作为转换步骤添加到食谱中,并创建一个包含编码值的新列。
对十六进制编码
Hex 选项添加 encode_hex 指令作为转换步骤 并创建一个包含编码值的新列。
对网址进行编码
网址选项会将 url-encode 指令作为转换步骤添加到配方中,并对当前列进行编码。

解码行

您可以使用数据的底层解码功能,在出于旧版原因而仅限于 US-ASCII 数据的环境中存储或传输数据。您可以在不受这些旧版限制的新应用中使用它,因为它允许使用文本编辑器操控对象。

您可以将以下基于 RFC-4648 的解码方案应用于列中的每个值:

  • Base32
  • Base64
  • 十六进制颜色值
  • 网址

解码时,Wrangler 会生成一个名称采用以下格式(url-decode 除外)的新列:<column>_encode_<type>

Cloud Data Fusion 对列值使用以下规则:

  • 如果该列为 null,则生成的列也是 null
  • 如果在行中找不到所选列,则会跳过该行。
  • 如果列值不包含字符串或字节数组数据类型,则操作会失败。

支持的解码选项

Wrangler 支持以下编码选项:

解码 base64
base64 选项会将 decode64 指令作为转换步骤添加到食谱中,并创建一个包含解码值的新列。
解码 base32
base32 选项添加 decode32 指令作为转换步骤 然后创建一个新列,其中包含解码后的值。
解码十六进制
Hex 选项添加 decode hex 指令作为转换步骤 然后创建一个新列,其中包含解码后的值。
解码网址
网址 选项添加 url-decode 指令作为转换步骤 并解码当前列。

后续步骤