feat: sam_stat 통계 DB 인프라 구축 (Phase 1)

- sam_stat DB 연결 설정 (config/database.php, .env)
- 메타 테이블 마이그레이션 (stat_definitions, stat_job_logs)
- dim_date 차원 테이블 + DimDateSeeder (2020~2030, 4018건)
- 기반 모델: BaseStatModel, StatDefinition, StatJobLog, DimDate
- 집계 커맨드: stat:aggregate-daily, stat:aggregate-monthly
- StatAggregatorService + StatDomainServiceInterface 골격

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-29 17:13:36 +09:00
parent 4f2a329e4e
commit c88048db67
13 changed files with 628 additions and 0 deletions

View File

@@ -62,6 +62,26 @@
]) : [],
],
// 통계 전용 DB (sam_stat)
'sam_stat' => [
'driver' => 'mysql',
'host' => env('STAT_DB_HOST', env('DB_HOST', '127.0.0.1')),
'port' => env('STAT_DB_PORT', env('DB_PORT', '3306')),
'database' => env('STAT_DB_DATABASE', 'sam_stat'),
'username' => env('STAT_DB_USERNAME', env('DB_USERNAME', 'root')),
'password' => env('STAT_DB_PASSWORD', env('DB_PASSWORD', '')),
'unix_socket' => env('DB_SOCKET', ''),
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',
'prefix' => '',
'prefix_indexes' => true,
'strict' => true,
'engine' => null,
'options' => extension_loaded('pdo_mysql') ? array_filter([
PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
]) : [],
],
// 5130 레거시 DB (chandj)
'chandj' => [
'driver' => 'mysql',