Skip to main content

Overview

The Mission Control database is organized into three core models that handle the full data pipeline from event ingestion through customer identity resolution and user management.

Event Model

Data from every connected client is processed through Kafka and stored in the Events table. The tracking tag is responsible for fetching client click data and sending it to Kafka consumers.

Data Flow

Tables

Raw event data ingested through Kafka. This data is further processed by the “Process Data” script for evaluating, analyzing, and scrubbing.
ColumnTypeConstraints
event_id (PK)intNOT NULL
app_idintNOT NULL
platformchar
eventchar
event_idchar
Contains processed user details including orders, visits, and transaction details.
ColumnTypeConstraints
parent_id (PK)intNOT NULL
client_idintNOT NULL
session_idintNOT NULL
event_typechar
event_datetimestamp
user_journey
user_ipaddresschar
Stores credit given to each source that a user has come through. Tracks orders and visits by customer.
ColumnTypeConstraints
id (PK)intNOT NULL
session_id (FK)intNOT NULL
source_creditchar
event_datetimestamp
client_idintNOT NULL
parent_idcharNOT NULL
Records order information by media source for the Customer Interaction platform.
ColumnTypeConstraints
id (PK)intNOT NULL
client_idintNOT NULL
event_datedateNOT NULL
media_sourcechar
Tracks the number of times users visit a specific website, aggregated by date.
ColumnTypeConstraints
id (PK)intNOT NULL
client_idintNOT NULL
event_datedateNOT NULL
media_sourcechar
session_countnumeric

Customer Model

This model retains data from third-party sources like Shopify and HubSpot. The Data Collector script processes data from these sources and stores it in the Integration Customer table.

Data Flow

Tables

Raw customer data from third-party integrations.
ColumnTypeConstraints
id (PK)intNOT NULL
client_idintNOT NULL
source_typechar
created_attimestamp
Manages the mapping and routing of customer data from the Integration Customers table to the eventapp tables. Divided into three sub-tables:eventapp_dataobjectconfig
ColumnType
id_typeint
sourcechar
data_feedchar
page_data_typechar
unique_namechar
mask_displaybool
client_idint
eventapp_idtype
ColumnType
idint
namechar
customerbool
belonging_levelint
recognizedbool
client_idint
eventapp_attribute
ColumnType
id_typeint
namechar
display_orderint
labelchar
group_display_orderint
client_idint
Stores customer credentials (email, customer ID) resolved from the Integration Customers table.
ColumnTypeConstraints
id (PK)intNOT NULL
parent_id (FK)charNOT NULL
child_idcharNOT NULL
sourcechar
client_idintNOT NULL
Retains additional customer details such as name, address, and contact information.
ColumnTypeConstraints
id (PK)intNOT NULL
alt_idint
client_idchar
sortbool
Records customer events (currently stores Gorgias data).
ColumnTypeConstraints
id (PK)intNOT NULL
parent_id (FK)charNOT NULL
event_idchar
sourcechar
client_idcharNOT NULL
event_detailsjson

Users Model

Handles client onboarding and authentication. When a new client registers through the client registration form, their details are stored in the useraccount_client table with a corresponding client_id. Login credentials (email and password) are stored in the users table under the same client_id.

Tables

Client account details created during registration.
ColumnType
companychar
web_urlchar
iconchar
User authentication and profile data.
ColumnTypeConstraints
id (PK)intNOT NULL
passwordint
last_loginint
first_namechar
last_namechar
emailchar
client_idint