使用UpdateTimeseriesMeta接口,您可以批量更新时间线元数据的属性。一次UpdateTimeseriesMeta调用支持更新多个时间线的元数据。
前提条件
参数
timeseriesMeta表示一个时间线元数据,每个timeseriesMeta包括timeseriesKey和attributes。详细参数说明请参见下表,
参数 | 描述 |
---|---|
timeseriesKey | 时间线标识。 |
attributes | 时间线的属性信息,内容为字符串类型的key-value对。 |
示例
/**
* UpdateTimeseriesMetaSample用于更新时间线中的Attributes信息。
*/
func UpdateTimeseriesMetaSample(tsClient *tablestore.TimeseriesClient, timeseriesTableName string) {
fmt.Println("[Info]: Begin to update timeseries meta!")
PutTimeseriesDataSample(tsClient , timeseriesTableName)
updateTimeseriesMetaRequest := tablestore.NewUpdateTimeseriesMetaRequest(timeseriesTableName)
timeseriesKey := tablestore.NewTimeseriesKey()
timeseriesKey.SetMeasurementName("NETWORK")
timeseriesKey.SetDataSource("127.0.0.1")
timeseriesKey.AddTag("City" , "Hangzhou")
timeseriesKey.AddTag("Region" , "Xihu")
timeseriesMeta := tablestore.NewTimeseriesMeta(timeseriesKey)
//timeseriesMeta.SetUpdateTimeInUs(96400)
timeseriesMeta.AddAttribute("NewRegion" , "Yuhang")
timeseriesMeta.AddAttribute("NewCity" , "Shanghai")
updateTimeseriesMetaRequest.AddTimeseriesMetas(timeseriesMeta)
updateTimeseriesMetaResponse , err := tsClient.UpdateTimeseriesMeta(updateTimeseriesMetaRequest)
if err != nil {
fmt.Println("[Error]: Update timeseries meta failed with error: " , err)
return
}
if len(updateTimeseriesMetaResponse.GetFailedRowResults()) > 0 {
fmt.Println("[Error]: Update timeseries meta failed row: ")
for i := 0; i < len(updateTimeseriesMetaResponse.GetFailedRowResults()); i++ {
fmt.Println("[Error]: " , updateTimeseriesMetaResponse.GetFailedRowResults()[i].Index , updateTimeseriesMetaResponse.GetFailedRowResults()[i].Error)
}
}
QueryTimeseriesMetaSample(tsClient , timeseriesTableName)
fmt.Println("[Info]: UpdateTimeseriesMetaSample finished!")
}