特征检索函数
特征检索函数应用于图像特征的多维数据碰撞分析。这些函数不支持跨Schema调用。
- build_vector_config_env(serviceTableName text, keyName text, vectorName text, vectorLen int, vectorDim int, algorithmName text)
描述:创建业务表后,需要调用此函数来完成三个内部表——未编码表、已编码表、模型表的创建,并构建业务表和这些内部表的关联关系。即调用此函数后,GaussDB 200会生成三张内部表和一张关联关系表gpu_vector_info。三张内部表的名称依次为*_uncode、*_mode1和*_code,其中*代表业务表表名。
入参:- serviceTableName:业务表表名。
- keyName:索引列字段名
- vectorName:长特征字段名。
- vectorLen:特征值长度。
- vectorDim:特征维度。
- algorithmName:算法名。
示例:1
select * from build_vector_config_env('face_data', 'id' ,'face_feature', 1024, 256, 'algorithm_cpu_pq_model');
执行上述示例后,会生成4张表: face_data_uncode、face_data_code、 face_data_model和gpu_vector_info
- drop_vector_config_env(serviceTableName text)
描述:删除业务表后,需要调用此函数清除对应的内部表,并删除业务表和内部表的关联关系,同时删除规则。
入参:serviceTableName——业务表表名。
- int2 reload_searchlet_config()
描述:通过FusionInsight Manager更改配置参数后,通知searchlet重新加载配置文件(.yaml)。
入参:无。
返回值:int2类型。0表示成功,非0表示失败。不同的非0值代表不同的错误原因。
- float4 long_feature_compare(text, bytea, bytea)
描述:长特征查询时,根据指定的长特征值(称为“目标长特征”),在待比较长特征集合中查找到特征值相似度满足某一阈值条件的特征集合。
入参:目标长特征值+待比较长特征值集合。
返回值:两个特征值的相似度范围值。
- record short_feature_search(text, bytea, int8, int, text)
描述:短特征查询时,根据指定的短特征值(称为“目标短特征”),查找特征值相似度满足某一阈值条件的数据集合。Searchlet的短特征过滤目前不支持变长类型属性,且Searchlet支持过滤属性的类型也很有限(目前仅支持:int32/int64/char/bool/float/double/timestamp等类型),同时也支持操作符>、<、=、>=、<=。
入参:待查询业务表表名+目标长特征值+target_id+期望短特征比对行数+查询过滤条件。
返回值:返回与特征值相似的数据集合。
- int2 delete_vector_gpu_by_date(serviceTableName text, date_attr_name text, date_val text)
描述:删除业务表中指定日期的数据,同时调用函数关联删除模型表、已编码表中的相同日期的数据。
入参:- service_name:业务表表名。
- date_attr_name:指定日期在业务表中的属性名。
- date_val:待删除日期。
返回值:int2类型。0表示成功,非0表示失败。不同的非0值代表不同的错误原因。
- pgxc_get_simsearch_lib_load_status(OUT node_name, OUT lib_load_status, OUT lib_load_fail_reason)
描述:获取当前短特征查询所需so库的加载状态。
入参:- node_name:集群节点名。
- lib_load_status:lib库加载状态true或false。
- lib_load_fail_reason:lib库加载失败报的错误码参考表。
- 此外,还有一些其他函数如下表所示,在实际应用中不建议客户使用。
表1 其他函数列表 函数名称
功能描述
add_vector_gpu
用于将短特征和结构化数据插入到GPU中。
commit_vector_gpu
将未编码表中数据插入到已编码表、清空未编码表后调用C function完成gpu数据生效。
clean_vector_gpu
MPP集群重启或主备切换时将GPU中短特征和结构化数据清空。
get_searchlet_info
查询searchlet的相应信息。
get_searchlet_table_attr_info
查询searchlet中表的属性信息。
pgxc_get_searchlet_algorithm_info
查询searchlet中的算法信息。
pgxc_get_searchlet_vector_status
查询searchlet中vector的状态。
pgxc_get_simsearch_vector_set
查询向量集的信息。
pgxc_get_searchlet_resource_info
查询searchlet的resource信息。
查看更多:华为GaussDB 200 基于GaussDB 200的图像特征检索




