跳到主要内容

索引

本文档介绍了与Pinecone索引相关的概念。要了解如何创建或修改索引,请参见管理索引

索引是Pinecone向量数据的最高级组织单位。它接受和存储向量,为其中包含的向量提供查询服务,并对其内容进行其他向量操作。每个索引至少在一个pod上运行。

Pods、pod类型和pod大小

Pods是预先配置的硬件单元,用于运行Pinecone服务。每个索引在一个或多个Pod上运行。通常,Pod越多,意味着存储容量越大,延迟越低,吞吐量越高。您也可以创建不同大小的Pod。

一旦使用特定的Pod类型创建索引,就不能更改该索引的Pod类型。但是,您可以使用不同的Pod类型从该集合创建新索引

不同的Pod类型的价格不同。有关更多详细信息,请参见价格

入门计划

使用入门计划时,您可以创建一个Pod,具有足够的资源支持约100,000个向量,具有1536维嵌入和元数据;对于其他维度,容量成比例增加。

在使用入门计划时,所有 create_index 调用都将忽略 pod_type 参数。

s1 pods

这些优化存储的pod提供大容量存储和更低的总体成本,但查询延迟略高于p1 pods。它们非常适合具有中等或宽松延迟要求的非常大的索引。

每个s1 pod的容量足够存储约5M个768维向量。

p1 pods

这些性能优化的pod提供非常低的查询延迟,但每个pod存储的向量比s1 pods少。它们非常适合具有低延迟要求(<100ms)的应用程序。

每个p1 pod的容量足够存储约1M个768维向量。

p2 pods

p2 pod类型提供更高的查询吞吐量和更低的延迟。对于小于128维的向量和topK小于50的查询,p2 pods每个replica支持高达200 QPS,并在小于10ms的时间内返回查询结果。这意味着查询吞吐量和延迟都比s1和p1更好。

每个p2 pod的容量约为1M个768维向量,但是容量可能因维度而异。

p2 pods的数据摄取速率比p1 pods慢得多;随着维度数量的增加,这种速率会降低。例如,包含128维向量的p2 pod可以每秒插入高达300个更新;包含768维或更多向量的p2 pod支持每秒50个更新的插入。由于p2 pods的查询延迟和吞吐量与p1 pods不同,因此请使用您的数据集测试p2 pods的性能。

p2 pod类型不支持稀疏向量值。

Pod大小和性能

Pod的性能因多种因素而异。为了观察您的工作负载在给定的pod类型上的表现,请使用自己的数据集进行实验。

每种pod类型都支持四种pod尺寸:x1x2x4x8。每次尺寸增加,索引存储和计算容量都会增加一倍。默认pod尺寸为x1。您可以在索引创建后增加pod的尺寸。

要了解如何更改索引的pod大小,请参阅管理索引

Distance metrics

创建向量索引时,可以选择不同的度量方法:

  • euclidean
    • 用于计算平面上两个数据点之间的距离。这是最常用的距离度量之一。有关示例,请参见我们的图像相似度搜索示例
    • 当您使用 metric='euclidean' 时,最相似的结果是具有最低分数的结果。
  • cosine
    • 常用于查找不同文档之间的相似性。其优点是得分归一化到[-1,1]范围内。
  • dotproduct
    • 用于计算两个向量的数量积。您可以使用它来告诉我们两个向量的相似程度。答案越正,两个向量在方向上越接近。

要获取可用于自定义索引的参数的完整列表,请参见create_index API参考

根据您的应用程序,某些度量方法具有比其他度量方法更好的召回率和精确度表现。有关更多信息,请参见:什么是向量相似性搜索?

更新时间 8天前