init: 项目初始提交 - NeoZQYY Monorepo 完整代码

This commit is contained in:
Neo
2026-02-15 14:58:14 +08:00
commit ded6dfb9d8
769 changed files with 182616 additions and 0 deletions

View File

@@ -0,0 +1,107 @@
-- =============================================================================
-- 从 LLZQ-test 迁移测试数据到新结构
-- 源数据库LLZQ-test旧测试库包含 billiards_ods/billiards_dwd/billiards_dws/etl_admin
-- 目标数据库test_etl_feiqiu新六层 schema+ test_zqyy_app业务应用库
--
-- 前置条件:
-- 1. 已执行 db/etl_feiqiu/scripts/create_test_db.sql 创建 test_etl_feiqiu
-- 2. 已执行 db/zqyy_app/scripts/create_test_db.sql 创建 test_zqyy_app
-- 3. 当前用户对 LLZQ-test 有 SELECT 权限,对目标库有 INSERT 权限
--
-- 执行方式:
-- psql -h <host> -U <user> -f migrate_test_data.sql
--
-- 注意:需要根据实际表映射关系调整,以下为参考模板
-- =============================================================================
-- ---------------------------------------------------------------------------
-- 第一部分etl_admin → meta调度/游标/运行记录)
-- ---------------------------------------------------------------------------
-- 迁移运行记录
INSERT INTO test_etl_feiqiu.meta.etl_run_log
SELECT * FROM dblink(
'dbname=LLZQ-test',
'SELECT * FROM etl_admin.etl_run_log'
) AS t(
-- 根据 meta.sql 中 etl_run_log 的实际列定义填充
-- 示例run_id bigint, task_code text, started_at timestamptz, ...
);
-- 迁移游标状态
INSERT INTO test_etl_feiqiu.meta.etl_cursor_state
SELECT * FROM dblink(
'dbname=LLZQ-test',
'SELECT * FROM etl_admin.etl_cursor_state'
) AS t(
-- 根据 meta.sql 中 etl_cursor_state 的实际列定义填充
);
-- ---------------------------------------------------------------------------
-- 第二部分billiards_ods → odsODS 原始数据)
-- schema 名从 billiards_ods 改为 ods表结构不变
-- ---------------------------------------------------------------------------
-- 会员档案
INSERT INTO test_etl_feiqiu.ods.member_profiles
SELECT * FROM dblink(
'dbname=LLZQ-test',
'SELECT * FROM billiards_ods.member_profiles'
) AS t(
-- 根据 ods.sql 中 member_profiles 的实际列定义填充
);
-- 会员余额变动
INSERT INTO test_etl_feiqiu.ods.member_balance_changes
SELECT * FROM dblink(
'dbname=LLZQ-test',
'SELECT * FROM billiards_ods.member_balance_changes'
) AS t(
-- 根据 ods.sql 中 member_balance_changes 的实际列定义填充
);
-- ... 对 ods schema 中的每张表重复上述模式 ...
-- 完整表清单参见 db/etl_feiqiu/schemas/ods.sql 中的 CREATE TABLE 语句
-- ---------------------------------------------------------------------------
-- 第三部分billiards_dwd → dwdDWD 明细数据)
-- schema 名从 billiards_dwd 改为 dwd保留 main+EX 拆分
-- ---------------------------------------------------------------------------
-- ... 对 dwd schema 中的每张表执行类似迁移 ...
-- 完整表清单参见 db/etl_feiqiu/schemas/dwd.sql 中的 CREATE TABLE 语句
-- ---------------------------------------------------------------------------
-- 第四部分billiards_dws → dwsDWS 汇总数据)
-- schema 名从 billiards_dws 改为 dws表结构不变
-- ---------------------------------------------------------------------------
-- ... 对 dws schema 中的每张表执行类似迁移 ...
-- 完整表清单参见 db/etl_feiqiu/schemas/dws.sql 中的 CREATE TABLE 语句
-- ---------------------------------------------------------------------------
-- 第五部分core schema新增层无历史数据可迁移
-- core 层为新增的统一最小字段集层,需从 dwd 数据重新生成
-- ---------------------------------------------------------------------------
-- 如需填充 core 层测试数据,可从已迁移的 dwd 数据中提取:
-- INSERT INTO test_etl_feiqiu.core.dim_member (member_id, name, mobile, status, site_id)
-- SELECT member_id, name, mobile, status, site_id
-- FROM test_etl_feiqiu.dwd.dim_member_main;
-- ---------------------------------------------------------------------------
-- 第六部分app schema视图层无需迁移数据
-- app 层仅包含视图和 RLS 策略,数据来自底层 schema
-- ---------------------------------------------------------------------------
-- 无需数据迁移,视图会自动引用底层表数据
-- ---------------------------------------------------------------------------
-- 迁移完成后验证
-- ---------------------------------------------------------------------------
-- 验证各 schema 表行数是否与源库一致
-- SELECT schemaname, relname, n_live_tup
-- FROM pg_stat_user_tables
-- WHERE schemaname IN ('meta', 'ods', 'dwd', 'dws', 'core')
-- ORDER BY schemaname, relname;