高級(jí)搜索概述
高級(jí)搜索基于SQL語句查詢當(dāng)前賬號(hào)和資源目錄成員中的資源。高級(jí)搜索提供了靈活、實(shí)用且免費(fèi)的資源全局檢索能力。您可以使用查詢模板快速查詢資源,無論是查找特定類型的資源還是進(jìn)行更復(fù)雜的查詢,高級(jí)搜索都能滿足您的要求。
功能特性
靈活的搜索條件
高級(jí)搜索不再受限于傳統(tǒng)搜索方式按照固定規(guī)則搜索資源的限制,您可以根據(jù)自己的需求和偏好定制搜索條件,從而更加準(zhǔn)確地搜索符合要求的資源。例如,您可以設(shè)置多個(gè)篩選條件,快速縮小搜索范圍,找到滿足條件的資源。另外,高級(jí)搜索不僅支持基本的查詢需求,還能很好地應(yīng)對(duì)復(fù)雜的查詢場景。無論是查找關(guān)聯(lián)資源、多條件組合查詢還是其他特定需求,高級(jí)搜索都能快速地提供準(zhǔn)確的查詢結(jié)果,幫助您全面深入地分析相關(guān)數(shù)據(jù)。
自定義查詢的資源范圍
您可以通過高級(jí)搜索查詢不同范圍內(nèi)的資源。您既可以選擇在當(dāng)前賬號(hào)內(nèi)搜索資源,也可以選擇在整個(gè)資源目錄的多個(gè)成員中搜索資源。
查詢模板
為了簡化查詢過程,高級(jí)搜索提供了示例查詢模板,這些示例查詢模板包含了常見的查詢語句,使您可以快速定位到所需的資源。同時(shí),您還可以將編寫的查詢語句保存為自定義查詢模板,后續(xù)可以直接使用自定義查詢模板,無需重新編寫。這不僅節(jié)省了您的時(shí)間,還保證了查詢的準(zhǔn)確性和一致性。無論您是初學(xué)者或是具備一定經(jīng)驗(yàn)的用戶,高級(jí)搜索都能滿足您的查詢需求,并確保您能夠快速、準(zhǔn)確地查詢到所需的資源。更多信息,請(qǐng)參見通過示例查詢模板搜索資源、通過自定義查詢模板搜索資源和查詢模板。
可視化圖表
高級(jí)搜索提供的可視化功能,可以將查詢結(jié)果以圖表的形式可視化呈現(xiàn)。當(dāng)您需要對(duì)資源進(jìn)行數(shù)據(jù)分析,了解資源的分布、占比等情況時(shí),您就可以使用該功能直觀地查看搜索結(jié)果。例如,您可以通過餅狀圖或柱狀圖查看不同類型資源的占比情況,從而根據(jù)需求進(jìn)行資源的優(yōu)化和調(diào)整。更多信息,請(qǐng)參見步驟三:查看查詢結(jié)果。
AI生成SQL
AI生成SQL功能基于阿里云百煉提供的AIGC(人工智能生成內(nèi)容)能力,可以根據(jù)您輸入的直觀的自然語言描述,自動(dòng)生成SQL語句,提升您的搜索體驗(yàn)和效率。更多信息,請(qǐng)參見AI生成SQL。
查詢語言
使用高級(jí)搜索時(shí),您可以通過輸入SQL語句進(jìn)行查詢、篩選和排序等操作。高級(jí)搜索中每個(gè)運(yùn)算符和函數(shù)的工作原理和操作方式都是基于PostgreSQL。關(guān)于高級(jí)搜索支持的SQL基本語法,請(qǐng)參見SQL基本語法。
查詢表
resources表是高級(jí)搜索中的核心數(shù)據(jù)表,它存儲(chǔ)了資源屬性的相關(guān)信息。高級(jí)搜索所有的查詢都是通過對(duì)resources表中的字段進(jìn)行查詢、篩選和排序等操作來實(shí)現(xiàn)的。例如,您可以通過在查詢條件中指定resource_name字段查詢特定名稱的資源,或者通過指定resource_type字段來查詢特定類型的資源。除了前面的核心字段外,resources表中的properties字段還存儲(chǔ)了資源的其他相關(guān)信息,如資源狀態(tài)、計(jì)費(fèi)類型等,而且不同資源類型的properties不同。
resources表的結(jié)構(gòu)如下表所示。
字段 | 類型 | 說明 |
resource_id | varchar | 資源ID |
resource_name | varchar | 資源名稱 |
region_id | varchar | 地域ID |
zone_id | varchar | 可用區(qū)ID |
resource_type | varchar | 資源類型 |
account_id | varchar | 賬號(hào)ID |
create_time | varchar | 創(chuàng)建時(shí)間 |
resource_group_id | varchar | 資源組ID |
tags | jsonb | 標(biāo)簽集合 |
ip_addresses | jsonb | IP地址集合 |
vpc_id | varchar | VPC ID |
v_switch_id | varchar | 交換機(jī)ID |
properties | jsonb | 資源屬性 |
使用限制
查詢數(shù)量限制
默認(rèn)情況下,高級(jí)搜索限制任何查詢最多只能返回1000條記錄。
當(dāng)數(shù)據(jù)量很大時(shí),您可以使用LIMIT和OFFSET的組合進(jìn)行分頁查詢。但是,為了保證查詢結(jié)果的連續(xù)性,應(yīng)該結(jié)合使用ORDER BY子句對(duì)結(jié)果進(jìn)行排序。
查詢頻率限制
每個(gè)用戶最多在5秒鐘查詢3次,超過次數(shù)會(huì)被限流。 配額值由許多因素確定,因此可能會(huì)發(fā)生更改。
查詢時(shí)間限制
單次查詢時(shí)間限制在10秒內(nèi),如果超過時(shí)間還未得到結(jié)果,系統(tǒng)會(huì)自動(dòng)中斷查詢并報(bào)錯(cuò)。
為了避免超時(shí),您可以通過以下方式降低查詢的復(fù)雜性:
增加限制條件。例如:當(dāng)有較大規(guī)模的數(shù)據(jù)需要查詢時(shí),可以通過ORDER BY指定按
resource_type
、resource_id
排序。限制返回?cái)?shù)據(jù)。例如:使用LIMIT限制返回結(jié)果的最大條目數(shù)。
如無必要,建議不要直接返回屬性
properties
。
查詢函數(shù)限制
更多信息,請(qǐng)參見支持的函數(shù)。