DynamoDB Datastore
Technical reference for DynamoDB tables used by the AircraftOps platform, including the core single-table datastore, job tracking tables, and audit logging event tables.
Core Data Architecture
Application Writes
↓
Core Entity Table (Single-table design)
↓
DynamoDB Streams
↓
Index / Analytics / Queue Pipelines
The core table acts as the authoritative source of truth for application data, while supporting flexible entity modeling through partition-key-based namespacing and secondary indexing strategies.
CoreTable
Primary single-table datastore containing all core platform entities, including aircraft records, registry data, image metadata, and related application objects.
- Primary Keys: PK (partition), SK (sort)
- Indexes: GSI1, GSI2, GSI3 for alternate query access patterns
- Billing Mode: On-demand (PAY_PER_REQUEST)
- Streams: NEW_AND_OLD_IMAGES enabled for change processing
- TTL: delete_at attribute for automated record expiration
JobsTable
Operational jobs table used for tracking ingestion jobs, background tasks, pipeline progress, and scheduled workflow execution metadata.
- Primary Keys: PK, SK
- Indexes: GSI1 for workflow lookup queries
- TTL: ttl attribute for automatic job expiration
- Usage: ingestion pipelines, async processing state tracking
AuditEventsTable
Stores structured audit log events capturing application actions, user operations, and system activity. Records are streamed for downstream analytics processing and long-term retention pipelines.
- Primary Keys: PK, SK
- Indexes: GSI1, GSI2, GSI3 for audit filtering workflows
- Streams: NEW_IMAGE enabled for log pipeline ingestion
- TTL: expires_at attribute for retention enforcement
- Usage: compliance logging, analytics ingestion, monitoring
Stream Processing Integration
DynamoDB Streams are enabled on core and audit tables to emit change events whenever records are inserted, updated, or deleted. These change streams drive asynchronous processing workflows including search indexing, analytics ingestion, and event logging pipelines.
Application Write
↓
DynamoDB Table
↓
DynamoDB Streams
↓
Stream Processor (Lambda)
↓
Queue / Index / Analytics Pipelines
Operational Notes
- The core table implements a multi-entity single-table design pattern
- Secondary indexes support alternative query access patterns across entity types
- Streams enable event-driven indexing and analytics pipelines
- TTL attributes automatically expire ephemeral records and operational job entries
- On-demand billing mode ensures ingestion workloads scale without capacity planning