如何清空Vespa索引所有文档且保留其他配置?求API/CLI方法
清空Vespa索引所有文档的简洁方法
要一次性清空Vespa索引内的全部文档且保留原有配置,有以下两种简洁可行的方法:
使用Vespa CLI
方法1:通配符匹配删除单类型所有文档
直接通过通配符覆盖目标文档类型下的所有文档ID,执行批量删除,命令格式如下:
vespa document -v remove id:<命名空间>:<文档类型>::*
示例:删除news命名空间下news类型的所有文档
vespa document -v remove id:news:news::*
方法2:通过Feed指令批量删除
创建一个包含全局删除逻辑的JSON文件(比如命名为delete_all_docs.json),内容如下:
{"delete": {"id": "id:<命名空间>:<文档类型>::*"}}
然后通过vespa feed命令执行批量删除操作:
vespa feed delete_all_docs.json
使用Vespa HTTP API
发送POST请求到Vespa文档API端点,请求体携带全局删除指令,示例如下:
POST /document/v1 HTTP/1.1 Host: <你的Vespa主机>:<端口> Content-Type: application/json {"delete": {"id": "id:news:news::*"}}
也可直接针对特定文档类型发送DELETE请求:
DELETE /document/v1/news/news/docid/* HTTP/1.1 Host: <你的Vespa主机>:<端口>
注意:以上所有操作仅删除指定文档类型的全部文档,不会修改集群配置、Schema等其他设置。
内容的提问来源于stack exchange,提问作者rrh
相关产品推荐
相关产品推荐

