// DATA WAREHOUSE AUTOMATION

Your business model.
Your warehouse, generated.

Declare your business entities and source mappings in YAML. Daana generates the SQL, deploys the model and loads the data.

Keys. History. Relationships. The recurring warehouse patterns, generated from what your business means.

BOOKSTORE / BUSINESS MODEL

Select an entity to inspect its definition.

ORDER_LINE

One book sold on one order

  • order_line is_part_of → order
  • order_line is_of → book
// FROM MODEL TO WAREHOUSE

Declare the meaning. Generate the repetition.

Your team defines what an order line means, how source fields map to it and how it relates to orders and books. Daana generates the recurring warehouse structures: current state, attribute history and relationship views.

01 / YOU DECLARE

Meaning and source mappings

The model defines the business amount. The mapping supplies its source field and connects the order line to its order.

mappings/order-line-mapping.yaml

mapping_groups → tables → attributes

- id: order_line_amount_amount
  transformation_expression: line_total

mapping_groups → relationships

- id: order_line_is_part_of_order
  source_table: stage.sales_order_lines
  target_transformation_expression: order_id

Two excerpts; enclosing sections and other fields omitted. Business definitions live in model.yaml.

The model defines the amount charged, tax included. The mapping connects the shop’s line_total to that business amount and sets effective time from the order date. History follows the declared effective time.

02 / DAANA GENERATES SQL

Current

view_order_line

Read the current state of each order line.

Latest attribute state · schematic

History

view_order_line_hist

Read past attribute states using declared effective time.

Attribute states through time · schematic

Relationships

view_order_line_with_rel

Work with the current state and modeled relationships.

Declared relationships: order line → order · book · schematic

// INSPECT THE DECLARATIONS

Business decisions stay with your team.

Business definitions are declared in the model and deployed with its metadata in your warehouse. Business-model SQL is generated for PostgreSQL, BigQuery, Snowflake and DuckDB. Map several sources onto the same business entity to define the entity once across systems.

Excerpts from the bookstore example’s declarations, not a complete project.

Why the platform has three layers
// EVALUATE IT ON YOUR PLATFORM

Start with one number your team already reports.

Pick one, such as daily revenue. Declare the source, the business entity and the metric behind it, then put the generated SQL next to the SQL you maintain by hand today and compare the two: what it covers, what it misses, and what your team would still own.

What happens after I request access?
Tell us about your data platform in the access request. We’ll get back to you about next steps.
See how the three layers fit together