Skip to content

Writing Drone Telemetry to an In Memory Database

Dave Walker edited this page Jan 24, 2020 · 7 revisions

About In-Memory SQL Capture

The SQL capture implementation makes use of Entity Framework Core.

The TelloCommander.Data namespace includes a collector that hooks into the DroneStatusUpdated event provided by the status monitor and writes status information to a SQL database.

The TelloCommander.Data.InMemory namespace includes a database context and associated factory for writing telemetry to an in-memory database. It's envisioned primarily for use in unit testing but could be used for capture to a transient in-memory database, if required.

Database Diagram

Drone Telemetry Database Diagram

Table Description
Drones Contains a text description of each drone for which a session has been recorded. Each drone may have multiple sessions
Sessions Each session record acts as a named "container" for the data points it contains
Properties Named properties captured from the drone e.g. "h" for height
DataPoints The values for data points captured in the associated session

The "Start" column on the session record is of type Date(Time) and gives the starting date and time for the session. The "Time" column on the Data Point record gives the time after the start date, in milliseconds, when the data point was recorded.