跳转至

staging.db 结构说明(MySQL 原表镜像·含字段释义)

本文档给人类读者;agent 请读 data/staging_schema.json(每次同步自动刷新,含字段释义、 实时行数、同步进度与栏目 tag 字典)。操作细节与故障排查见 staging-sync.md。 三库字典导航:staging.db(本文档);本体库 xgb_wiki.db 见 data-model.md §1–§6;知识图谱 graph.db 见 data-model.md §7。三库关系与更新次序见 staging-sync.md §1。 生成工具:scripts/sync/sync_staging.py(单文件,可独立拷走)。用法见其 docstring。 字段释义与源库结构以 docs/core/data-model.md §5 的实测口径为准(2026-09 复核)。

它是什么

内网 MySQL xuangubao 库 5 张源表的本地 SQLite 镜像,供加工层(ETL)读取, 也是"数据同步"与"数据加工"两段解耦的中间层:镜像只做原样搬运,不含任何解析。 真丢了不要紧——--full 一条命令从源库全量重建。

表关系速览

live_tuoshui_news.msg_id ──┬── live_tuoshui_tag_related.live_msg_id   (取栏目)
tuoshui_msgs.msg_id ───────┬── tuoshui_tag_related.msg_id             (取栏目)
*.plates 内"板块ID" ───────┴── plate_rank_infos.plate_id              (字符串内 ID 逻辑关联,非外键)

表结构与字段释义

live_tuoshui_news — 盘中快讯(live 研报)

单篇完整版、标题即观点,盘中滚动、每天多篇。

字段 类型 释义
id INTEGER PK 主键;增量同步进度基准
msg_id INTEGER 消息 ID,标签表经它关联(不是主键 id)
title TEXT 研报标题;常带"券商名:"前缀(被转述方)
summary TEXT 摘要
content TEXT 正文 HTML
stocks TEXT 编辑打标个股:"代码,名称;…" 分隔符字符串(无外键,需解析;打标率约 20%)
plates TEXT 题材:"板块ID,名称;…";板块 ID 对应 plate_rank_infos.plate_id
msg_display_time TEXT 展示时间(业务时间字段)
is_deleted INTEGER 1=源端已删除;业务查询必须过滤 is_deleted=0

tuoshui_msgs — 脱水研报(digest 每日汇总)

按栏目每日汇总,每栏目约每日 1 篇。

字段 类型 释义
id INTEGER PK 主键;增量同步进度基准
msg_id INTEGER 消息 ID,标签表经它关联(不是主键 id)
title TEXT 研报标题
summary TEXT 摘要
content TEXT 正文 HTML;tag_id=4(每日强股)正文含"N、个股:X 大涨题材:Y"结构段
related_stocks TEXT 编辑打标个股(此表列名是 related_stocks,格式同上)
plates TEXT 题材,格式同 live 侧
msg_created_at TEXT 创建时间(业务时间字段)
is_premium INTEGER APP 端付费标记 0/1
字段 类型 释义
live_msg_id INTEGER PK = live_tuoshui_news.msg_id(不是主键 id)
tag_id INTEGER PK 栏目 ID,见下方 live 字典;缺省/未知归"未分类"
字段 类型 释义
msg_id INTEGER PK = tuoshui_msgs.msg_id
tag_id INTEGER PK 栏目 ID,见下方 digest 字典

plate_rank_infos — 板块(题材)主数据

字段 类型 释义
plate_id INTEGER PK 板块/题材 ID(即本体库 theme.plate_id)
plate_name TEXT 题材名称
classification TEXT 概念 / 行业 / 风格

另有两张工具表:staging_meta(同步进度:wm_ 前缀的最大 id)、staging_log(每次同步的结果记录)。

栏目 tag 字典

digest 侧(tuoshui_tag_related.tag_id):1 脱水研报(主刊)/ 2 评级慧选 / 3 直击一线 / 4 每日强股 / 7 每日谈 / 99 周回顾(每周 1 篇)

live 侧(live_tuoshui_tag_related.tag_id):43 热点(量最大)/ 44 深度 / 42 消费 / 41 医药 / 36 行业精选 / 1 精选 / 11 业绩前瞻 / 46 政策 / 40 未分类

新手陷阱(拿库直接开查前必读)

  1. 标签关联走 msg_id,不是主键 id——最容易写错的 JOIN;
  2. stocks / plates 是分隔符字符串,源库无外键,个股/题材关系需解析字符串;
  3. 镜像含已删除行(is_deleted=1),业务口径一律加 is_deleted=0;
  4. 一篇研报可挂多个栏目 tag(关联表多行),别假设一对一。

常用查询示例

-- 看数据同步到哪了
SELECT * FROM staging_meta;
-- 最新 10 条快讯
SELECT id, title, msg_display_time FROM live_tuoshui_news
WHERE is_deleted=0 ORDER BY id DESC LIMIT 10;
-- 某日"脱水研报"主刊(tag_id=1)
SELECT m.id, m.title FROM tuoshui_msgs m
JOIN tuoshui_tag_related t ON t.msg_id = m.msg_id
WHERE t.tag_id = 1 AND m.msg_created_at >= '2026-09-24'
  AND m.msg_created_at < '2026-09-25';

更新方式

python scripts/sync/sync_staging.py            # 增量(日常)
python scripts/sync/sync_staging.py --full     # 全量重建(首次/结构变化/修复)
python scripts/sync/sync_staging.py --check    # 仅环境检查
python scripts/sync/sync_staging.py --selftest # 离线自检(不连网)

字段清单不在此罗列全集——源表演进后新增字段以 staging_schema.json 为准(自动跟随)。