DynamoDB Monitoring: Throttling Troubleshooting आणि CloudWatch Metrics
Tunde व Nisha: WCU वाढ ≠ fix. Metrics → hot PK. Hot partitions + capacity links.
या chapter मध्ये तुम्ही काय शिकाल
- Key metrics
- Throttle types
- Useful alarms
- Diagnose loop
- Lab + cleanup
1. रोजचे उदाहरण: highway toll gates
Lanes = partitions. Jam = hot PK. Camera = CloudWatch. Red lights = throttles.
2. Vertical steps
3. हे का लागतं?
हे का लागतं?
Throttle = user pain. Blind WCU waste. Metrics → tune.
4. हे काय आहे?
हे काय आहे?
AWS/DynamoDB metrics + optional Contributor Insights + alarms.
5. कसं करायचं
कसं करायचं (step by step)
- Dashboard.
- Throttle alarm.
- Error alarms.
- Diagnose.
- Hot key proof.
- Verify.
- Capacity review.
6. Throttle decision tree
| Signal | कारण | पहिला fix |
|---|---|---|
| Consumed ≈ Provisioned | Capacity कमी | Scale / on-demand |
| Low consumed + throttle | Hot key | Shard / redesign |
| Latency↑ throttle↓ | Slow query | Fix query |
| UserErrors | App errors | Fix app |
7. Commands: output आणि अर्थ
aws cloudwatch get-metric-statistics --namespace AWS/DynamoDB --metric-name ThrottledRequests --dimensions Name=TableName,Value=lab-dds-mon --start-time 2026-11-01T00:00:00Z --end-time 2026-11-02T00:00:00Z --period 300 --statistics Sum --region ap-south-1
# Output: Datapoints Sum>0 → throttling windows exist
aws cloudwatch get-metric-statistics --namespace AWS/DynamoDB --metric-name ConsumedWriteCapacityUnits --dimensions Name=TableName,Value=lab-dds-mon --start-time 2026-11-01T00:00:00Z --end-time 2026-11-02T00:00:00Z --period 60 --statistics Sum
# Meaning: compare shape to throttles — flat low consume + throttles ⇒ hot key
aws cloudwatch put-metric-alarm --alarm-name lab-dds-throttle --namespace AWS/DynamoDB --metric-name ThrottledRequests --dimensions Name=TableName,Value=lab-dds-mon --statistic Sum --period 60 --evaluation-periods 3 --threshold 1 --comparison-operator GreaterThanOrEqualToThreshold --treat-missing-data notBreaching
# Output: Alarm ARN — wakes you when throttles sustain
Metrics → compare → alarm. Cleanup alarms.
8. Industry stories
- Fintech
- SRE
- Retail
- IoT
- Media
- Gaming
9. Lab
कसं करायचं (step by step)
- Create+burst.
- Pull metrics.
- Alarm+delete.
- Cleanup.
Cleanup
- Table delete.
- Alarm delete.
- Confirm.
10. Ops checklist (ship आधी)
- TTL attr + seconds.
- Delete policy.
- PITR on.
- RPO/RTO doc.
- Multi-region rules.
- DAX miss path.
- Tags.
- Budget alert.
11. Copy-paste CLI starters
export AWS_DEFAULT_REGION=ap-south-1
# TTL status
aws dynamodb describe-time-to-live --table-name ShopApp
# PITR / continuous backups
aws dynamodb describe-continuous-backups --table-name ShopApp
# On-demand backup
aws dynamodb create-backup --table-name ShopApp --backup-name lab-shop-$(date +%Y%m%d)
# List backups
aws dynamodb list-backups --table-name ShopApp
# Global table description (v2)
aws dynamodb describe-table --table-name ShopApp --query 'Table.Replicas'
12. अजून industry stories
- Retail TTL carts
- Bank PITR drill
- Travel GT
- Gaming DAX
- Social edges
- IoT TTL
13. Glossary
| Term | अर्थ |
|---|---|
| TTL | Epoch seconds नंतर delete |
| Soft delete | Flag; item राहतो |
| PITR | Continuous restore window |
| Global Table | Multi-region replica |
| LWW | Last write जिंकते |
| DAX | In-memory cache |
| Adjacency | Relationship edges |
| Fan-out | एक write → अनेक copies |
14. Practice: मोठ्याने explain
- 60s delete modes.
- 60s PITR vs backup.
- 60s GT.
- 60s DAX.
- 60s CartLite.
- 60s social.
- Record ×2.
15. Safe lab hygiene
- Budget alert.
- lab- prefix.
- Delete paid extras.
- GT write plan.
- Tags.
- S3 cleanup.
16. या set ची links
- Modeling
- Transactions
- Streams
- CRUD TTL
- Intro
17. Delete / archive pad
| Need | Prefer | Why |
|---|---|---|
| Undo | Soft flag | Restore |
| Hard expiry | TTL | Auto |
| Cold keep | S3 | Cheap |
| Mistake | PITR | Restore |
18. दहा oral drills
- TTL units?
- Instant?
- PITR window?
- GT conflict?
- Sticky?
- DAX vs?
- Cart PK?
- Lines PK?
- Follow SK?
- Unread GSI?
19. RPO / RTO mini workshop
- RPO minutes.
- RTO.
- Map tools.
- Drill.
- Owner.
20. Cost watch list
- Backup storage
- GT writes
- DAX idle
- Export/S3
- TTL→Streams
21. Project Definition of Done
- Patterns done.
- Samples.
- Lab hygiene.
- Condition/txn.
- Cleanup notes.
- Oral.
22. Batch आतील links
- TTL→Backup
- GT→hot
- DAX after model
- P1 reuse
- P2 reuse
23. Quick self-check
- TTL delay?
- Soft vs hard?
- PITR start?
- GT no?
- DAX≠key fix?
- Cart keys?
- Follow edge?
- Cleanup habit?
24. सामान्य errors आणि fixes
प्रत्येक row = खरी चूक. Panic करण्याआधी fix वाचा.
| Error / लक्षण | Fix |
|---|---|
| Only WCU | +throttle/latency |
| Blind scale | Hot key check |
| Noisy alarm | Eval periods |
| No GSI metrics | Watch GSI |
| No runbook | Attach runbook |
| Prod Scan | No Scan |
| No dimension | TableName |
| CCF≠throttle | UserErrors |
| No verify | Re-check metrics |
25. Troubleshooting checklist
- Hot PK.
- Scale.
- Wrong dim.
- Flapping.
- Latency path.
26. FAQ
प्र. Single table always?
Related patterns साठी हो; religion नाही.
प्र. RDS अजून?
Joins/SQL reports साठी हो — intro chapter.
प्र. Scan वाईट?
Hot path = Query/Get; Scan rare.
प्र. Put/Get कुठे?
CRUD/CLI/SDK chapters — link.
प्र. On-demand never throttle?
Extreme burst/hot key शक्य.
प्र. Contributor Insights?
Optional; metrics first.
प्र. Latency metric?
p99 SuccessfulRequestLatency.
प्र. Pager?
SNS → pager.
प्र. तीन metrics?
Consumed, Throttle, Latency.
प्र. Hot partition?
Throttle + low total consume.
प्र. Capacity vs hot?
Scale vs shard.
प्र. MNC debug?
Metrics→cause→fix→verify.
घरी करून बघा
- Dashboard sketch.
- Runbook.
- GSI alarms.
थोडक्यात सांगायचं तर
- Core metrics.
- Hot key signal.
- Capacity signal.
- Alarm hygiene.
- Series links.
उजळणी, मुलाखत आणि तुलना cards
हा lesson काही मिनिटांत revise करा. Cards phone वर save करा किंवा PNG download करा. प्रत्येक card वरचा QR हा lesson उघडतो.








