Introduction
Meridian uses Convex as its backend-as-a-service platform. The backend handles data storage, real-time synchronization, authentication, and AI agent orchestration.Architecture
The Convex backend is organized into several functional modules:- Schema Definition - Type-safe data models defined in
convex/schema.ts - Query Log - SQL query execution tracking and history
- Insights Cache - AI-generated data insights with intelligent caching
- Agent System - AI agents for query generation and data analysis
- File Management - CSV/JSON file uploads and DuckDB integration
- Notifications - Real-time activity broadcasting
- Authentication - User management via Convex Auth
Core Tables
Meridian’s data model consists of seven primary tables:queryLog
Tracks all SQL queries executed by users with metadata and results
insightsCache
Stores AI-generated insights with intelligent caching by data signature
agentThreads
Conversation threads for AI agents (Query Agent & Analysis Agent)
agentMessages
Individual messages within agent conversation threads
files
Uploaded CSV/JSON files with DuckDB processing metadata
notifications
Real-time activity notifications for collaborative features
Authentication
All API operations require authentication via Convex Auth. ThecheckAuth utility function validates user sessions:
Indexing Strategy
Tables are indexed for optimal query performance:- User-scoped queries -
by_userIdindexes for filtering user data - Composite indexes - Multi-field indexes for complex filtering (e.g.,
by_userId_tableName) - Temporal queries -
by_tableName_createdAtfor time-based filtering - Unique lookups -
by_agentThreadId,by_cacheKeyfor direct access
Real-time Features
Convex provides automatic real-time synchronization:Type Safety
The schema provides full TypeScript type safety via code generation:Data Validation
All fields use Convex validators for runtime type checking:Query Patterns
Filtering by User
Composite Filtering
Unique Lookups
Next Steps
Schema Reference
Detailed table schemas with all fields and validators
Query Log API
Query execution tracking and history replay
Insights Cache
AI insights generation and caching system
Convex Docs
Official Convex documentation