Amazon Kinesis म्हणजे काय? AWS वर Streaming Data सोप्या भाषेत
Batch = रात्री file. Streaming = events जसे येतील. Amazon Kinesis = AWS वर streaming ingest/process — न झोपणारे pipes.
या chapter मध्ये तुम्ही काय शिकाल
- Streaming vs batch का
- Streams vs Firehose vs Analytics
- Shards/producers/consumers
- MSK/SQS कधी
- Lab, errors, FAQ, interview
1. आधी रोजचं उदाहरण
Hyderabad cab: seconds मध्ये location. Nightly CSV नको. Producers → Kinesis stream; consumers ETA/fraud. Firehose → S3 → Athena.
2. Kinesis का?
हे का लागतं?
SQS = work tickets. Streams = ordered records, many consumers, retention. Analytics ला event firehose.
3. Kinesis family काय?
हे काय आहे?
| Service | काम |
|---|---|
| Data Streams | Shards सह real-time stream |
| Firehose | S3 इ. वर load |
| Analytics | Stream SQL/Flink |
4. Shards सोपं
कसं करायचं (step by step)
- Stream = shards; limits.
- Partition key → shard.
- Iterators / EFO.
- Scale / on-demand.
- Retention for replay.
- IteratorAge monitor.
# Producer sketch (boto3 mental model)
# kinesis.put_record(
# StreamName='rides',
# Data=b'{"rider":"R1","lat":17.4}',
# PartitionKey='R1')
5. Kinesis vs MSK vs SQS
| Choice | कधी |
|---|---|
| Kinesis | AWS-native streaming |
| MSK | Kafka ecosystem |
| SQS | Task queue |
6. Industries
- Mobility: GPS/ETA
- Fintech: payments
- IoT telemetry
- Media clickstream
7. Lab: paper + console tour
Org block नसेल तर ap-south-1 (Mumbai). आधी budget alert.
कसं करायचं (step by step)
- 3 clickstream fields.
- Partition key + hot shard.
- Firehose vs consumer.
- On-demand vs provisioned.
- IteratorAge alarm.
Cleanup (billing थांबवा)
- Lab stream delete.
- Firehose stop.
8. सामान्य errors आणि fixes
प्रत्येक row = खरी चूक. Panic करण्याआधी fix वाचा.
| Error / लक्षण | Fix |
|---|---|
| Hot shard | Better keys. |
| Lag ignore | IteratorAge alarm. |
| Record too big | Split/compress. |
| Dynamic part fail | Test prefixes. |
| No replay plan | Document replay. |
| SQS wrong | Use stream. |
| No encryption | SSE/KMS. |
| Under-scaled | On-demand/reshard. |
| PII clear | Tokenize/encrypt. |
| Lambda loops | Batch/bisect. |
9. Troubleshooting checklist
- Scale/on-demand.
- IAM PutRecord.
- Iterator/sub.
- Bucket policy.
- Region.
- NTP.
10. FAQ
प्र. Kafka?
MSK=Kafka; Kinesis native.
प्र. Direct Firehose?
Many sources direct.
प्र. Retention?
Configurable.
प्र. Exactly-once?
At-least-once + idempotent.
प्र. Cost?
Compress + sample.
11. Interview Q&A
प्र. Shard?
Throughput unit.
प्र. Partition key?
Route + cardinality.
प्र. Streams vs Firehose?
Raw vs delivery.
प्र. IteratorAge?
Consumer lag.
प्र. MSK कधी?
Kafka ecosystem.
प्र. Idempotent?
No double-apply.
12. Tips — English, मराठी आणि हिंदी
Ravindra Bagale's Tip (EN)
Pick the partition key with a whiteboard, not with a coin flip. Hot shards wake you at 3 AM.
Ravindra Bagale's Tip (MR)
Partition key whiteboard वर ठरवा. Hot shards रात्री उठवतात.
Tip (HI)
Partition key व्हाइटबोर्ड पर चुनो — hot shards रात में जगाते हैं।
घरी करून बघा
- 5 phone events.
- 5 bullets compare.
- Sketch.
थोडक्यात सांगायचं तर
- Kinesis = streaming on AWS.
- Ingest/load/process.
- Shards + keys.
- Idempotent + IteratorAge.
उजळणी, मुलाखत आणि तुलना cards
हा lesson काही मिनिटांत revise करा. Cards phone वर save करा किंवा PNG download करा. प्रत्येक card वरचा QR हा lesson उघडतो.











