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

Eugene Kirpichov commented on BEAM-3201:
----------------------------------------

Brief comment: "The deserialized object cannot be jackson JSONObject because it 
is not serializable preventing the 3 with[id|type|index]Fn user defined 
functions to be called by beam"

This is not the case; Beam does not prevent your code from dealing with 
non-serializable objects. Non-serializable objects just can not be part of the 
pipeline specification or (without a coder) elements of PCollections. Eg. take 
a look at how JdbcIO works - the row mappers and statement setters are exactly 
this - they deal with something non-serializable (a ResultSet), and Beam 
doesn't prevent them from doing so.

> ElasticsearchIO should deal with documents id
> ---------------------------------------------
>
>                 Key: BEAM-3201
>                 URL: https://issues.apache.org/jira/browse/BEAM-3201
>             Project: Beam
>          Issue Type: Improvement
>          Components: sdk-java-extensions
>            Reporter: Etienne Chauchot
>            Assignee: Chet Aldrich
>
> Today the ESIO only inserts the payload of the ES documents. Elasticsearch 
> generates a document id for each record inserted. So each new insertion is 
> considered as a new document. Users want to be able to update documents using 
> the IO. So, for the write part of the IO, users should be able to provide a 
> document id so that they could update already stored documents. Providing an 
> id for the documents could also help the user on indempotency.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to