chore: batch commit remaining changes
Includes search engine improvements, Alembic migrations, new services (pubmed_daily_update, query_expansion), frontend updates, and documentation sync.
This commit is contained in:
+16
-7
@@ -160,15 +160,24 @@ publication_status: ppublish=544, epublish=530, aheadofprint=478
|
||||
|
||||
## 5. 结论
|
||||
|
||||
**总体判断**:当前数据可支撑基础的纯文本搜索(title/abstract/author),但以下搜索功能完全阻塞:
|
||||
**硬性要求:搜索功能必须与 PubMed 完全一致。**
|
||||
|
||||
1. **MeSH 搜索** — `tree_numbers` 空表 + INNER JOIN → 0 结果
|
||||
2. **期刊缩写搜索** — `journal_iso` 覆盖率 0%
|
||||
3. **ATM 自动术语映射** — Entry Terms 缺失、SynonymExpander 未集成
|
||||
4. **精确短语** — `phraseto_tsquery` 未使用,`setweight` 未配置
|
||||
5. **搜索排名** — `best_match` 权重公式错误,导致 ts_rank 几乎不影响排序
|
||||
这意味着:
|
||||
1. **所有 PubMed 字段标签**必须有对应的搜索路径(数据已存储的立即接通,未存储的补充抽取)
|
||||
2. **所有搜索行为**(MeSH 展开、ATM 映射、布尔运算、日期范围、精确短语等)必须与 PubMed 一致
|
||||
3. **不允许任何字段标签退化到纯文本搜索**——`[IP]`、`[VI]`、`[PG]`、`[LA]`、`[GR]`、`[NM]`、`[SH]`、`[EDAT]`、`[CRDT]`、`[MHDA]`、`[LR]`、`[DCOM]`、`[LID]`、`[AUID]`、`[COIS]`、`[SI]` 等,凡数据已存储的必须接通,缺失数据的补充抽取
|
||||
|
||||
修复路径:先解决数据导入 Bug(journal_iso、keywords、PMC_ID)+ 搜索 Bug(tree_number、布尔逻辑),再逐步补充字段标签和功能。
|
||||
**当前阻塞或缺失项**:
|
||||
|
||||
| 问题 | 严重性 | 说明 |
|
||||
|------|--------|------|
|
||||
| MeSH 搜索 — tree_numbers 空表 + INNER JOIN | **阻塞** | 所有 `[MH]`/`[MAJR]` 查询返回 0 结果 |
|
||||
| 期刊缩写搜索 — `journal_iso` 覆盖率 0% | **阻塞** | `[TA]` 缩写搜索不可用 |
|
||||
| ATM 自动术语映射 — Entry Terms 缺失 | **缺失** | 普通用户输入"lung cancer"不会触发 MeSH 展开 |
|
||||
| 精确短语 — `phraseto_tsquery` 未使用 | **缺失** | `"lung cancer"` 精确搜索低效 |
|
||||
| 字段标签未接通(15+ 个) | **缺失** | 数据已存储但解析器未路由到搜索 |
|
||||
| 作者 ORCID 数据 — `[AUID]` | **缺失** | PubMed XML 中有 `<Identifier>` 但未抽取 |
|
||||
| 搜索排名 — `best_match` 权重公式错误 | **Bug** | ts_rank 几乎不影响排序 |
|
||||
|
||||
详细实施步骤见 [12-搜索功能实施计划.md](12-搜索功能实施计划.md)。
|
||||
数据统计详情见 [13-文献数据质量报告.md](13-文献数据质量报告.md)。
|
||||
|
||||
Reference in New Issue
Block a user