AI特性函数
gs_index_advise(text)
描述:针对单条查询语句推荐索引。
参数:SQL语句字符串。
返回值类型:record
示例请参见《特性指南》的“DBMind: 数据库自治运维 > DBMind的AI子功能 > Index-advisor:索引推荐 > 单query索引推荐”章节。
hypopg_create_index(text, [text])
描述:创建虚拟索引。
参数:创建索引语句的字符串,创建的虚拟索引的级别(可选)。
返回值类型:record
示例请参见《特性指南》的“DBMind: 数据库自治运维 > DBMind的AI子功能 > Index-advisor:索引推荐 > 虚拟索引”章节。
hypopg_display_index([text])
描述:显示所有创建的虚拟索引信息。
参数:显示的虚拟索引级别(可选)。
返回值类型:record
示例请参见《特性指南》的“DBMind: 数据库自治运维 > DBMind的AI子功能 > Index-advisor:索引推荐 > 虚拟索引”章节。
hypopg_drop_index(oid)
描述:删除指定的虚拟索引。
参数:索引的oid。
返回值类型:bool
示例请参见《特性指南》的“DBMind: 数据库自治运维 > DBMind的AI子功能 > Index-advisor:索引推荐 > 虚拟索引”章节。
hypopg_reset_index([text])
描述:清除所有虚拟索引。
参数:清除的虚拟索引级别(可选)。
返回值类型:无
示例请参见《特性指南》的“DBMind: 数据库自治运维 > DBMind的AI子功能 > Index-advisor:索引推荐 > 虚拟索引”章节。
hypopg_estimate_size(oid)
描述:估计指定索引创建所需的空间大小。
参数:索引的oid。
返回值类型:int8
示例请参见《特性指南》的“DBMind: 数据库自治运维 > DBMind的AI子功能 > Index-advisor:索引推荐 > 虚拟索引”章节。
check_engine_status(ip text, port text)
描述:测试给定的IP和port上是否有predictor engine提供服务。
参数:predictor engine的IP地址和端口号。
返回值类型:text

该函数当前版本不可用。
encode_plan_node(optname text, orientation text, strategy text, options text, dop int8, quals text, projection text)
描述:对入参的计划算子信息进行编码。
参数:计划算子信息。
返回值类型:text

该函数为内部功能调用函数,不建议用户直接使用。
model_train_opt(template text, model text)
描述:训练给定的查询性能预测模型。
参数:性能预测模型的模板名和模型名。
返回值类型:startup_time_accuracy FLOAT8, total_time_accuracy FLOAT8, rows_accuracy FLOAT8, peak_memory_accuracy FLOAT8

该函数当前版本不可用。
track_model_train_opt(ip text, port text)
描述:返回给定IP和port predictor engine的训练日志地址。
参数:predictor engine的IP地址和端口号。
返回值类型:text

