【发布时间】:2020-05-29 14:37:32
【问题描述】:
问题陈述:
我有一个包含以下字段的输入 PCollection:
{
firstname_1,
lastname_1,
dob,
firstname_2,
lastname_2,
firstname_3,
lastname_3,
}
然后我执行一个 Beam SQL 操作,结果 PCollection 的输出应该是这样的
----------------------------------------------
name.firstname | name.lastname | dob
----------------------------------------------
firstname_1 | lastname_1 | 202009
firstname_2 | lastname_2 |
firstname_3 | lastname_3 |
-----------------------------------------------
准确地说:
array[
(firstname_1,lastname_1,dob),
(firstname_2,lastname_2,dob),
(firstname_3,lastname_3,dob)
]
这是我执行 Beam SQL 的代码 sn-p:
PCollectionTuple tuple=
PCollectionTuple.of(new TupleTag<>("testPcollection"), testPcollection);
PCollection<Row> result = tuple
.apply(SqlTransform.query(
"SELECT array[(firstname_1,lastname_1,dob), (firstname_2,lastname_2,dob), (firstname_3,lastname_3,dob)]"));
我没有得到正确的结果。
有人可以指导我如何在 Beam SQL 中查询重复字段的数组吗?
【问题讨论】:
-
你得到了什么输出?
-
您能否写出输入的完整架构(包括类型)、所需输出的完整架构(包括类型)以及输出中所需的确切行和值?
标签: google-cloud-dataflow apache-beam apache-beam-io apache-calcite beam-sql