Updated on 2024-06-03 GMT+08:00

Vector Database Parameters

maintenance_work_mem

Parameter description: Specifies the maximum amount of memory used in maintenance operations.

Parameter type: numeric

Unit: KB

Value range: [1024,2147483647] or [1MB, 2048GB)

Default value: 65536/64MB

Level: session level

diskann_probe_ncandidates

Parameter description: Specifies the size of the candidate set when the gsdiskann index is used to retrieve vectors.

Parameter type: numeric

Unit: none

Value range: [1,32768]

Default value: 128

Level: session level

The diskann_probe_ncandidates parameter can be set and take effect for some queries that use the gsdiskann index. If this parameter is set to a large value, the query performance deteriorates. If this parameter is set to a small value, the recall rate is low. The recommended value is 128. You are advised to obtain the optimal parameter configuration through experiments.

gsivfflat_probes

Parameter description: Specifies the number of inverted tables to be searched. If it exceeds the total number of inverted tables, the entire table is searched.

Parameter type: numeric

Unit: none

Value range: [1,32768]

Default value: 5

Level: session level

A larger value of gsivfflat_probes indicates a longer search time but more accurate results. You are advised to set gsivfflat_probes to 3% the value of nlist during index creation. You are advised to obtain the optimal parameter configuration through experiments.

gsivfflat_secondary_probes

Parameter description: Specifies the number of level-2 inverted tables to be searched. If it exceeds the total number of level-2 inverted tables, the entire table is searched.

Parameter type: numeric

Unit: none

Value range: [1,32768]

Default value: 5

Level: session level

With the same effect as that of gsivfflat_probes, gsivfflat_secondary_probes takes effect only when the vector index is a double-layer index. This parameter can effectively accelerate the query speed. You are advised to set it to a value ranging from 1/4 to 1/2 of ivf_nlist2. You are advised to obtain the optimal parameter configuration through experiments.

enable_vectordb

Parameter description: Specifies whether vector indexes can be created and whether vector indexes can be added, modified, and queried.

Parameter type: Boolean.

Unit: none

Value range:

  • on: enabled.
  • off: disabled.

Default value: on

Level: Global parameter (SIGHUP).

Setting method: This is a SIGHUP parameter. Set it based on instructions provided in Table 1.

Table 1 GUC parameters related to the vector database

GUC Parameter

Level

Value Range/Default Value

Description

maintenance_work_mem

Session

[1024,2147483647]/[1MB,2048GB)

(65536/64MB)

Maximum amount of memory used in maintenance operations. The default unit is KB.

diskann_probe_ncandidates

Session

[1, 32768](128)

Size of the candidate set when the gsdiskann index is used to retrieve vectors.

gsivfflat_probes

Session

[1, 32768](5)

Number of inverted tables to be searched. If it exceeds the total number of inverted tables, the entire table is searched.

gsivfflat_secondary_probes

Session

[1, 32768](5)

Number of level-2 inverted tables to be searched. If it exceeds the total number of level-2 inverted tables, the entire table is searched.

enable_vectordb

Global parameter (SIGHUP)

[off, on](on)

An advance feature that specifies whether vector indexes can be created and whether vector indexes can be added, modified, and queried.