Ravindra BagaleCourses & study guides English Track your progress

Project: IoT Time-Series, TTL आणि Rollups — DynamoDB

Ananya व Diego: PulseLite. TTL + Streams + sharding apply.

या chapter मध्ये तुम्ही काय शिकाल

  • Shard
  • TTL raw
  • Rollups
  • Industries
  • Lab

1. रोजचे उदाहरण: weather notebook

Raw TTL; averages rollup; shard spines.

2. Vertical steps

Patterns -> Keys -> Ingest -> Rollup -> CleanupPatternsKeysIngestRollupCleanup
Cleanup

3. हे का लागतं?

हे का लागतं?

Hot PK + endless raw = pain. Shard+TTL+rollup.

4. हे काय आहे?

हे काय आहे?

Sharded raw + ROLLUP#hour; Streams worker.

5. कसं करायचं

कसं करायचं (step by step)

  1. Patterns.
  2. Shard+SK.
  3. Table+TTL.
  4. Ingest.
  5. Rollup.
  6. Query+cleanup.

6. Key sketch

EntityPKSK
RawDEVICE#d1#2epochMs
RollupDEVICE#d1ROLLUP#hour
MetaDEVICE#d1META

7. Commands

aws dynamodb create-table --table-name lab-ddn-telemetry \
  --attribute-definitions AttributeName=PK,AttributeType=S AttributeName=SK,AttributeType=S \
  --key-schema AttributeName=PK,KeyType=HASH AttributeName=SK,KeyType=RANGE \
  --billing-mode PAY_PER_REQUEST --region ap-south-1
aws dynamodb update-time-to-live --table-name lab-ddn-telemetry \
  --time-to-live-specification "Enabled=true, AttributeName=expires_at"
aws dynamodb put-item --table-name lab-ddn-telemetry --item '{
 "PK":{"S":"DEVICE#d1#0"},"SK":{"S":"1730000000123"},
 "temp":{"N":"31.2"},"expires_at":{"N":"1730003600"}}'
aws dynamodb query --table-name lab-ddn-telemetry \
  --key-condition-expression "PK = :pk AND SK BETWEEN :a AND :b" \
  --expression-attribute-values '{":pk":{"S":"DEVICE#d1#0"},":a":{"S":"1730000000000"},":b":{"S":"1730001000000"}}'
# Output: window of points. Meaning: time Query on shard; rollups queried separately.

TTL seconds; shard; async rollup.

8. Industry stories

  • Mfg
  • Fleet
  • Energy
  • Agri
  • Health
  • City

9. Lab

कसं करायचं (step by step)

  1. Start.
  2. Rollup.
  3. Cleanup.

Cleanup

  1. Lab delete करा.
  2. Confirm gone.

10. Ops checklist (ship आधी)

  1. TTL attr + seconds.
  2. Delete policy.
  3. PITR on.
  4. RPO/RTO doc.
  5. Multi-region rules.
  6. DAX miss path.
  7. Tags.
  8. 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अर्थ
TTLEpoch seconds नंतर delete
Soft deleteFlag; item राहतो
PITRContinuous restore window
Global TableMulti-region replica
LWWLast write जिंकते
DAXIn-memory cache
AdjacencyRelationship edges
Fan-outएक write → अनेक copies

14. Practice: मोठ्याने explain

  1. 60s delete modes.
  2. 60s PITR vs backup.
  3. 60s GT.
  4. 60s DAX.
  5. 60s CartLite.
  6. 60s social.
  7. Record ×2.

15. Safe lab hygiene

  • Budget alert.
  • lab- prefix.
  • Delete paid extras.
  • GT write plan.
  • Tags.
  • S3 cleanup.
  • Modeling
  • Transactions
  • Streams
  • CRUD TTL
  • Intro

17. Delete / archive pad

NeedPreferWhy
UndoSoft flagRestore
Hard expiryTTLAuto
Cold keepS3Cheap
MistakePITRRestore

18. दहा oral drills

  1. TTL units?
  2. Instant?
  3. PITR window?
  4. GT conflict?
  5. Sticky?
  6. DAX vs?
  7. Cart PK?
  8. Lines PK?
  9. Follow SK?
  10. Unread GSI?

19. RPO / RTO mini workshop

  1. RPO minutes.
  2. RTO.
  3. Map tools.
  4. Drill.
  5. Owner.

20. Cost watch list

  • Backup storage
  • GT writes
  • DAX idle
  • Export/S3
  • TTL→Streams

21. Project Definition of Done

  1. Patterns done.
  2. Samples.
  3. Lab hygiene.
  4. Condition/txn.
  5. Cleanup notes.
  6. Oral.
  • TTL→Backup
  • GT→hot
  • DAX after model
  • P1 reuse
  • P2 reuse

23. Quick self-check

  1. TTL delay?
  2. Soft vs hard?
  3. PITR start?
  4. GT no?
  5. DAX≠key fix?
  6. Cart keys?
  7. Follow edge?
  8. Cleanup habit?

24. सामान्य errors आणि fixes

प्रत्येक row = खरी चूक. Panic करण्याआधी fix वाचा.

Error / लक्षणFix
HotShard
msSeconds
FatS3
SyncAsync
DupIdempotent
ScanQuery
ClockServer
LeaveDelete
RewriteLink

25. Troubleshooting checklist

  1. Shards.
  2. Enable.
  3. Idempotent.
  4. Units.
  5. Lag.

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.

प्र. Timestream?

Often both.

प्र. Shards?

