beam-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Etienne Chauchot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (BEAM-135) Utilities for "batching" elements in a DoFn
Date Wed, 29 Mar 2017 11:24:41 GMT

    [ https://issues.apache.org/jira/browse/BEAM-135?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15946946#comment-15946946
] 

Etienne Chauchot commented on BEAM-135:
---------------------------------------

The orientation of this feature is to provide exact batching (https://docs.google.com/document/d/1zf9TxIOsZf_fz86TGaiAQqdNI5OO7Sc6qFsxZlBAMiA/edit?usp=sharing)
to allow use cases such as abuse detection in an auction system: raise an alert when a user
has made 10 auctions in the last hour. The state API allows to count to 10 even if a bundle
is smaller than 10 elements. There are still corner cases in which, the exact batching cannot
be obtained: if the window contains 15 elements, then there will be a batch of 10 elements
and a batch of 5 elements because we need to output the batched elements in the same window
as the input.


> Utilities for "batching" elements in a DoFn
> -------------------------------------------
>
>                 Key: BEAM-135
>                 URL: https://issues.apache.org/jira/browse/BEAM-135
>             Project: Beam
>          Issue Type: New Feature
>          Components: sdk-java-core
>            Reporter: Ben Chambers
>            Assignee: Etienne Chauchot
>
> We regularly receive questions about how to write a {{DoFn}} that operates on batches
of elements. Example answers include:
> http://stackoverflow.com/questions/35065109/can-datastore-input-in-google-dataflow-pipeline-be-processed-in-a-batch-of-n-ent/35068341#35068341
> http://stackoverflow.com/questions/30177812/partition-data-coming-from-csv-so-i-can-process-larger-patches-rather-then-indiv/30178170#30178170
> Possible APIs could be to wrap a {{DoFn}} and include a batch size, or to create a utility
like {{Filter}}, {{Partition}}, etc. that takes a {{SerializableFunction}} or a {{SimpleFunction}}.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message