建立多元索引後,您可以查詢多元索引的描述資訊,例如多元索引的欄位資訊、索引預排序等。
介面
查詢多元索引描述資訊的介面為DescribeSearchIndex。
參數
參數 | 說明 |
tableName | 資料表名稱。 |
indexName | 多元索引名稱。 |
使用方式
您可以使用控制台、命令列工具或者SDK進行查詢多元索引描述資訊的操作。
進行查詢多元索引描述資訊操作之前,您需要完成如下準備工作。
使用阿里雲帳號或者使用具有Table Store操作許可權的RAM使用者進行操作。如果需要為RAM使用者授權Table Store操作許可權,請參見通過RAM Policy為RAM使用者授權進行配置。
使用SDK方式和命令列工具方式進行操作時,如果當前無可用AccessKey,則需要為阿里雲帳號或者RAM使用者建立AccessKey。具體操作,請參見建立AccessKey。
已建立資料表。具體操作,請參見資料表操作。
已為資料表建立多元索引。具體操作,請參見建立多元索引。
使用SDK方式進行操作時,還需要完成初始化Client。具體操作,請參見初始化OTSClient。
使用命令列工具方式進行操作前,還需要完成下載並啟動命令列工具,然後配置接入執行個體資訊並選擇要操作的表。具體操作,請參見下載命令列工具、啟動並配置接入資訊和資料表操作。
使用控制台
通過控制台查看多元索引的描述資訊,例如索引基本資料、索引計量、路由鍵、索引欄位和預排序等資訊。
進入索引管理頁簽。
在頁面上方,選擇資源群組和地區。
在概覽頁面,單擊執行個體名稱或在操作列單擊執行個體管理。
在執行個體詳情頁簽下的資料表列表頁簽,單擊資料表名稱或在操作列單擊索引管理。
在索引管理頁簽,單擊目標多元索引操作列的索引詳情。
在索引詳情對話方塊,即可查看索引基本資料、索引計量、路由鍵、索引欄位和預排序等資訊。
使用命令列工具
通過命令列工具執行describe_search_index
命令查詢多元索引描述資訊。更多資訊,請參見多元索引。
以下樣本用於查看search_index多元索引的資訊。
describe_search_index -n search_index
返回結果樣本如下所示。其中為Index schema多元索引的Schema,TimeToLive為多元索引的資料生命週期。
Index schema:
{
"IndexSetting": {
"RoutingFields": null
},
"FieldSchemas": [
{
"FieldName": "id",
"FieldType": "KEYWORD",
"Index": true,
"IndexOptions": null,
"Analyzer": null,
"AnalyzerParameter": null,
"EnableSortAndAgg": true,
"EnableHighlighting": null,
"Store": false,
"IsArray": false,
"FieldSchemas": null,
"IsVirtualField": false,
"SourceFieldNames": null,
"DateFormats": null
},
{
"FieldName": "Col_Keyword",
"FieldType": "KEYWORD",
"Index": true,
"IndexOptions": null,
"Analyzer": null,
"AnalyzerParameter": null,
"EnableSortAndAgg": true,
"EnableHighlighting": null,
"Store": false,
"IsArray": false,
"FieldSchemas": null,
"IsVirtualField": false,
"SourceFieldNames": null,
"DateFormats": null
},
{
"FieldName": "Col_Long",
"FieldType": "LONG",
"Index": true,
"IndexOptions": null,
"Analyzer": null,
"AnalyzerParameter": null,
"EnableSortAndAgg": true,
"EnableHighlighting": null,
"Store": false,
"IsArray": false,
"FieldSchemas": null,
"IsVirtualField": false,
"SourceFieldNames": null,
"DateFormats": null
},
{
"FieldName": "Col_Text",
"FieldType": "TEXT",
"Index": true,
"IndexOptions": null,
"Analyzer": "single_word",
"AnalyzerParameter": {
"CaseSensitive": null,
"DelimitWord": null
},
"EnableSortAndAgg": false,
"EnableHighlighting": null,
"Store": false,
"IsArray": false,
"FieldSchemas": null,
"IsVirtualField": false,
"SourceFieldNames": null,
"DateFormats": null
},
{
"FieldName": "Timestamp",
"FieldType": "LONG",
"Index": true,
"IndexOptions": null,
"Analyzer": null,
"AnalyzerParameter": null,
"EnableSortAndAgg": true,
"EnableHighlighting": null,
"Store": false,
"IsArray": false,
"FieldSchemas": null,
"IsVirtualField": false,
"SourceFieldNames": null,
"DateFormats": null
}
],
"IndexSort": {
"Sorters": [
{
"Name": "PrimaryKeySort",
"Sorter": {
"Order": "ASC"
}
}
]
}
}
TimeToLive: -1
使用SDK
您可以通過Java SDK、Go SDK、Python SDK、Node.js SDK、.NET SDK和PHP SDK查詢多元索引描述資訊。此處以Java SDK為例介紹查詢多元索引描述資訊的操作。
以下樣本用於擷取多元索引的詳細資料,例如資料生命週期、建立時間、同步狀態、欄位資訊等。
private static DescribeSearchIndexResponse describeSearchIndex(SyncClient client) {
DescribeSearchIndexRequest request = new DescribeSearchIndexRequest();
//設定資料表名稱。
request.setTableName("<TABLE_NAME>");
//設定多元索引名稱。
request.setIndexName("<INDEX_NAME>");
DescribeSearchIndexResponse response = client.describeSearchIndex(request);
//列印response的詳細資料。
System.out.println(response.jsonize());
//列印多元索引資料同步狀態。
System.out.println(response.getSyncStat().getSyncPhase().name());
return response;
}
相關文檔
如果已有多元索引不滿足使用需求,您可以建立新的多元索引、通過修改多元索引的Schema來增刪改多元索引欄位或者根據需要調整多元索引的TTL。具體操作,請參見建立多元索引、動態修改schema和生命週期管理。