Metric-driven.

प्र. GSI all?

Rollups first.

प्र. Export?

Yes S3.

27. Interview Q&A

प्र. Raw key?

Shard+ts.

प्र. TTL?

Cap raw.

प्र. Rollup?

Async.

प्र. Hot?

Shard.

प्र. MNC cost

TTL+S3.

प्र. Order

Version.

28. Tips — English, मराठी आणि हिंदी

Ravindra Bagale's Tip (EN)

Shard writes, TTL raw, Query rollups — never Scan the ocean.

Ravindra Bagale's Tip (MR)

Shard + TTL raw + rollup Query.

Tip (HI)

शार्ड लिखें, raw पर TTL, rollup Query करें।

घरी करून बघा

  1. Shards.
  2. Lab.
  3. Alarms.

थोडक्यात सांगायचं तर

  1. Keys.
  2. TTL.
  3. Rollups.
  4. Cleanup.

उजळणी, मुलाखत आणि तुलना cards

हा lesson काही मिनिटांत revise करा. Cards phone वर save करा किंवा PNG download करा. प्रत्येक card वरचा QR हा lesson उघडतो.

उजळणी card: Shard writes. Hot device. Shard + time SK. Pick → Put → Query → watch. Metric-driven.
उजळणी card: Shard writes · PNG download करा · Card page उघडा
उजळणी card: TTL + rollups. Raw forever. TTL + rollup. TTL → worker → Query → export. Query rollups.
उजळणी card: TTL + rollups · PNG download करा · Card page उघडा
तुलना: Raw only vs Rollup items. Raw only: Dashboard कच्चा Scan. Rollup items: ROLLUP#hour Query.
तुलना: Raw only vs Rollup items · PNG download करा · Card page उघडा
तुलना: Single device PK vs Sharded PK. Single device PK: एक PK गरम होतो. Sharded PK: #shard spread.
तुलना: Single device PK vs Sharded PK · PNG download करा · Card page उघडा
मुलाखत card: Enable TTL. Not enabled. Enable seconds. Create → enable → put → describe → delete.
मुलाखत card: Enable TTL · PNG download करा · Card page उघडा
मुलाखत card: Pick shards. Guess 1. Metric-driven shards. Test → watch → bump → doc.
मुलाखत card: Pick shards · PNG download करा · Card page उघडा
मुलाखत card: Hourly rollup. Sync agg. Async rollup. Paper → Put → Query → DLQ.
मुलाखत card: Hourly rollup · PNG download करा · Card page उघडा
मुलाखत card: Cold export. No archive. Export then TTL. Retention → export → TTL → verify.
मुलाखत card: Cold export · PNG download करा · Card page उघडा

अजून cards: Ravi Sir's Cards.

सराव Tasks

या scenario बद्दल

Vidarbha Cotton Mills हा नागपूर मधला वस्त्रोद्योग व्यवसाय आहे. Ganesh Wankhede त्यांचं IT व cloud काम पाहतात. त्यांचे पैसे INR मध्ये मोजले जातात आणि AWS resources ap-south-1 Region मध्ये चालतात. खालच्या tasks मध्ये तुम्ही या lesson मध्ये शिकलेलं वापरून त्यांची खरी कामं करता. सगळी नावं, account IDs, IP addresses व numbers सरावासाठी काल्पनिक आहेत.

0 / 16

सोपं Shard

का: Hot.

काय करायचं: Shard तर 1.

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.

सोपं Time SK

का: Sort.

काय करायचं: Time SK तर 1.

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.

सोपं TTL

का: Cost.

काय करायचं: Raw TTL तर 1.

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.

सोपं Rollup

का: Agg.

काय करायचं: Rollup तर 1.

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.

सोपं Describe

का: CLI.

काय करायचं: describe.

कसं करायचं:
  1. Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
  2. aws लिहा, मग service चं नाव, मग operation (action शब्द).
  3. प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
  4. Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.

सोपं Keys

का: Sketch.

काय करायचं: pk/sk.

कसं करायचं:
  1. Task मधल्या top-level keys पासून सुरू करा.
  2. Child keys 2 spaces ने indent करा (tabs नकोत).
  3. प्रत्येक property मध्ये task मधली value भरा.
  4. Check answer दाबा. Keys चा क्रम महत्त्वाचा नाही.

सोपं Export

का: Cold.

काय करायचं: Export first तर 1.

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.

मध्यम Seconds

का: Trap.

काय करायचं: Seconds तर 1.

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.

मध्यम Async

का: Path.

काय करायचं: Async तर 1.

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.

मध्यम S3

का: Size.

काय करायचं: S3 pointer तर 1.

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.

मध्यम No Scan

का: Anti.

काय करायचं: No Scan तर 1.

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.

मध्यम Rollup

का: Shape.

काय करायचं: keys.

कसं करायचं:
  1. Task मधल्या top-level keys पासून सुरू करा.
  2. Child keys 2 spaces ने indent करा (tabs नकोत).
  3. प्रत्येक property मध्ये task मधली value भरा.
  4. Check answer दाबा. Keys चा क्रम महत्त्वाचा नाही.

अवघड Idempotent

का: CDC.

काय करायचं: Idempotent तर 1.

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.

अवघड More shards

का: Scale.

काय करायचं: More shards तर 1.

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.

अवघड Lab

का: Hygiene.

काय करायचं: Delete lab तर 1.

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.

अवघड Link

का: Reuse.

काय करायचं: Link chapters तर 1.

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.