prayagupadhyay
prayagupadhyay

Reputation: 31262

query/filter the events in kinesis stream

I am working on Kinesis-streams for my architecture, after failing to use because of its ridiculous infrastructure need.

Anyway, I have Kinesis producers, consumers working fine(inspite of high latency). I have been doing my consuming the stream to verify that an event is written to the stream.

But what I'm looking for is a Stream dashboard, which can be used by non-technical people.

Because in production, people like managers/ (even lazy debuggers), obviously do not want to write code to view the events in stream, instead would be helpful to see in a dashboard.

I don't see the Kinesis-streams have a querying capability.

As a solution for this capability,

enter image description here

I tried importing the source kinesis-stream ComponentTest_Producer_Stream_2_6_117 which have JSON events in format {"eventType": "KinesisEvent", "someField" : "some value", "createdTime" : "some data"}, to kinesis-analytics.

Somehow it auto detected the events and populates in dashboard, (after multiple tries)

kinesis-analytics

My questions are

1) What data-store Kinesis-stream uses for storing the events?

2) What strategies are recommended for querying/ filtering events in a kinesis-stream.

Upvotes: 3

Views: 7267

Answers (2)

ketan vijayvargiya
ketan vijayvargiya

Reputation: 5659

I think the main problem that you are trying to solve is how to build a dashboard that your teammates can use to quickly peek into the system. I can suggest two options:

  • Run a separate consumer application that processes data and pushes to a data store such as DynamoDB. You can build a lightweight UI that surfaces this information. One sort-of-relevant example can be found here.
  • Load Kinesis data into an Elasticsearch cluster (relevant documentation here) and use Kibana for visualization. Kibana is open-source, supremely powerful and allows easy custom aggregations on the UI.

Upvotes: 2

Related Questions