Details
-
Improvement
-
Status: Open
-
P3
-
Resolution: Unresolved
-
None
Description
For example, though Java forces one to put all stand-alone functions as static methods on a class (like Metrics) in Python one would just have standard module-level functions.
Also, the MetricsFilter builder pattern is very Java-esque (and verbose). In Python, one would simply let result.metrics() take keyword arguments.
We should seriously consider aggregating rather than returning lists of results, at least by default. E.g. in https://github.com/apache/beam/blob/master/sdks/python/apache_beam/examples/wordcount.py it assumes that there's no other metric with the given name in any subtransform (otherwise it may deterministically grab the "wrong" one.)