Multi-Database Tuning Considerations

Database support with specific tuning guidance for Snowflake and SQL Server in addition to Oracle. The following recommendations should be applied by an experienced DBA.

Oracle

  • Continue leveraging Oracle RAC for clustering and high availability.
  • Implement table partitioning and use partition pruning to process data in manageable segments.
  • Monitor using AWR/ASH reports and refresh optimizer statistics regularly.
  • Scale memory from 128 GB to 256 GB RAM and expand storage beyond 1 TB using SSD/NVMe.

Snowflake

Snowflake sizing is workload-driven and primarily governed by Virtual Warehouse configuration. Initial recommendation is to start with a Medium warehouse for ETL and Small for interactive workloads, then scale based on concurrency and query performance.

  • Size Virtual Warehouses (X-Small → X-Large) based on workload.
  • Use auto-suspend (e.g., 60 seconds) to optimize cost.
  • Apply clustering keys on high-cardinality columns: party_id, campaign_code, load_date.
  • Use dbt incremental models (MERGE strategy) for RDV and aggregates.
  • Create materialized views / dynamic tables for Customer 360 & Campaign 360.
  • Enable query result caching for repeated analytical queries.
  • Use dedicated warehouses for ETL vs analytical workloads.
  • Monitor via Query History, Information Schema, and Resource Monitors.

SQL Server

  • Enable In-Memory OLTP and Columnstore Indexes for analytical workloads.
  • Partition tables on: load_date, hub_load_date.
  • Configure max server memory for buffer pool efficiency and TempDB with multiple data files (aligned to CPU cores).
  • Use Bulk insert with TABLOCK and SQL Server Agent / Airflow for orchestration.
  • Use Query Store for plan stability.
  • Implement Always On Availability Groups for HA and read scaling.
  • Monitor using DMVs, Extended Events, and Alerts for CPU, memory, and blocking.

New Feature Optimization: Flowchart 360

  • Optimize queries handling execution-level granular data.
  • Create indexes on: flowchart_id, campaign_code, and execution timestamps.
  • Pre-aggregate frequently used metrics (clicks, opens, responses) to reduce runtime computation.

ML Model Performance (STO & NBC)

  • Optimize feature extraction queries from Customer 360.
  • Use materialized views or precomputed feature tables.
  • Schedule feature generation during off-peak hours.
  • Ensure efficient write-back of ML outputs into Customer 360 for downstream use.