【发布时间】:2017-07-25 01:07:59
【问题描述】:
我正在为我的event-sourcing 架构开发 Kinesis-streams,但由于其荒谬的基础设施需求而未能使用 kafka。
无论如何,我有 Kinesis 生产者、消费者工作正常(尽管延迟很高)。我一直在做我的component-testing 使用流来验证事件是否已写入流。
但我要找的是 Stream 仪表板,非技术人员也可以使用。
因为在生产中,像管理人员/(甚至是懒惰的调试器)这样的人显然不想编写代码来查看流中的事件,而是在仪表板中查看会有所帮助。
我认为 Kinesis-streams 没有查询功能。
作为此功能的解决方案,
我可以在将事件写入 kinesis 后立即使用它并应用到另一个支持查询/过滤功能的数据存储(例如 MongoDB、DynamoDB),这需要我花时间在紧迫的时间内实施。
或者,将 kinesis 事件流式传输到 kinesis-analytics 也可以解决我的问题,尽管 Analytics 不是为此目的而设计的。而且它超级慢,最多需要 15/20 秒才能显示在仪表板中,也不会显示新事件。
我尝试将具有 {"eventType": "KinesisEvent", "someField" : "some value", "createdTime" : "some data"} 格式的 JSON 事件的源 kinesis-stream ComponentTest_Producer_Stream_2_6_117 导入到 kinesis-analytics。
它以某种方式自动检测到事件并填充到仪表板中,(多次尝试后)
- 我也不确定 Cloudwatch 是否可以解决这个问题,我的问题完全没有意义?亚马逊 WS 世界中的工具太多了,我对它超级陌生。
我的问题是
1) Kinesis-stream 使用什么数据存储来存储事件?
2) 推荐在运动流中查询/过滤事件的策略。
【问题讨论】:
标签: event-sourcing kafka component-testing kinesis-analytics amazon-web-services event-sourcing amazon-kinesis