अजून cards: Ravi Sir's Cards.
सराव Tasks
Vidarbha Cotton Mills हा नागपूर मधला वस्त्रोद्योग व्यवसाय आहे. Ganesh Wankhede त्यांचं IT व cloud काम पाहतात. त्यांचे पैसे INR मध्ये मोजले जातात आणि AWS resources ap-south-1 Region मध्ये चालतात. खालच्या tasks मध्ये तुम्ही या lesson मध्ये शिकलेलं वापरून त्यांची खरी कामं करता. सगळी नावं, account IDs, IP addresses व numbers सरावासाठी काल्पनिक आहेत.
0 / 16
सोपं Throttle
का: Metric.
काय करायचं: Throttle metric तर 1.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
सोपं Hot
का: Signal.
काय करायचं: Hot key signal तर 1.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
सोपं Scale
का: Signal.
काय करायचं: Scale signal तर 1.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
सोपं Latency
का: Metric.
काय करायचं: Latency तर 1.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
सोपं Describe
का: CLI.
काय करायचं: describe.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
सोपं Metrics
का: Names.
काय करायचं: keys.
- Task मधल्या top-level keys पासून सुरू करा.
- Child keys 2 spaces ने indent करा (tabs नकोत).
- प्रत्येक property मध्ये task मधली value भरा.
- Check answer दाबा. Keys चा क्रम महत्त्वाचा नाही.
सोपं No Scan
का: Anti.
काय करायचं: No Scan तर 1.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
मध्यम GSI
का: Scope.
काय करायचं: GSI throttle तर 1.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
मध्यम On-demand
का: Truth.
काय करायचं: Still throttle तर 1.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
मध्यम Alarm
का: Hygiene.
काय करायचं: Eval periods तर 1.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
मध्यम UserErrors
का: Classify.
काय करायचं: UserErrors तर 1.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
मध्यम Fix
का: Tree.
काय करायचं: keys.
- Task मधल्या top-level keys पासून सुरू करा.
- Child keys 2 spaces ने indent करा (tabs नकोत).
- प्रत्येक property मध्ये task मधली value भरा.
- Check answer दाबा. Keys चा क्रम महत्त्वाचा नाही.
अवघड Runbook
का: Ops.
काय करायचं: Runbook तर 1.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
अवघड Verify
का: Close.
काय करायचं: Verify तर 1.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
अवघड Dimension
का: CW.
काय करायचं: TableName तर 1.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
अवघड Lab
का: Hygiene.
काय करायचं: Delete lab तर 1.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.