该函数当前版本不可用。
encode_feature_perf_hist(datname text)
描述:将目标数据库已收集的历史计划算子进行编码。
参数:数据库名。
返回值类型:queryid bigint, plan_node_id int, parent_node_id int, left_child_id int, right_child_id int, encode text, startup_time bigint, total_time bigint, rows bigint, peak_memory int
gather_encoding_info(datname text)
描述:调用encode_feature_perf_hist,将编码好的数据进行持久化保存。
参数:数据库名。
返回值类型:int
db4ai_predict_by_bool (text, VARIADIC "any")
描述:获取返回值为布尔型的模型进行模型推断任务。此函数为内部调用函数,建议直接使用语法PREDICT BY进行推断任务。
参数:模型名称和推断任务的输入列。
返回值类型:bool
db4ai_predict_by_float4(text, VARIADIC "any")
描述:获取返回值为float4的模型进行模型推断任务。此函数为内部调用函数,建议直接使用语法PREDICT BY进行推断任务。
参数:模型名称和推断任务的输入列。
返回值类型:float
db4ai_predict_by_float8(text, VARIADIC "any")
描述:获取返回值为float8的模型进行模型推断任务。此函数为内部调用函数,建议直接使用语法PREDICT BY进行推断任务。
参数:模型名称和推断任务的输入列。
返回值类型:float
db4ai_predict_by_int32(text, VARIADIC "any")
描述:获取返回值为int32的模型进行模型推断任务。此函数为内部调用函数,建议直接使用语法PREDICT BY进行推断任务。
参数:模型名称和推断任务的输入列。
返回值类型:int
db4ai_predict_by_int64(text, VARIADIC "any")
描述:获取返回值为int64的模型进行模型推断任务。此函数为内部调用函数,建议直接使用语法PREDICT BY进行推断任务。
参数:模型名称和推断任务的输入列。
返回值类型:int
db4ai_predict_by_numeric(text, VARIADIC "any")
描述:获取返回值为numeric的模型进行模型推断任务。此函数为内部调用函数,建议直接使用语法PREDICT BY进行推断任务。
参数:模型名称和推断任务的输入列。
返回值类型:numeric
db4ai_predict_by_text(text, VARIADIC "any")
描述:获取返回值为字符型的模型进行模型推断任务。此函数为内部调用函数,建议直接使用语法PREDICT BY进行推断任务。
参数:模型名称和推断任务的输入列。
返回值类型:text
db4ai_predict_by_float8_array(text, VARIADIC "any")
描述:获取返回值为字符型的模型进行模型推断任务。此函数为内部调用函数,建议直接使用语法PREDICT BY进行推断任务。
参数:模型名称和推断任务的输入列。
返回值类型:text
gs_explain_model(text)
描述:获取返回值为字符型的模型进行模型解析文本化任务。
参数:模型名称。
返回值类型:text
示例:
--创建数据表。 gaussdb=# CREATE TABLE houses ( id INTEGER, tax INTEGER, bedroom INTEGER, bath DOUBLE PRECISION, price INTEGER, size INTEGER, lot INTEGER, mark text ); --插入训练数据。 gaussdb=# INSERT INTO houses(id, tax, bedroom, bath, price, size, lot, mark) VALUES (1,590,2,1,50000,770,22100,'a+'), (2,1050,3,2,85000,1410,12000,'a+'), (3,20,2,1,22500,1060,3500,'a-'), (4,870,2,2,90000,1300,17500,'a+'), (5,1320,3,2,133000,1500,30000,'a+'), (6,1350,2,1,90500,850,25700,'a-'), (7,2790,3,2.5,260000,2130,25000,'a+'), (8,680,2,1,142500,1170,22000,'a-'), (9,1840,3,2,160000,1500,19000,'a+'), (10,3680,4,2,240000,2790,20000,'a-'), (11,1660,3,1,87000,1030,17500,'a+'), (12,1620,3,2,118500,1250,20000,'a-'), (13,3100,3,2,140000,1760,38000,'a+'), (14,2090,2,3,148000,1550,14000,'a-'), (15,650,3,1.5,65000,1450,12000,'a-'); --训练模型。 gaussdb=# CREATE MODEL gs_explain USING logistic_regression FEATURES size, lot TARGET mark FROM HOUSES WITH learning_rate=0.88, max_iterations=default; —文本化模型 gaussdb=# select *from gs_explain_model('price_model'); gs_explain_model ---------------------------------------------------------------- Name: price_model + Algorithm: logistic_regression + Query: CREATE MODEL price_model USING logistic_regression + FEATURES size, lot + TARGET mark + FROM HOUSES + WITH learning_rate=0.88, max_iterations=default; + Return type: Text + Pre-processing time: 0.000000 + Execution time: 0.000262 + Processed tuples: 15 + Discarded tuples: 0 + batch_size: 1000 + decay: 0.9500000000 + learning_rate: 0.8800000000 + max_iterations: 100 + max_seconds: 0 + optimizer: gd + tolerance: 0.0005000000 + seed: 1719571149 + verbose: false + accuracy: 0.5333333611 + f1: 0.5333333611 + precision: 0.5000000000 + recall: 0.5714285970 + loss: -nan + weights: {1636.68648564241,-119.516647562169,1.12196231032849}+ categories: {a+,a-} + (1 row)
gs_ai_stats_explain(text, text[])
描述:打印对应表和列上的多列智能统计信息。
参数:表名称和列名集合。
返回值类型:text
gs_acm_analyze_workload_manual()
描述:手动基于当前数据库下的算子反馈数据训练基数估计模型。
参数:无。
返回值类型:text
gs_stat_get_acm_feedback_operator_info()
描述:展示目前全局内存中收集到的所有算子反馈数据。
参数:无。
返回值类型:record
gs_stat_get_sql_feedback_info()
描述:展示目前全局内存中反馈基数功能生效范围内SQL使用反馈次数以及使用和不使用分别的执行时间。
参数:无。
返回值类型:record
gs_costmodel_calibration_manual()
描述:手动触发算子时间收集并且矫正代价模型参数。
参数:无。
返回值类型:text
gs_show_aplan(cstring)
描述:查看本session中缓存的查询的多计划缓存。
参数:表示prepare name用于查找对应的缓存计划。
返回值类型:text
ai_watchdog_detection_warnings()
描述:获取AI Watchdog的风险告警信息。需要SYSADMIN或MONADMIN访问权限。
参数:无。
返回值类型:record
ai_watchdog_monitor_status(int)
描述:获取AI Watchdog的监控信息。需要SYSADMIN或MONADMIN访问权限。
参数:返回监控序列的长度上限。
返回值类型:record
ai_watchdog_parameters()
描述:获取AI Watchdog的内部参数或状态信息。需要SYSADMIN或MONADMIN访问权限。
参数:无。
返回值类型:record