-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Alternator: Support Kinesis Streams #8786
Comments
In the last year, four new features were added to DynamoDB which we don't yet support - Kinesis Streams, PartiQL, Contributor Insights and Export to S3. Let's document them as missing Alternator features, and point to the four newly-created issues about these features. Refs #8786 Refs #8787 Refs #8788 Refs #8789 Signed-off-by: Nadav Har'El <nyh@scylladb.com> Message-Id: <20210603125825.1179171-1-nyh@scylladb.com>
In the last year, four new features were added to DynamoDB which we don't yet support - Kinesis Streams, PartiQL, Contributor Insights and Export to S3. Let's document them as missing Alternator features, and point to the four newly-created issues about these features. Refs #8786 Refs #8787 Refs #8788 Refs #8789 Signed-off-by: Nadav Har'El <nyh@scylladb.com> Message-Id: <20210603125825.1179171-1-nyh@scylladb.com>
In the last year, four new features were added to DynamoDB which we don't yet support - Kinesis Streams, PartiQL, Contributor Insights and Export to S3. Let's document them as missing Alternator features, and point to the four newly-created issues about these features. Refs #8786 Refs #8787 Refs #8788 Refs #8789 Signed-off-by: Nadav Har'El <nyh@scylladb.com> Message-Id: <20210603125825.1179171-1-nyh@scylladb.com>
In the last year, four new features were added to DynamoDB which we don't yet support - Kinesis Streams, PartiQL, Contributor Insights and Export to S3. Let's document them as missing Alternator features, and point to the four newly-created issues about these features. Refs #8786 Refs #8787 Refs #8788 Refs #8789 Signed-off-by: Nadav Har'El <nyh@scylladb.com> Message-Id: <20210603125825.1179171-1-nyh@scylladb.com>
In the last year, four new features were added to DynamoDB which we don't yet support - Kinesis Streams, PartiQL, Contributor Insights and Export to S3. Let's document them as missing Alternator features, and point to the four newly-created issues about these features. Refs scylladb#8786 Refs scylladb#8787 Refs scylladb#8788 Refs scylladb#8789 Signed-off-by: Nadav Har'El <nyh@scylladb.com> Message-Id: <20210603125825.1179171-1-nyh@scylladb.com>
The new "Kinesis Streams" differs from the older "DynamoDB Streams" not only in API, there are also semantic differences, which are documented in here: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/streamsmain.html Here are some of the more interesting differences I noticed:
The document also says that you can enable both streaming models on the same table. |
When we discussed this last (spring? - I mentioned it regarding v2 (3?) of AWS sdk & kinesis), we decided not to support kinesis. At least not yet. Should we change this approach? |
Nothing really changed - I don't think we should rush to do this. I just think it's important to document all the missing features in Alternator, and this is one of them. You're right that Amazon's KCL library version 2 supports only the new Kinesis Streams API, not the older DynamoDB Streams API, so I'm guessing that in the long run, that will become the reason why we will need to implement the new API.
Indeed. The document I linked above might have over-played this one-year thing. I checked again, and it appears that while Kinesis Streams does allow you to keep up to one year of streams, that's not the default, and the default is still 24 hours: According to https://aws.amazon.com/kinesis/data-streams/faqs/: "By default, Records of a stream are accessible for up to 24 hours from the time they are added to the stream. You can raise this limit to up to 7 days by enabling extended data retention or up to 365 days by enabling long-term data retention." |
DynamoDB used to support change-data-capture to DynamoDB Streams, which is very similar to Amazon Kinesis, but starting in November 2020, it is possible to use real Kinesis Data Streams to record changes, and according to @elcallio the new 2.0 version of Amazon Kinesis Client Library (KCL) supports only these Kinesis Streams, not the old DynamoDB Streams.
The question is what, if anything, we need to add to Alternator so that an application like KCL which supports only Kinesis Streams can make use of Alternator's Streams. The Kinesis API appears very similar to be a superset of the old DyanamoDB Streams API and the question is what additional operations we need to implement.
Moreover, enabling a Kinesis Stream requires a different process now, and also new DynamoDB operations:
DescribeKinesisStreamingDestination
,DisableKinesisStreamingDestination
, andEnableKinesisStreamingDestination
.The text was updated successfully, but these errors were encountered: