You are viewing documentation for an older version.
Profiles Run Process
2 minute read
This guide explains the run process of your Profiles project in detail along with the order of execution of all of its components.
Project assumptions
This guide assumes you have a Profiles project with the following specifications:
userentity- ID stitcher model
entity_vars- Feature table model
- Two Feature views models (default, and using
emailas the primary key) - Custom SQL model to create
entity_vars - Cohort representing high value users
Run process
When you exceute the pb run command to run your Profiles project, it:
- Constructs a DAG to analyze the order in which each component should run based on the model dependencies.
- Compiles the configuration specified in your project files and outputs the SQL files (that will run in your database) in the output directory of your project.
- Creates an input var table for each input table/source and adds an input row ID to it. This is used to create the
entity_vars. - Performs the ID stitching process.
- Creates the
ALLcohort which is a table of distinct list of all themain_idscreated from the most recent ID stitcher run. It serves as the base for the entity var table as well as custom cohorts. - Uses
main_idscreated in the previous step and appends them to the input var tables (created in step 3). - Creates entity var tables which serve as the base for any feature table/views models built around this entity. The default output is a single column containing
main_idsfrom the ID graph. - Creates features for actionable views by calculating
entity_varsandinput_vars. - Joins calculated features (via
entity_vars) to the entity var table. - Creates and materializes the custom cohort list (if defined in the YAML).
- Creates the custom cohort var table (similar to the entity var table) which serves as the target table for feature creation and the base table for any feature table/views created on top of custom cohorts.
- Generates the final tables and views:
- Feature table model and default feature view using the entity var table
- Custom feature views using the default feature views
- Custom cohort views using the cohort var table