[英]How to serialize and deserialize DynamoDB Stream Record object
We are planning to use DynamoDB Stream, part of stream processing we need com.amazonaws.services.dynamodbv2.model.Record object to be serialized and deserialized.我们计划使用DynamoDB Stream,部分stream处理我们需要com.amazonaws.services.dynamodbv2.model.Record object进行序列化和反序列化。 I know we can do java ObjectOutputStream and ObjectInputStream, but this does not suffice our needs.
我知道我们可以做 java ObjectOutputStream 和 ObjectInputStream,但这并不能满足我们的需求。
The need is we have to manage versions in deserializer and serializer because if there is a change in Record structure or new version, we can not upgrade all the services which use deserializer to upgrade at one shot.需要的是我们必须在反序列化器和序列化器中管理版本,因为如果 Record 结构或新版本发生变化,我们无法一次性升级所有使用反序列化器升级的服务。
Is there a way to do this?有没有办法做到这一点?
I think I found a solution.我想我找到了解决方案。
Serialize : new RecordAdapter(record).getData序列化:新的 RecordAdapter(record).getData
Deserialize: new RecordObjectMapper().readValue(new String(bytes), Record.class)反序列化:new RecordObjectMapper().readValue(new String(bytes), Record.class)
Thank you, Jason谢谢你,杰森
For anyone coming back to this in 2022, the classes are here: https://javadoc.io/static/com.amazonaws/dynamodb-streams-kinesis-adapter/1.5.0/index.html?com/amazonaws/services/dynamodbv2/streamsadapter/model/RecordAdapter.html对于 2022 年回到这里的任何人,课程在这里: https://javadoc.io/static/com.amazonaws/dynamodb-streams-kinesis-adapter/1.5.0/index.html?com/amazonaws/services/ dynamodbv2/streamsadapter/模型/RecordAdapter.html
in the dynamodb-streams-kinesis-adapter
library在
dynamodb-streams-kinesis-adapter
库中
project is here: https://github.com/awslabs/dynamodb-streams-kinesis-adapter项目在这里: https://github.com/awslabs/dynamodb-streams-kinesis-adapter
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.