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.