1. 基本信息
| 项目 | 内容 | 数据来源 |
|---|---|---|
| 名称 | qdrant-multitenancy | SKILL.md |
| 作者/维护者 | Qdrant 官方仓库 qdrant/skills;本技能由 Chadha Sridi 提交,经 Qdrant 工程师 szabosteve、nleroy917 审核批准 |
GitHub API |
| 来源链接 | https://github.com/qdrant/skills/tree/main/skills/qdrant-multitenancy | — |
| 许可证 | Apache License 2.0 | GitHub API |
| GitHub Stars / Forks | 所属仓库 208★ / 23 forks(该数字属整个 Qdrant Skills 合集,不代表本技能个体热度,仅供了解所属仓库规模) | GitHub API |
| 最新版本 | SKILL.md 未单独标注版本号;本技能最近一次提交为 2026-07-20 | 仓库提交历史 |
| 安装方式 | 见第 10 章 | 官方 README |
2. 功能介绍与亮点
qdrant-multitenancy 是 Qdrant 官方提供的多租户数据隔离架构决策指南,回答“给多个客户/用户共用一套 Qdrant 部署时,数据该怎么隔离”这一在生产环境里容易踩坑的架构问题:
- 判断标准先行:开篇即给出选型的核心问题——租户数量有多少、大小是否悬殊,并据此推荐默认方案
- 单集合按 payload 分区:多数场景下的推荐默认做法,说明如何用
is_tenant标记的 keyword payload 索引与查询期must过滤实现隔离,以及索引速度瓶颈的应对(关闭全局 HNSW、按租户建索引) - 分层多租户(Tiered Multitenancy):应对“几个大客户+长尾小客户”的真实 SaaS 分布,用共享兜底分片承载小租户、专属分片隔离大租户,避免“吵闹邻居”问题,且租户可无停机从共享分片升级为专属分片
- 按租户建集合:仅推荐给租户数少、且各租户用不同 embedding 模型或 schema 的场景
- 地域隔离:面向数据合规要求物理落地到指定地区的场景,用自定义分片按地域路由数据
- 章节末尾专设“不该做什么”提醒:payload 过滤不是完整的安全模型,租户隔离仍需应用层配合
亮点:内容是官方对四种隔离策略的取舍依据,而非泛泛的功能罗列;纯文本参考指南,不含任何脚本或可执行代码;提交记录显示经过 Qdrant 工程师团队多轮代码评审后合并。
3. 适用场景
所属分类:DevOps 与基础设施
适用于正在构建多租户 SaaS 或 RAG 应用、需要用 Qdrant 承载多个客户数据的团队:例如决定新客户该走共享集合还是独立集合、发现某个大客户的数据量明显拖慢其他租户查询速度时如何用分层多租户缓解、或因监管要求某地区客户数据必须留在本地时如何设计分片方案,都可以把这份指南交给编码 Agent 作为架构决策依据。
4. 跨 Agent 兼容性
- Claude Code:✅ 原生支持。官方提供
/plugin marketplace add qdrant/skills插件市场安装,也可克隆仓库后复制到~/.claude/skills/ - Codex:✅ 支持。仓库 README 与官方发布博客均明确列出 OpenAI Codex 为受支持 Agent,并给出
~/.codex/skills/的手动安装路径 - OpenClaw:✅ 支持。官方发布博客明确写明“Skills are open source and work with any agent that supports the skills format (Cursor, Claude Code, OpenClaw, OpenCode, OpenAI Codex, Pi)”
- Hermes Agent:❓ 未验证。仓库 README 与官方发布博客均未提及 Hermes Agent
5. 推荐理由
多租户隔离是向量数据库工程里最容易“先上线、出事再补”的决策——大多数团队默认按租户建集合,直到集合数量爆炸或某个大客户拖垮全局性能才发现选错了方案。这份指南把该在建库前就想清楚的四条路径(payload 分区、分层多租户、按租户建集合、地域隔离)及各自的适用边界摆在前面,且明确指出“什么时候不该用哪种方案”,对已把 Qdrant 用在生产环境、但缺乏专职架构师经验的团队是一份可以直接照做的决策手册。
6. 评分
| 维度 | 分数 | 说明 |
|---|---|---|
| 受欢迎程度 | 7 | 仓库整体规模有限(208★),但本技能对应的 PR 经 szabosteve、nleroy917 两位 Qdrant 工程师逐条审阅并批准、协调人 kanungle 主动召集团队评审,属真实团队协作产物;技能最近一次提交为 2026-07-20,距今仅数日,是仓库内近期最活跃的条目之一;尚无第三方社区平台的独立具名讨论 |
| 可用性 | 9 | 纯文本决策指南,无需额外配置、账号或 API key,一次复制/安装即可使用;文档结构清晰、含具体参数与操作要点;最近一次提交为 2026-07-20,维护活跃 |
| 安全性 | 9 | 纯参考文档类内容,不含任何可执行 shell 命令,不发起网络请求,许可证明确 |
安全检查清单:① 不执行 shell 命令;② 运行时不联网外发数据;③ 不要求任何 API key 或凭据;④ 全文核查未发现可疑指令或 prompt injection 迹象;⑤ 作者为 Qdrant 官方仓库且提交经团队评审,无造假迹象;⑥ License(Apache-2.0)明确;⑦ 最近一次提交为 2026-07-20,维护活跃
综合评分:8.3(三项均值)
7. 跟同类 Skills 相比的优势
| Skill | 定位 | 与本技能的差异 |
|---|---|---|
| weaviate(Weaviate 官方,weaviate/agent-skills) | 面向 Weaviate 向量数据库的搜索、查询、集合管理综合操作技能,需配置 WEAVIATE_URL/WEAVIATE_API_KEY 才能执行 |
是一套需要凭据的执行类工具,多租户状态只是集合详情里的一个查看项,不提供隔离策略的选型对比与取舍依据 |
| gke-multitenancy(Google 官方,google/skills) | 面向 GKE 集群的多租户方案:命名空间隔离、RBAC 规划、资源配额、网络隔离 | 解决的是计算编排层(Kubernetes 集群)的多租户问题,不涉及向量数据本身的分区、分片或地域隔离,两者面向的基础设施层完全不同 |
qdrant-multitenancy 的差异化在于:它不是数据库操作工具,也不是通用的多租户架构教程,而是专门针对向量数据库场景——payload 分区、分片隔离、地域合规——给出可直接落地的选型依据,这是同类向量数据库技能里普遍缺失的一块。
8. 用户评价
该技能目前在 Reddit、Hacker News 等第三方社区平台尚无独立具名用户评价;已被 lobehub、mdskill 等第三方 Agent Skill 目录站收录索引。
9. 其他补充
技能提交历史显示经过两轮外部评审(Qdrant 工程师提出非阻塞性修改建议,作者逐条回应并更新后获批准合并),属团队协作维护,而非单人一次性提交。
10. 安装使用方式
- 完整安装(含本技能):运行
npx skills add qdrant/skills,会安装仓库内全部技能,包括 qdrant-multitenancy - 仅安装本技能:
npx skills add qdrant/skills/skills/qdrant-multitenancy - Claude Code 插件市场:依次执行
/plugin marketplace add qdrant/skills与/plugin install qdrant@qdrant - 手动安装:克隆仓库后,将
skills/qdrant-multitenancy/目录复制到对应 Agent 的技能目录(Claude Code 为~/.claude/skills/,Codex 为~/.codex/skills/) - 安装后无需重启,Agent 会根据用户提问中的关键词(如“如何隔离客户数据”“多租户该建几个 collection”“某个租户数据量特别大拖慢其他人”)自动触发该技能
11. 注意事项
- 内容聚焦于隔离策略的选型与取舍依据,不含具体建库/建分片的完整可执行脚本,实际操作仍需结合 Qdrant 官方文档
- 分层多租户与地域隔离依赖自定义分片(custom sharding),该方式在集合创建时即固定、后续无法转换为自动分片,采用前需谨慎评估租户增长趋势
- 地域隔离效果取决于集群节点是否真实部署在目标地区;Qdrant Cloud 目前单集群仅支持单一地区,无托管的跨地区方案
- 仓库尚无正式的版本发布节奏,内容可能随 Qdrant 产品迭代而调整,建议关注仓库更新