当前位置: 首页 > news >正文

Milvus SCHEMA 字段类型和选择

目录
  • 1. 什么是标量字段(Scalar Field)
  • 2. 什么是向量字段(Vector Field)
  • 3. 什么字段应该放标量字段?
    • 3.1 用来过滤/筛选的字段
  • 4. 什么字段应该放向量字段?
    • 4.1 用来相似度搜索(ANN)的字段
  • 5. 判断标准:一个字段应该是标量还是向量?
      • Step 1:这个字段是否参与相似度搜索?
      • Step 2:这个字段是否用于查询过滤?
      • Step 3:这个字段是否可以当作 metadata?
  • 6. 典型 Collection Schema 示例(最佳实践)
      • 示例:商品搜索系统
      • 示例:用户推荐画像
  • 7. 常见错误
  • 8. 你也可以告诉我你的业务场景,我可以直接帮你设计 Collection Schema.

以下回答基于 Milvus 的官方架构逻辑,提供清晰、工程化的判断标准。


1. 什么是标量字段(Scalar Field)

标量字段(Scalar Field)是 Milvus 中用于存储可直接比较、过滤、排序的普通值的字段,类型包括:

  • Int / Long
  • Bool
  • Float / Double
  • VarChar(字符串)
  • JSON
  • Timestamp / Date

本质:
标量字段 = 用来做结构化过滤的字段,不参与向量相似度计算。

例如:

  • user_id:int
  • price:float
  • category:string
  • created_at:timestamp
  • metadata:json

这些字段可以用在 term searchrange searchhybrid query 等过滤条件中。


2. 什么是向量字段(Vector Field)

向量字段(Vector Field)用于存储嵌入向量,Milvus 能对它们执行:

  • 相似度搜索(ANN Search)
  • 向量索引(IVF, HNSW, DiskANN)
  • TopK 查询

可分为两类:

类型 说明
Float Vector 浮点型向量,用于一般 embedding(文本、图像、音频)
Binary Vector 二进制向量,用于传统 feature 或高性能任务

一个 Collection 最多可包含 4 个向量字段


3. 什么字段应该放标量字段?

以下类型 必须放在标量字段

3.1 用来过滤/筛选的字段

如果你会在查询中需要:

  • WHERE category = 'AI'
  • WHERE price BETWEEN 200 AND 300
  • WHERE status IN (1,2)
  • WHERE created_at > 2024-01-01

这些字段放标量。

典型场景:

字段 类型 理由
product_id 主键 唯一标识数据
category VarChar 常用于过滤
timestamp Timestamp 常用于按时间过滤/排序
brand VarChar 过滤品牌
price Float 区间过滤

4. 什么字段应该放向量字段?

以下类型 必须使用向量字段

4.1 用来相似度搜索(ANN)的字段

  • 文本 embedding(例如 OpenAI embedding、bge)
  • 图像 embedding(CLIP、ViT)
  • 视频 embedding
  • 用户画像 embedding
  • 商品多模态 embedding
  • 搜索 query embedding

典型场景:

业务 向量字段示例
文本搜索 text_embedding(dim=768)
多模态搜索 image_embedding、text_embedding
用户推荐 user_profile_vector
商品搜索 product_vector

5. 判断标准:一个字段应该是标量还是向量?

使用以下决策树即可快速判断:

Step 1:这个字段是否参与相似度搜索?

  • 是 → 向量字段
  • 否 → Step 2

Step 2:这个字段是否用于查询过滤?

(=、IN、NOT IN、BETWEEN、范围、前缀…)

  • 是 → 标量字段
  • 否 → Step 3

Step 3:这个字段是否可以当作 metadata?

  • 是 → 标量字段(JSON 或 VarChar)
  • 否 → 如果是高维特征 → 向量字段

简化一句话:

用于“查相似”的放向量,用于“查条件”的放标量。


6. 典型 Collection Schema 示例(最佳实践)

示例:商品搜索系统

product_id (Primary Key, Int64)
category (VarChar)
brand (VarChar)
price (Float)
created_at (Timestamp)
product_text_vector (FloatVector dim=768)
product_image_vector (FloatVector dim=1024)

