AircraftOps
Search
Posts

DynamoDB Datastore

Dataset → Database

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