785726caac
P22.1 of Stage 22 materialization layer infrastructure. Adds explicit CREATE EXTENSION migration so clean environments can run `migrate` end-to-end without ops manual setup, then creates the first continuous aggregate orders_daily_by_created (day-bucketed, grouped by company/platform/store) with WITH NO DATA. Five composite indexes cover the high-frequency query patterns documented in docs/data_query.md. P22.2/P22.3 will add the by-paid view, refresh policy and historical backfill on top. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
21 lines
491 B
PHP
21 lines
491 B
PHP
<?php
|
||
|
||
declare(strict_types=1);
|
||
|
||
use Hyperf\DbConnection\Db;
|
||
use Hyperf\Database\Migrations\Migration;
|
||
|
||
return new class extends Migration
|
||
{
|
||
public function up(): void
|
||
{
|
||
Db::statement('CREATE EXTENSION IF NOT EXISTS timescaledb');
|
||
}
|
||
|
||
public function down(): void
|
||
{
|
||
// 不主动 DROP EXTENSION:existing hypertables 依赖该扩展,drop 会破坏数据。
|
||
// 完全清空数据库时手动执行 `DROP EXTENSION timescaledb CASCADE`。
|
||
}
|
||
};
|