使用UpdateTimeseriesMeta接口,您可以批量更新时间线元数据的属性。一次UpdateTimeseriesMeta调用支持更新多个时间线的元数据。
前提条件
- 已写入时序数据。具体操作,请参见写入时序数据。
- 已初始化TimeseriesClient。具体操作,请参见初始化OTSClient。
参数
timeseriesMeta表示一个时间线元数据,每个timeseriesMeta包括timeseriesKey和attributes。详细参数说明请参见下表,
参数 | 是否必选 | 描述 |
timeseriesKey | 是 | 时间线标识。包含如下内容: 说明 |
attributes | 是 | 时间线的属性信息,内容为字符串类型的key-value对。 |
示例
以下示例用于更新时间线中的Attributes信息。
func UpdateTimeseriesMetaSample(tsClient *tablestore.TimeseriesClient, timeseriesTableName string) {
fmt.Println("[Info]: Begin to update timeseries meta!")
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)
}
}
fmt.Println("[Info]: UpdateTimeseriesMetaSample finished!")
}
常见问题
相关文档
关于API说明的更多信息,请参见UpdateTimeseriesMeta。
如果要查看更新后的时间线属性信息,您可以通过检索时间线实现。更多信息,请参见检索时间线。