Max Charas created BEAM-6820:
--------------------------------
Summary: Custom Row-Object mapper implementation for CassandraIO
Key: BEAM-6820
URL: https://issues.apache.org/jira/browse/BEAM-6820
Project: Beam
Issue Type: Improvement
Components: io-java-cassandra
Reporter: Max Charas
The current Cassandra source sink is tightly coupled to the Datastax Object
Mapper. [This requires
users|https://docs.datastax.com/en/developer/java-driver/3.1/manual/object_mapper/]
of the sink to provide a POJO describing the table in Cassandra. Although the
POJO is a easy and powerful way to describe the table it does requires users to
always recompile the pipeline for each change in the table definition.
I suggest adding a abstraction layer that allows users to inject their own
mapper implementation. One example use would be a mapper that works with a
generic
[Row|https://beam.apache.org/releases/javadoc/2.4.0/org/apache/beam/sdk/values/Row.html]
implementation rather than a compile-time POJO.
This abstraction layer could be implemented by simply supplying a MapperFactory
through the Sink/Source builder.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)