Commit 7af56df33bee873dde9f20db13fca9c5158b0e59
1 parent
c797ba2b
文档优化
Showing
1 changed file
with
4 additions
and
35 deletions
Show diff stats
docs/搜索API对接指南.md
| ... | ... | @@ -918,14 +918,9 @@ cat logs/indexer.log | jq 'select(.operation == "request_complete") | {timestamp |
| 918 | 918 | - **端点**: `POST /indexer/index` |
| 919 | 919 | - **描述**: 增量索引接口,根据指定的SPU ID列表进行索引,直接将数据写入ES。用于增量更新指定商品。 |
| 920 | 920 | |
| 921 | -**支持两种删除方式**: | |
| 922 | -1. **自动检测删除**:如果SPU在数据库中被标记为`deleted=1`,自动从ES中删除对应文档 | |
| 923 | -2. **显式删除**:通过`delete_spu_ids`参数显式指定要删除的SPU(无论数据库状态如何) | |
| 924 | - | |
| 925 | -**删除策略说明**: | |
| 926 | -- 数据库是唯一真实来源(Single Source of Truth) | |
| 927 | -- 自动检测:查询数据库时发现`deleted=1`,自动从ES删除 | |
| 928 | -- 显式删除:调用方明确知道哪些SPU要删除,直接删除(适用于批量删除场景) | |
| 921 | +**删除说明**: | |
| 922 | +- `spu_ids`中的SPU:如果数据库`deleted=1`,自动从ES删除,响应状态为`deleted` | |
| 923 | +- `delete_spu_ids`中的SPU:直接删除,响应状态为`deleted`、`not_found`或`failed` | |
| 929 | 924 | |
| 930 | 925 | #### 请求参数 |
| 931 | 926 | |
| ... | ... | @@ -1027,7 +1022,7 @@ curl -X POST "http://localhost:6002/indexer/index" \ |
| 1027 | 1022 | "spu_ids": ["123", "456", "789"] |
| 1028 | 1023 | }' |
| 1029 | 1024 | ``` |
| 1030 | -说明:如果SPU 456在数据库中`deleted=1`,会自动从ES删除,并出现在`deleted.auto`列表中。 | |
| 1025 | +说明:如果SPU 456在数据库中`deleted=1`,会自动从ES删除,在响应中`spu_ids`列表里456的状态为`deleted`。 | |
| 1031 | 1026 | |
| 1032 | 1027 | **示例2:显式删除(批量删除)**: |
| 1033 | 1028 | ```bash |
| ... | ... | @@ -1065,22 +1060,6 @@ curl -X POST "http://localhost:6002/indexer/index" \ |
| 1065 | 1060 | ``` |
| 1066 | 1061 | 说明:同时执行索引和删除操作。 |
| 1067 | 1062 | |
| 1068 | -#### 删除策略最佳实践 | |
| 1069 | - | |
| 1070 | -1. **优先使用自动检测删除**(推荐) | |
| 1071 | - - 数据库是唯一真实来源,保证数据一致性 | |
| 1072 | - - 调用方无需额外处理,系统自动检测并删除 | |
| 1073 | - - 适用于常规的增量更新场景 | |
| 1074 | - | |
| 1075 | -2. **显式删除用于特殊场景** | |
| 1076 | - - 批量删除操作 | |
| 1077 | - - 需要立即删除(不等待数据库更新) | |
| 1078 | - - 特殊业务逻辑需要 | |
| 1079 | - | |
| 1080 | -3. **监控删除统计** | |
| 1081 | - - 通过返回结果中的`deleted`字段监控删除操作 | |
| 1082 | - - 区分显式删除和自动删除,便于问题排查 | |
| 1083 | - | |
| 1084 | 1063 | #### 日志说明 |
| 1085 | 1064 | |
| 1086 | 1065 | 增量索引操作的所有关键信息都会记录到 `logs/indexer.log` 文件中(JSON格式),包括: |
| ... | ... | @@ -1088,20 +1067,10 @@ curl -X POST "http://localhost:6002/indexer/index" \ |
| 1088 | 1067 | - 每个SPU的处理状态(获取、转换、索引、删除) |
| 1089 | 1068 | - ES批量写入结果 |
| 1090 | 1069 | - 成功/失败统计 |
| 1091 | -- 删除统计(显式删除和自动删除数量) | |
| 1092 | 1070 | - 详细的错误信息 |
| 1093 | 1071 | |
| 1094 | 1072 | 日志查询方式请参考[5.1节查看索引日志](#51-全量重建索引接口)部分。 |
| 1095 | 1073 | |
| 1096 | -**删除相关日志示例**: | |
| 1097 | -```bash | |
| 1098 | -# 查看删除操作日志 | |
| 1099 | -cat logs/indexer.log | jq 'select(.status == "deleted" or .status == "auto_deleted")' | |
| 1100 | - | |
| 1101 | -# 查看包含删除统计的请求完成日志 | |
| 1102 | -cat logs/indexer.log | jq 'select(.operation == "request_complete" and .deleted_count > 0)' | |
| 1103 | -``` | |
| 1104 | - | |
| 1105 | 1074 | ### 5.3 查询文档接口 |
| 1106 | 1075 | |
| 1107 | 1076 | - **端点**: `POST /indexer/documents` | ... | ... |