Hi devs,

While implementing some features of Storm SQL on top of Trident, I realized
that there's no Trident operation which provides a way to add fields from
some Function and remove existing fields within one operation.
'each' appends the function output fields to origin input fields, and 'map'
and 'flatMap' use same output fields, so no luck.

Is this a missing feature, or there's a reason for doing so? Trident uses
TridentTupleView so I guess this is related but I didn't have a deep look
for Trident itself.
If anyone knows about the history please let me know.

Thanks,
Jungtaek Lim (HeartSaVioR)

ps. It might be better to explain why I'm finding that feature. I'm trying
to minimize below each -> project -> each -> project chain into one.
https://github.com/apache/storm/blob/master/external/sql/storm-sql-core/src/jvm/org/apache/storm/sql/compiler/backends/trident/TridentLogicalPlanCompiler.java#L164-L167
Please note that Trident doesn't allow duplicated field name so using
temporary field name is necessary if we should preserve existing fields.

Reply via email to