我有办法 def process(row: org.apache.flink.types.Row, fieldName: String) : Unit = ???
我要做的处理需要提取一个名为 fieldName
. 我可以看到rowapi允许按顺序提取,但不允许按名称提取。
我猜用户必须向我传递模式信息,所以方法看起来像 def process(row: org.apache.flink.types.Row, rowSchema: ???, fieldName: String) : Unit = ???
.
我已经调查过了 org.apache.flink.table.types.logical.RowType
以及 TypeInformation
但是他们两个看起来都不对。到这儿去最好的方法是什么?
1条答案
按热度按时间vof42yt11#
看来我需要
org.apache.flink.api.java.typeutils.RowTypeInfo
. 它有方法getFieldIndex(String fieldName)