DATAP.AI · Data & AI layer on your modern data stack · Iceberg core · runs in your VPC
Where did this number come from?
Click any column in your dbt project. See every source it was computed from.
prices
ticker
trade_date
close
volume
fx_rates_daily
quote_currency
rate
exchange_ref
exchange
currency_code
stg_prices
ticker
trade_date
close
volume
stg_fx_rates
quote_currency
rate
stg_exchange_ref
exchange
currency_code
int_price_with_indicators
ticker
trade_date
close
close_usd
sma_50
fct_daily_price
ticker_key
trade_date
close
close_usd
close_usd = close × that day’s FX rate for the exchange’s currency.
Four raw columns, three source tables, two layers — traced automatically, column by column, on every build.
Click the table. Its documentation opens.
Same lineage view, same click. The dbt docs page shows the logic — and that the table is Iceberg on your storage.
int_price_with_indicators
docs ↗
close_usd
sma_50
fct_daily_price
docs ↗
close_usd
volume
https://dbt.datap.ai/#!/model/model.datapai.int_price_with_indicators
int_price_with_indicators
table
Details
Description
Columns
Referenced By
Depends On
Code
{{ config(
materialized =
'table'
,
schema =
'STOCK_INTERMEDIATE'
,
table_format =
'iceberg'
,
external_volume =
'DATAPAI_S3_VOL'
,
tags = [
"intermediate"
,
"stock_ai"
]
) }}
with
prices
as
(
select
ticker, exchange, trade_date, close …
from
{{ ref(
'stg_prices'
) }} ),
indicators
as
(
select
…, avg(close)
over
(
partition by
ticker, exchange
order by
trade_date
rows
49
preceding
)
as
sma_50
Iceberg table on your S3 — by construction
Iceberg is the core. Every table the layer builds is open, owned by you, readable by any engine.
Lineage view ⇄ dbt docs: one product, two views. The logic and the storage format are always one click from the number.
Personal data, followed wherever it flows.
One customer email becomes six columns across four tables. All six are classified — renamed or not.
customer
customer_id
email
phone
company
stg_customer
customer_id
customer_email
customer_phone
customer_company
dim_customer
customer_key
customer_email
customer_phone
customer_company
obt_invoice
invoice_total
customer_email
customer_phone
invoice_date
Personal data ×6
Masking policy ready to apply
AI answers respect the same rules
Nothing blocked until you decide
The compliance question answered without a project.
Where personal data lives, where it went, who can see it — for APRA, ASIC, AUSTRAC and the Privacy Act. Kept in your own database, per build.