UNPKG

@simonecoelhosfo/optimizely-mcp-server

Version:

Optimizely MCP Server for AI assistants with integrated CLI tools

73 lines 1.83 kB
/** * QueryOptimizer - Intelligent query optimization for analytics * * Optimizations: * - Index usage analysis * - Query rewriting for better performance * - Join order optimization * - Predicate pushdown * - Unnecessary column elimination * - Query plan caching */ import { Database } from 'better-sqlite3'; import { HybridQuery, EnhancedQueryIntent } from './types.js'; interface OptimizationResult { optimizedQuery: HybridQuery; optimizations: OptimizationDetail[]; estimatedCost: number; useCache: boolean; } interface OptimizationDetail { type: 'index' | 'rewrite' | 'join_order' | 'pushdown' | 'column_elimination' | 'cache'; description: string; impact: 'high' | 'medium' | 'low'; } export declare class QueryOptimizer { private db; private indexCache; private statsCache; private queryPlanCache; constructor(database: Database); /** * Optimize a hybrid query */ optimize(query: HybridQuery, intent?: EnhancedQueryIntent): OptimizationResult; /** * Load index information from database */ private loadIndexInfo; /** * Load table statistics */ private loadTableStats; /** * Analyze query execution plan */ private analyzeQueryPlan; /** * Check if query is eligible for caching */ private checkCacheEligibility; /** * Optimize column selection */ private optimizeColumnSelection; /** * Optimize filters using indexes */ private optimizeFilters; /** * Optimize join order based on table sizes */ private optimizeJoins; /** * Add query hints for better execution */ private addQueryHints; /** * Clear all caches */ clearCache(): void; } export {}; //# sourceMappingURL=QueryOptimizer.d.ts.map