|
|
|
|
|
|
|
|
| CREATE TABLE IF NOT EXISTS hourly_usage_summary (
|
| id INTEGER PRIMARY KEY AUTOINCREMENT,
|
| provider TEXT NOT NULL,
|
| model TEXT NOT NULL,
|
| date_hour TEXT NOT NULL,
|
| total_requests INTEGER NOT NULL DEFAULT 0,
|
| total_input_tokens INTEGER NOT NULL DEFAULT 0,
|
| total_output_tokens INTEGER NOT NULL DEFAULT 0,
|
| total_cost REAL NOT NULL DEFAULT 0.0,
|
| created_at TEXT NOT NULL DEFAULT (datetime('now'))
|
| );
|
|
|
|
|
| CREATE INDEX IF NOT EXISTS idx_hourly_usage_provider_model_date
|
| ON hourly_usage_summary(provider, model, date_hour);
|
|
|
|
|
| CREATE INDEX IF NOT EXISTS idx_hourly_usage_date
|
| ON hourly_usage_summary(date_hour);
|
|
|
|
|
| CREATE TABLE IF NOT EXISTS daily_usage_summary (
|
| id INTEGER PRIMARY KEY AUTOINCREMENT,
|
| provider TEXT NOT NULL,
|
| model TEXT NOT NULL,
|
| date TEXT NOT NULL,
|
| total_requests INTEGER NOT NULL DEFAULT 0,
|
| total_input_tokens INTEGER NOT NULL DEFAULT 0,
|
| total_output_tokens INTEGER NOT NULL DEFAULT 0,
|
| total_cost REAL NOT NULL DEFAULT 0.0,
|
| created_at TEXT NOT NULL DEFAULT (datetime('now'))
|
| );
|
|
|
|
|
| CREATE INDEX IF NOT EXISTS idx_daily_usage_provider_model_date
|
| ON daily_usage_summary(provider, model, date);
|
|
|
|
|
| CREATE INDEX IF NOT EXISTS idx_daily_usage_date
|
| ON daily_usage_summary(date);
|
|
|