Skip to content

[Performance]: GetterBasedSchemaProvider.fromRowFunction doesn't lend itself well for JIT optimizations #27533

@mosche

Description

@mosche

What would you like to happen?

The conversion of rows to the external object is rather inefficient. The code to convert Row fields to the external field types required for the constructor / setters in FromRowUsingCreator is branch heavy and rather hard to optimize for Java's JIT compiler.

Benchmarks for GetterBasedSchemaProvider are available here: https://s.apache.org/beam-community-metrics/d/kllfR2vVk/java-jmh-benchmarks?orgId=1

Issue Priority

Priority: 2 (default / most feature requests should be filed as P2)

Issue Components

  • Component: Python SDK
  • Component: Java SDK
  • Component: Go SDK
  • Component: Typescript SDK
  • Component: IO connector
  • Component: Beam examples
  • Component: Beam playground
  • Component: Beam katas
  • Component: Website
  • Component: Spark Runner
  • Component: Flink Runner
  • Component: Samza Runner
  • Component: Twister2 Runner
  • Component: Hazelcast Jet Runner
  • Component: Google Cloud Dataflow Runner

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions