多元索引可以加速Lastpoint索引資料的檢索,並提供多維查詢和統計分析功能。本文介紹如何在Lastpoint索引中使用多元索引功能。
背景資訊
多元索引(Search Index)基於倒排索引和列式儲存,可以解決巨量資料的多維查詢和統計分析難題。當查詢Lastpoint索引資料的情境中有非主鍵列查詢、多列組合查詢、模糊查詢、全文檢索索引和向量檢索等複雜查詢需求以及求最值、統計行數、資料分組等資料分析需求時,您可以將這些屬性作為多元索引中的欄位並使用多元索引查詢與分析資料。
前提條件
已在時序表上建立Lastpoint索引。具體操作,請參見建立Lastpoint索引。
使用方式
您可以在時序表管理的Lastpoint索引地區建立、刪除、查看多元索引,以及使用多元索引檢索Lastpoint索引資料。
建立多元索引
進入執行個體管理頁面。
在頁面上方,選擇資源群組和地區。
在概覽頁面,單擊執行個體名稱或者單擊執行個體操作列的執行個體管理。
進入時序表管理頁面。
在執行個體管理頁面,單擊時序表列表頁簽。
在時序表列表頁簽,單擊時序表名或者單擊時序表操作列的資料管理。
為Lastpoint索引建立多元索引。
在基本詳情頁簽的Lastpoint索引地區,單擊Lastpoint索引的多元索引列的建立多元索引。
在建立多元索引對話方塊中,建立多元索引。
系統預設會自動產生索引名,可根據需要設定索引名。
選擇Schema產生方式。
重要欄位名和欄位類型需與Lastpoint索引表匹配。Lastpoint索引表欄位類型與多元索引欄位類型的對應關係請參見資料類型。
當設定Schema產生方式為手動錄入時,手動輸入欄位名,選擇欄位類型以及設定是否開啟數組。
當設定Schema產生方式為自動產生時,系統會自動將Lastpoint索引表的欄位作為索引欄位,可根據需要選擇欄位類型以及設定是否開啟數組。
說明虛擬列可以在不修改表結構的情況下將表中的列映射到多元索引的一個或多個虛擬列,可以用於查詢加速或採用不同的分詞器。如果您想詳細瞭解虛擬列的功能和使用方法,請參見虛擬列。
如果需要配置資料生命週期、路由鍵、索引預排序等選項,請開啟進階選項開關,並根據下表說明配置參數。
參數
說明
路由鍵
自訂路由欄位。可以選擇部分主鍵列作為路由欄位,一般情況下只需要設定一個。如果設定多個路由鍵,系統會將多個路由鍵的值拼接成一個值。
在進行索引資料寫入時,系統會根據路由欄位的值計算索引資料的分布位置,路由欄位的值相同的記錄會被索引到相同的資料分區中。
資料生命週期
多元索引中資料的儲存時間,單位為秒。預設值為-1,表示資料永不到期。
資料生命週期的取值最低為86400秒(一天),也可設定為-1(永不到期)。
如果需要系統自動清理多元索引中的歷史資料,您可以配置資料生命週期為指定時間。當資料的儲存時間超過設定的資料生命週期時,系統會自動清理超過資料生命週期的資料。
預排序
多元索引預設按照設定的索引預排序方式進行排序,用於確定資料的預設返回順序。
索引預排序只支援按照主鍵排序和按照欄位值排序兩種方式。如果未自訂預排序,則預設為主鍵排序,您可以根據實際查詢情境指定預排序方式。
重要含有Nested類型欄位的多元索引不支援索引預排序。
單擊確定。
通過多元索引檢索資料
在基本詳情頁簽的Lastpoint索引地區,單擊Lastpoint索引的多元索引列的搜尋。
在查詢資料對話方塊,查詢資料。
系統預設返回所有列,如需顯示指定屬性列,關閉擷取所有列並輸入需要返回的屬性列,多個屬性列之間用半形逗號(,)隔開。
說明系統預設會返回Lastpoint索引表的主鍵列。
根據需要選擇邏輯操作符為 And、Or 或者 Not。
當選擇邏輯操作符為 And 時,返回滿足指定條件的資料。當選擇邏輯操作符為 Or 時,如果配置了單個條件,則返回滿足指定條件的資料;如果配置了多個條件,則返回滿足任意一個條件的資料。當選擇邏輯操作符為 Not 時,返回不滿足指定條件的資料。
選擇索引欄位,單擊添加,並設定索引欄位的查詢類型和輸入要查詢的值。
說明如果需要添加多個要查詢的值,請多次執行填寫值並單擊增加的操作來完成添加。
系統預設關閉排序功能,如需根據指定欄位對返回結果進行排序,開啟是否排序開關後,根據需要添加要進行排序的欄位並配置排序方式。
系統預設關閉統計功能,如需對指定欄位進行資料統計,開啟是否統計開關後,根據需要添加要進行統計的欄位和配置統計資訊。
單擊確定。
符合查詢條件的資料和統計結果將顯示在基本詳情頁簽的Lastpoint索引地區中。
管理多元索引
建立多元索引後,請根據需要執行相應操作。
操作 | 說明 |
查看索引詳情 | 查看多元索引的索引基本資料、索引計量、路由鍵、索引欄位和預排序等資訊。
|
刪除多元索引 | 如果不再需要多元索引時,您可以刪除多元索引。
|
開發整合
您可以使用以下語言的SDK在Lastpoint索引中使用多元索引功能。
計費資訊
常見問題
附錄:範例情境
在車連網情境中,車輛通過感應器上報時序資料到雲端。通過儲存、查詢和分析這些時序資料,使用者可以實現車況報告、車輛定位、交通管理和軌跡投屏等業務需求。
假設時序表的資料樣本如下:
其中_m_name
、_data_source
和_tags
為時間軸標識,分別代表度量名稱、資料來源和時間軸的標籤資訊,_time
為資料上報時間。gps
、speed
、status
、total_mileage
和remaining_mileage
為時間軸的時序資料,分別代表車輛GPS座標、車輛速度、車輛狀態、車輛總裡程和車輛剩餘裡程。
_m_name | _data_source | _tags | _time | gps | speed | status | total_mileage | remaining_mileage |
平台A | sensor1 | ["region=hangzhou","car_model=sedan","number_plate=浙AD7512*","color=white"] | 1730422800000000 | 30.245853,120.178564 | 0 | 閑置 | 20000 | 450 |
平台A | sensor1 | ["region=hangzhou","car_model=sedan","number_plate=浙AD7512*","color=white"] | 1730423400000000 | 30.245853,120.178564 | 0 | 閑置 | 20000 | 450 |
平台A | sensor2 | ["region=hangzhou","car_model=suv","number_plate=浙C72B2*","color=black"] | 1730779200000000 | 30.245278,120.150269 | 50 | 使用中 | 15000 | 300 |
平台A | sensor2 | ["region=hangzhou","car_model=suv","number_plate=浙C72B2*","color=black"] | 1730779800000000 | 30.245853,120.213654 | 80 | 使用中 | 15050 | 250 |
平台B | sensor3 | ["region=hangzhou","car_model=sedan","number_plate=浙B121*9","color=blue"] | 1730862000000000 | 30.246013,120.124470 | 60 | 使用中 | 18200 | 300 |
平台B | sensor3 | ["region=hangzhou","car_model=sedan","number_plate=浙B121*9","color=blue"] | 1730862600000000 | 30.246022,120.124460 | 0 | 閑置 | 18230 | 270 |
Table Store會自動同步時序表中時間軸的最新時間點資料到Lastpoint索引表,Lastpoint索引中的資料樣本如下:
_#h | _m_name | _data_source | _tags | _time | gps | speed | status | total_mileage | remaining_mileage |
4c#平台A#07 | 平台A | sensor1 | ["region=hangzhou","car_model=sedan","number_plate=浙AD7512*","color=white"] | 1730423400000000 | 30.245853,120.178564 | 0 | 閑置 | 20000 | 450 |
25#平台A#ae | 平台A | sensor2 | ["region=hangzhou","car_model=suv","number_plate=浙C72B2*","color=black"] | 1730779800000000 | 30.245853,120.213654 | 80 | 使用中 | 15050 | 250 |
b2#平台B#4b | 平台B | sensor3 | ["region=hangzhou","car_model=sedan","number_plate=浙B121*9","color=blue"] | 1730862600000000 | 30.246022,120.124460 | 0 | 閑置 | 18230 | 270 |
假設存在以下查詢需求,您可以為Lastpoint索引建立多元索引後,充分利用多元索引的功能進行查詢。
查詢當前處於閑置狀態且剩餘裡程超過300公裡的車輛。
查詢指定地區內的車輛。
查詢當前處於使用中狀態的車輛最大速度。
建立多元索引。
多元索引欄位包括
gps
、speed
、status
、和remaining_mileage
欄位,分別代表車輛GPS座標、車輛速度、車輛狀態和車輛剩餘裡程。使用多元索引功能查詢資料,具體實現方式可參見下表。
查詢需求 | 實現方式 |
查詢當前處於閑置狀態且剩餘裡程超過300公裡的車輛。 | 通過多元索引進行精確查詢與範圍查詢的組合查詢, |
查詢指定地區內的車輛。 | 通過多元索引進行地理位置查詢, |
查詢當前處於使用中狀態的車輛最大速度。 | 通過多元索引進行匹配查詢和統計彙總, |