Projections
A projection is a managed data workflow that publishes a curated or consumption-ready dataset from selected source entities and attributes into a target entity. Use the Projections screen to define what to publish, whether it refreshes in real time (Live) or on a schedule (Batch), and to monitor, pause, or resume each projection’s underlying job.
Projections are the last hop of the pipeline: they take entities Nexa has already curated and materialize a business-facing dataset (all projections here write to the consumption layer). Creating and editing projections is restricted to the dev environment — the Add, Edit, and Delete controls only appear there.
The Projections list
Section titled “The Projections list”Each row represents one projection:
| Column | Meaning |
|---|---|
| Projection Name | The projection’s name |
| Alias | Its generated alias |
| Source Entities | Source entity pills; the first two show, then a +N more expander |
| Target Layer | curated (red badge) or consumption (blue badge) |
| Type | live (green badge) or batch (blue badge) |
| Status | The projection state (see below) |
| Actions | Play/pause, view, edit, and delete controls |
Status values
Section titled “Status values”| Status | Badge |
|---|---|
running |
Green |
completed |
Green |
suspended |
Yellow |
paused |
Yellow |
pending |
Yellow |
failed |
Red |
Filtering
Section titled “Filtering”Open Filter to narrow the list:
- Projection Type — All types, Live, or Batch.
- Projection Mode — All Modes, Legacy Projections, or Non-legacy projections.
- Sort By — Created Date, Last Modified, or Projection Name, ascending or descending.
Search by projection name with the search box.
Row actions
Section titled “Row actions”- Play/Pause — pauses or activates the projection’s job (shown only when the projection has a job).
- View — opens the underlying job panel with its Jobs Details and Runs tabs, so you can inspect run history.
- Edit — reopens the create form in edit mode (dev only).
- Delete — prompts Are you sure you want to delete this projection? before removing it (dev only).
Create a projection
Section titled “Create a projection”Select Add to open the Create New Projection panel.
-
Choose the projection style. Set Legacy Projection to True or False. Choose True to generate mappings from an uploaded C360 (Customer 360) model file; choose False to define a standard projection by hand.
-
Name and describe it (standard projections). Enter a Projection Name (up to 100 characters) and a Projection Description (up to 250 characters). For a legacy projection, upload the model file instead under Upload Legacy Model (JSON only) — one projection is created per table in the model.
-
Select the projection type. Pick one:
- Live — real-time data processing. Selecting Live clears any schedule.
- Batch — scheduled data processing. Selecting Batch reveals the schedule builder.
-
Set the schedule (Batch only). Use the schedule builder to define a cron expression (see below). You must save a schedule before you can continue.
-
Select the source. Under Select Source, choose entities or attributes, grouped by entity. Selecting a group header toggles all of its attributes. ETL (extract, transform, load) logic for these sources is authored on the Canvas.
-
Name the target. Enter a target entity name under Enter Target Entity Name.
-
Set options and save. Optionally enable PII Suppressed to exclude PII (personally identifiable information) from the projection, then select Create Projection. Editing an existing projection shows Update Projection instead.
Batch schedules
Section titled “Batch schedules”For a batch projection, the schedule builder produces a cron expression from plain-language options and shows a live preview (for example, Cron: 0 30 * * * with the readable line “Every hour at :30 past the hour”). The schedule saves automatically as you edit it — there is no separate save button.
| Frequency | Options you set |
|---|---|
| Every minute | Interval in minutes |
| Hourly | Interval in hours, minute of the hour, starting hour |
| Daily | Every day or every weekday, and start time |
| Weekly | Days of the week and start time |
| Monthly | Day of month or weekday pattern, month interval, and start time |
Live vs. batch
Section titled “Live vs. batch”A Live projection refreshes continuously as source data changes; a Batch projection runs on its cron schedule. Both are backed by jobs you can monitor from the View panel and from the Jobs screen.
Projections work the same way; Live and Batch map to the equivalent Snowflake refresh and scheduled-task constructs.