RWM Console cluster: risingwave-adib.adib-rw.svc.cluster.local

← cluster adib_rm objects investment_account_balance_snapshot_mv
Overview Objects Graph History
materialized view · adib_rm.investment_account_balance_snapshot_mv
Parallelism
2
Actors
10 / 10
running
Distribution
HASH
Rows
0
State size
Created
2026-06-30 21:49
Initialized
2026-06-30 21:49
Fragment flags
MVIEWSNAPSHOT_BACKFILL_STREAM_SCANSTREAM_SCAN
Actors
ActorFragmentWorkerState
54593 2795 3 running
54594 2795 3 running
54595 2796 3 running
54596 2796 3 running
54599 2797 3 running
54600 2797 3 running
54601 2798 3 running
54602 2798 3 running
54607 2799 3 running
54608 2799 3 running
sql · adib_rm.investment_account_balance_snapshot_mv — click to expand
CREATE MATERIALIZED VIEW adib_rm.investment_account_balance_snapshot_mv AS
WITH settled_latest AS (
  SELECT
    account_id,
    asset_id,
    market_value,
    dim_value_date AS as_of_date
  FROM (
    SELECT
      account_id,
      asset_id,
      market_value,
      dim_value_date,
      ROW_NUMBER() OVER (PARTITION BY account_id, asset_id ORDER BY dim_value_date DESC, type) AS rn
    FROM insights.holding_values_mv
  ) AS ranked
  WHERE
    rn = 1
), intraday_latest AS (
  SELECT
    account_id,
    asset_id,
    market_value,
    as_of_date
  FROM (
    SELECT
      account_id,
      asset_id,
      market_value,
      CAST(holding_timestamp AS DATE) AS as_of_date,
      ROW_NUMBER() OVER (PARTITION BY account_id, asset_id ORDER BY holding_timestamp DESC) AS rn
    FROM olap.holding_values_intraday_ft
    WHERE
      disabled_at IS NULL
  ) AS ranked
  WHERE
    rn = 1
), live AS (
  SELECT
    s.account_id,
    CASE
      WHEN NOT i.account_id IS NULL AND i.as_of_date >= s.as_of_date
      THEN i.market_value
      ELSE s.market_value
    END AS market_value,
    CASE
      WHEN NOT i.account_id IS NULL AND i.as_of_date >= s.as_of_date
      THEN i.as_of_date
      ELSE s.as_of_date
    END AS as_of_date
  FROM settled_latest AS s
  LEFT JOIN intraday_latest AS i
    ON i.account_id = s.account_id AND i.asset_id = s.asset_id
)
SELECT
  live.account_id,
  SUM(live.market_value) AS available_balance,
  MAX(live.as_of_date) AS fact_date
FROM live
JOIN olap.accounts_dm AS a
  ON a.account_id = live.account_id AND a.disabled_at IS NULL
GROUP BY
  live.account_id
Lineage · adib_rm.investment_account_balance_snapshot_mv 6 objects
Direct (1-hop) dependencies from rw_depend, across schemas. Click a neighbor to expand its dependencies; ⌘/Ctrl-click opens its page. Drag to pan, scroll to zoom. External source/sink endpoints (Kafka, Iceberg) are not shown.