Database Design
On this page
Databases are an important component of software that manages large sets of data. Used effectively, they can make data management incredibly efficient.
Horizons Navigator utilizes a database with a focus on efficient data storage and easy understanding of the API.
Data privacy
As stated in the privacy policy, we maintain user privacy and data transparency. We do not collect non-consentual or aggregated user data or stored in the database.
Tables
The database layout consists of three tables
- Users
tblUsers - Locations
tblLocations - Voyages
tblVoyages
Users
Data storage local on the user’s computer, users can opt in to data syncing with the StarCenter Server. Multiple accounts can be installed and used on one installation, as detailed by User Management.
Table structure
| Field name | Description | Data Type |
|---|---|---|
| Username | Unique user chosen display name | Short text |
| UserHash | In-app generated identification hash used for authentication | Text |
| UserID | Unique generated identifier of every user | Short text |
| User email address | Short text | |
| ContactNum | User cell phone number | Short text |
| DateRegistered | Date of user registration | Short text |
Locations
Locations, stored and updated frequently are stored in the tblLocations table.
Locations are identified by unique identifies using a string of letters and
numbers such as ‘L773’, these are represented by the LocationID field.
More information on LocationIDs
Table structure
| Field name | Description | Data Type |
|---|---|---|
| LocationID | Location identifier | Short text |
| Name | Location name. Not every location will have a name, many are identifiable solely by ID | Short text |
| DistanceFromEarth | Distance between the Earth and the object, used with other metrics for navigation | Number |