无法在本地启用Kinesis数据流作为DynamoDB的目标流

发布于 2025-02-11 03:58:36 字数 1666 浏览 2 评论 0 原文

我有一个项目,必须在其中使用运动动力学数据流捕获DynamoDB表更改事件。 以下是我在本地上执行的操作顺序:

  1. 启动DDB容器: aws-dynamodb-local 。在端口8000上
  2. 启动运动式容器: aws-kinesis-local 。在端口8001上
  3. 创建一个新的DDB表:
aws dynamodb create-table \
    --table-name Music \
    --attribute-definitions \
        AttributeName=Artist,AttributeType=S \
        AttributeName=SongTitle,AttributeType=S \
    --key-schema \
        AttributeName=Artist,KeyType=HASH \
        AttributeName=SongTitle,KeyType=RANGE \
    --provisioned-throughput \
        ReadCapacityUnits=5,WriteCapacityUnits=5 \
    --table-class STANDARD --endpoint-url=http://localhost:8000
  1. 创建一个新的流:
aws kinesis create-stream --stream-name samplestream --shard-count 3 
    --endpoint-url=http://localhost:8001

  1. 启用表上的运动流以捕获变更事件:
aws dynamodb enable-kinesis-streaming-destination \
    --table-name Music \
    --stream-arn arn:aws:kinesis:us-east-1:000000000000:stream/samplestream 
    --endpoint-url=http://localhost:8000

An error occurred (UnknownOperationException) when calling the EnableKinesisStreamingDestination operation:

有人可以在这里帮助我了解我在这里做错了什么吗? 如何在本地中解决上述未知访问感应?

LocalStack提供了一种简单的配置方法,但是LocalStack的DynamoDB的性能非常差,因此我试图为设置找到另一种方法。

I have a project in which I have to capture the DynamoDB table change events using the Kinesis Data Streams.
Here are the sequence of operations that I am performing on my local:

  1. Start the DDB container: aws-dynamodb-local. On port 8000
  2. Start the Kinesis container: aws-kinesis-local. On port 8001
  3. Create a new DDB table:
aws dynamodb create-table \
    --table-name Music \
    --attribute-definitions \
        AttributeName=Artist,AttributeType=S \
        AttributeName=SongTitle,AttributeType=S \
    --key-schema \
        AttributeName=Artist,KeyType=HASH \
        AttributeName=SongTitle,KeyType=RANGE \
    --provisioned-throughput \
        ReadCapacityUnits=5,WriteCapacityUnits=5 \
    --table-class STANDARD --endpoint-url=http://localhost:8000
  1. Create a new stream:
aws kinesis create-stream --stream-name samplestream --shard-count 3 
    --endpoint-url=http://localhost:8001

  1. Enable the Kinesis streams on the table to capture change events:
aws dynamodb enable-kinesis-streaming-destination \
    --table-name Music \
    --stream-arn arn:aws:kinesis:us-east-1:000000000000:stream/samplestream 
    --endpoint-url=http://localhost:8000

An error occurred (UnknownOperationException) when calling the EnableKinesisStreamingDestination operation:

Can anyone help me here to understand what I am doing wrong here?
How can I resolve the above UnknownOperationException in my local?

Localstack provides a easy way to configure this but the DynamoDB of Localstack has very poor performance, so I am trying to find an alternate way for the setup.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

拥抱没勇气 2025-02-18 03:58:36

截至写作时,DynamoDB本地和 https://github.com/saidsefef /aws-kinesis-local 。 DynamoDB Local本身不支持流向今天的本地运动式数据流(仅支持DynamoDB流)。

As of writing, there is no integration support between DynamoDB Local and https://github.com/saidsef/aws-kinesis-local. DynamoDB Local itself does not support streaming to a local Kinesis Data Stream today (only supports DynamoDB Stream).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文