Data Architecture · Documentation

Redwood DataHub

Multi-layer data architecture for Sequoia Financial — raw ingest from 5 custodian sources through curated silver views to gold-layer aggregations.

5Data Sources
79Bronze Tables
16Silver Views
8Airflow DAGs
Bronze Layer
Raw ingest · 79 tables · 5 sources
Silver Layer
Curated views · 16 SQL views
Gold Layer
Aggregations · dashboards · reports
Primary DB
PostgreSQL
redwood-postgres-db-config
Secondary DB
Azure SQL
redwood-azure-sql-config
Hot Storage
Azure Blob
redwood-hot-storage-config
Cold Archive
Azure Blob
redwood-cold-storage-config
Secrets
Key Vault
airflowconnections
Bronze
Bronze Layer — Raw Ingest
5 data sources · 79 tables · 8 Airflow DAGs · PostgreSQL + Azure SQL
📊
Schwab
File-based custodian feed via Azure Blob Storage. Fixed-width / CSV with SHA-256 dedup.
15Tables
12 PMUTC Daily
Full + IncSync mode
DailyArchive
View docs → Data Pipeline ↗
📁
Fidelity
Fixed-width COBOL-spec file feed via Azure Blob Storage. Keyed by customer code.
11Tables
10 AMUTC Daily
IncrementalSync mode
WeeklyArchive
View docs → Data Pipeline ↗
☁️
Salesforce
CRM via REST / Bulk API with OAuth 2.0. 20 objects including Financial Services Cloud.
20Objects
5 AMUTC Daily
Smart syncSync mode
NoneArchive
View docs → Data Pipeline ↗
📈
Tamarac — PostgreSQL
Portfolio management API with PFX cert auth. Writes to PostgreSQL via async bulk insert.
17Tables
2:30 PMUTC Daily
PostgreSQLTarget
NoneArchive
View docs → Data Pipeline ↗
🗃️
Tamarac — Azure SQL
Portfolio management API with PFX cert auth. Writes to Azure SQL via pyodbc with blob staging.
16Tables
1:00 PMUTC Daily
Azure SQLTarget
BlobStaging
View docs → Data Pipeline ↗
🗄️
Bronze Layer — Full Database Documentation
Complete SQL schema reference for all 79 bronze tables across PostgreSQL and Azure SQL — column definitions, data types, primary keys, constraints.
Schwab: 15 tables
Fidelity: 11 tables
Salesforce: 20 tables
Tamarac PG: 17 tables
Tamarac SQL: 16 tables
Open reference →
Silver
Silver Layer — Curated Views & Indices
16 business-ready SQL views joining bronze tables · optimised with targeted indices
⚗️
Silver Layer — Views, Queries & Indices
Business-ready, joined, and cleaned views consumed by dashboards, advisors, and downstream Gold-layer aggregations. Sources bronze tables from PostgreSQL (collationdatawarehouse @ 10.0.0.8:5444).
1. Household Master
2. Current Positions
3. Holdings Snapshot
4. Alerts & Notifications
5. Cash Flows
6. Buy / Sell Transactions
7. Service Cases
8. Advisor Directory
9. Contracts & Fees
10. Sales Pipeline
11. Billing Transactions
12. Client Review Meetings
13. Relationship Health
14. Communications Log
15. Financial Account Master
16. Account Performance
Gold
Gold Layer — Aggregations & Reporting
Materialised aggregations consumed by dashboards, client statements, and executive reporting
Gold Layer Coming Soon
Aggregated, KPI-ready tables and materialised views built on top of the Silver layer — optimised for dashboard queries, client reporting, advisor performance scorecards, and executive summaries.
AUM by household / advisor Monthly performance summary Cash flow trends Advisor activity scorecard Client health dashboard Fee revenue by period Sales pipeline KPIs
Schedule
Daily Pipeline Schedule (UTC)
All Bronze ingest jobs — click any DAG name to open in Airflow

Daytime Sync Jobs

Monday–Sunday · all times UTC

5:00 AM
PostgreSQL
10:00 AM
PostgreSQL
12:00 PM
PostgreSQL
1:00 PM
Azure SQL ↑ blob
2:00 PM
Cold storage
2:30 PM
PostgreSQL ↓ blob
Off-hours Archive Jobs
2:00 AM
PostgreSQL → cold ZIP · daily
3:00 AM
Fidelity blobs → cold ZIP · Sun

Archive DAG Summary

DAGScheduleUTC TimeScopeRetention
redwood_database_archive 0 2 * * *Daily 2:00 AM PostgreSQL table dumps → cold storage ZIPPermanent
redwood_schwab_file_archiver 0 14 * * *Daily 2:00 PM Schwab hot-tier files → cold storage ZIP7 days hot
redwood_fidelity_archiver 0 3 * * 0Weekly Sun 3:00 AM Fidelity hot-tier files → cold storage ZIP7 days hot

Azure Key Vault Secrets

Secret NameUsed ByContent
redwood-postgres-db-configSchwab Fidelity Salesforce Tamarac PGhost, port, database, user, password
redwood-azure-sql-configTamarac AzureSQLAzure SQL connection string (pyodbc)
redwood-tamarac-api-configTamaracAPI base URL, credentials
redwood-tamarac-prod-cert-pfxTamaracBase64-encoded PFX certificate
redwood-hot-storage-configSchwab Fidelity TamaracAzure Blob hot tier account URL + key
redwood-cold-storage-configAll archive DAGsAzure Blob cold tier account URL + key
redwood-salesforce-configSalesforceOAuth client_id, client_secret, instance_url

All secrets in the airflowconnections Azure Key Vault, accessed via AzureKeyVaultHook.

Email Notification Recipients — All Redwood DAGs

EmailRole
prashant.surana@collation.aiPipeline owner
monitor@collation.aiMonitoring alias
mschwartz@sequoia-financial.comClient contact
handerson@sequoia-financial.comClient contact
vzivich@sequoia-financial.comClient contact
hpatel@sequoia-financial.comClient contact
karishni.mehta@collation.aiEngineering