用例将 json 作为一行而不是许多数据集特定加载
Use case to load json as one row instead of many, dataset specific
我正在处理两种类型的 json 文件,并且 运行 遇到了一个错误,该错误似乎建议我将每个文件加载到不同的行中,因为我将文件分解为较小的。但是,当我想将一个文件加载到多行中以帮助稍后处理扁平化的数量时。 (所有数据均为隐私虚拟数据)
这里是我的例子 运行 我不确定我是否可以将副本合并到 select,我也会在下面包含文件格式定义。
数据分解为多个文件,使用:
文件格式:
file_format = (type = 'JSON' strip_outer_array = true);
数据样本
[{"name":"Bigtax","version":"2.2.9","color":"Indigo","available":false},
{"name":"Solarbreeze","version":"7.00","color":"Khaki","available":false},
{"name":"Toughjoyfax","version":"0.7.1","color":"Turquoise","available":false},
{"name":"Otcom","version":"0.95","color":"Indigo","available":false}]
我正在尝试将整个文件上传到多行中的另一种格式:
[
{
color: "red",
value: "#f00"
},
{
color: "green",
value: "#0f0"
},
{
color: "blue",
value: "#00f"
},
{
color: "cyan",
value: "#0ff"
},
{
color: "magenta",
value: "#f0f"
},
{
color: "yellow",
value: "#ff0"
},
{
color: "black",
value: "#000"
}
]
我正在加载到内部阶段并想像这样复制到 table 中:
copy into Colors from @~/staged
file_format = (format_name = 'json');
SELECT
value:name::string as "Color Name",
value:hex::string as "Hex"
FROM
file
, LATERAL FLATTEN(INPUT => SRC:Colors);
我建议您查看 Snowflake 文档的这一部分。需要注意的是,为了让 Snowflake 正确地将 JSON 文档加载到 table 的单独记录中,它需要是 NDJSON 格式。行终止符变得非常重要:
https://docs.snowflake.net/manuals/user-guide/data-load-transform.html#supported-file-formats
我正在处理两种类型的 json 文件,并且 运行 遇到了一个错误,该错误似乎建议我将每个文件加载到不同的行中,因为我将文件分解为较小的。但是,当我想将一个文件加载到多行中以帮助稍后处理扁平化的数量时。 (所有数据均为隐私虚拟数据)
这里是我的例子 运行 我不确定我是否可以将副本合并到 select,我也会在下面包含文件格式定义。 数据分解为多个文件,使用:
文件格式:
file_format = (type = 'JSON' strip_outer_array = true);
数据样本
[{"name":"Bigtax","version":"2.2.9","color":"Indigo","available":false},
{"name":"Solarbreeze","version":"7.00","color":"Khaki","available":false},
{"name":"Toughjoyfax","version":"0.7.1","color":"Turquoise","available":false},
{"name":"Otcom","version":"0.95","color":"Indigo","available":false}]
我正在尝试将整个文件上传到多行中的另一种格式:
[
{
color: "red",
value: "#f00"
},
{
color: "green",
value: "#0f0"
},
{
color: "blue",
value: "#00f"
},
{
color: "cyan",
value: "#0ff"
},
{
color: "magenta",
value: "#f0f"
},
{
color: "yellow",
value: "#ff0"
},
{
color: "black",
value: "#000"
}
]
我正在加载到内部阶段并想像这样复制到 table 中:
copy into Colors from @~/staged
file_format = (format_name = 'json');
SELECT
value:name::string as "Color Name",
value:hex::string as "Hex"
FROM
file
, LATERAL FLATTEN(INPUT => SRC:Colors);
我建议您查看 Snowflake 文档的这一部分。需要注意的是,为了让 Snowflake 正确地将 JSON 文档加载到 table 的单独记录中,它需要是 NDJSON 格式。行终止符变得非常重要:
https://docs.snowflake.net/manuals/user-guide/data-load-transform.html#supported-file-formats