示例:用户推荐画像

user_id (Primary Key)
age (Int)
gender (VarChar)
location (VarChar)
user_profile_vector (FloatVector dim=256)

7. 常见错误

错误 原因
把多维向量塞到 JSON 标量字段 无法索引和相似度检索
标量字段过多 每个字段都会占存储、影响加载速度
用向量字段保存本应过滤的字段 ANN 搜索成本变极高
产品 ID 用字符串但不加索引 性能差,应该使用主键

8. 你也可以告诉我你的业务场景,我可以直接帮你设计 Collection Schema.

需要的话,我可以给你:

  • 为你的项目定制 Schema
  • 推荐索引类型(IVF/Flat/HNSW/DiskANN)
  • 给出写入、查询、合并等性能建议
http://www.jsqmd.com/news/71860/

相关文章:

  • 2025年市电路灯工厂推荐榜单:太阳能路灯‌/高杆灯‌/高杆灯源头工厂精选 - 品牌推荐官
  • 2025年SUV阻尼杆厂家推荐榜单:国产阻尼杆‌/阻尼杆‌/汽车阻尼杆源头厂家精选 - 品牌推荐官
  • 蓝牙/USB/冷链温湿度记录仪厂家:低温环境下可靠?数据实时传输?厂家值得信赖吗? - 品牌推荐大师
  • mongo erstart error 启动失败问题解决
  • ICS 2023 期终考试试卷
  • 蓝牙/冷链/USB温湿度记录仪推荐品牌选谁?为何用户都推荐这家厂家? - 品牌推荐大师
  • 2025年评价高的汽车EPP工具箱包装/高性能泡沫塑料包装厂家最新推荐权威榜 - 品牌宣传支持者
  • 2025年评价高的消防水带优质厂家精选榜(精选版) - 品牌宣传支持者
  • 蓝牙/冷链/USB温湿度记录仪推荐品牌选谁?哪些厂家(制造商)值得信赖? - 品牌推荐大师
  • Html+css 之 div 的flex 布局分配示例(AI生成)
  • 2025年净气型药品柜/无管净气型药品柜头部企业:优质供应商/知名品牌推荐 - 品牌推荐大师
  • 2025年12月2D3D混合式闪测仪,高精度闪测仪,大量程闪测仪厂家推荐:行业权威盘点与品质红榜发布​ - 品牌鉴赏师
  • Linux 中如何将fasta文件的每一个scaffold的碱基转换成一行显示
  • 2025年评价高的新中式铝艺凉亭优质厂家推荐榜单 - 行业平台推荐
  • 低氧工作站|厌氧工作站|菌落计数仪选购建议,哪个品牌好,推荐一下 - 品牌推荐大师
  • 运城云端印记:深耕三十载,镌刻新人专属的浪漫光影 - charlieruizvin
  • 蓝牙/USB/冷链温湿度记录仪厂家:冷链监控神器?低温环境下可靠吗?厂家实力强吗? - 品牌推荐大师
  • 无线灭菌锅温度验证仪选购建议、生产批发、靠谱口碑品牌供应商、优质源头厂家推荐 - 品牌推荐大师
  • 2025上海出国留学中介机构前十名 - 留学机构评审官
  • 2025上海留学机构排行榜最新 - 留学机构评审官
  • 2025上海留学中介推荐 - 留学机构评审官
  • 2025上海留学咨询机构排名榜 - 留学机构评审官
  • 2025上海留学咨询机构排名榜 - 留学机构评审官
  • 2025上海最好留学中介公司 - 留学机构评审官
  • 独家揭秘上海热门留学中介口碑排名 - 留学机构评审官
  • 上海10大香港硕士申请机构排名 - 留学机构评审官
  • 上海精选美国中学生留学中介机构 - 留学机构评审官
  • 上海哪家留学中介比较好 - 留学机构评审官
  • 蓝牙/冷链/USB温湿度记录仪厂家:小巧便携?适合家庭和办公?厂家质量有保障吗? - 品牌推荐大师
  • 习题解析之:英文信息极性分析