Exploring AWS Solutions: Stream processing for 1000+ devices – Kinesis Data Streams, Firehose or Alternative?

0

I'm designing a system that will listen to over 1000 streams (1 for each device), and should be able to process the streamed data to take action when needed. I need the processing and taking action to be near-real-time, but not actually real time.

All devices streams start from a RPC call, so the system must:

  1. Send the RPC call to attach it's session to the event stream.
  2. Active listen to the stream, if certain events are received trigger a lambda (or make an API call, tbd)
  3. Send keep-alive calls to maintain the session, every X seconds.
  4. Active listen to the stream 24/7/365 No long term storage required.

I don't know if I can use Firehose for this. Kinesis Data Stream seem to be a better match, however I don't know:

  1. if it can make the RPC calls (start and keep alive), or if I would need another service in between.
  2. If I would charged with 1000 streams per hour + data ingested? If so that would make it not financially feasible.

Finally, I'm also open to other services ideas

1개 답변
0

You can use Amazon Kinesis Data Streams for ingesting and processing high-velocity data streams.

However, Kinesis Data Streams doesn’t directly handle RPC calls or session management. Consider using AWS Lambda to process incoming data from Kinesis.

For RPC calls and session management, you’ll need an additional service (e.g., an API Gateway).

Keep in mind the cost implications of using Kinesis Data Streams with 1000 streams.

profile picture
전문가
답변함 3달 전

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

질문 답변하기에 대한 가이드라인

관련 콘텐츠