अजून cards: Ravi Sir's Cards.
सराव Tasks
Nairobi Ride हा नैरोबी मधला वाहतूक व्यवसाय आहे. Wanjiru Kamau त्यांचं IT व cloud काम पाहतात. त्यांचे पैसे KES मध्ये मोजले जातात आणि AWS resources af-south-1 Region मध्ये चालतात. खालच्या tasks मध्ये तुम्ही या lesson मध्ये शिकलेलं वापरून त्यांची खरी कामं करता. सगळी नावं, account IDs, IP addresses व numbers सरावासाठी काल्पनिक आहेत.
0 / 16
सोपं Streams
का: Streams.
काय करायचं: Kinesis streams.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
सोपं Stream describe
का: Shards.
काय करायचं: nairobiride-rides describe.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
सोपं Firehose
का: Delivery.
काय करायचं: Firehose list.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
सोपं Shard MB
का: Throughput.
काय करायचं: Shard write MB/s?
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
सोपं SQS vs stream
का: योग्य tool.
काय करायचं: SQS = Kinesis? नाही=0.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
सोपं Partition key
का: Routing.
काय करायचं: Partition key लागते तर 1.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
मध्यम Put record
का: Producer.
काय करायचं: nairobiride-rides R1 file://e.json.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
मध्यम Firehose describe
का: Destination.
काय करायचं: nairobiride-to-s3 describe.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
मध्यम Summary
का: Fast describe.
काय करायचं: nairobiride-rides summary.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
मध्यम GetRecords
का: Consumers.
काय करायचं: stream/nairobiride-rides GetRecords.
- { "Version": "2012-10-17", "Statement": [ ... ] } ने सुरू करा.
- प्रत्येक statement मध्ये Effect, Action व Resource लिहा.
- Task ला लागेल तेवढंच द्या (least privilege).
- Double quotes व commas नीट वापरा. Check answer दाबा.
मध्यम Event JSON
का: Payload.
काय करायचं: rider R1 lat 17.4.
- Task मधल्या top-level keys पासून सुरू करा.
- Child keys 2 spaces ने indent करा (tabs नकोत).
- प्रत्येक property मध्ये task मधली value भरा.
- Check answer दाबा. Keys चा क्रम महत्त्वाचा नाही.
मध्यम IteratorAge
का: Lag.
काय करायचं: IteratorAge seconds?
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
अवघड Shards
का: Hotspots.
काय करायचं: nairobiride-rides shards.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
अवघड Delete stream
का: Lab cost.
काय करायचं: nairobiride-lab delete.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
अवघड PutRecord
का: Scoped producers.
काय करायचं: stream/nairobiride-rides PutRecord.
- { "Version": "2012-10-17", "Statement": [ ... ] } ने सुरू करा.
- प्रत्येक statement मध्ये Effect, Action व Resource लिहा.
- Task ला लागेल तेवढंच द्या (least privilege).
- Double quotes व commas नीट वापरा. Check answer दाबा.
अवघड Retention
का: Replay.
काय करायचं: RetentionHours 24.
- Task मधल्या top-level keys पासून सुरू करा.
- Child keys 2 spaces ने indent करा (tabs नकोत).
- प्रत्येक property मध्ये task मधली value भरा.
- Check answer दाबा. Keys चा क्रम महत्त्वाचा नाही.