Skip to content

时序周期估计函数

对不同时间段内的时序数据进行周期估计。 select ts_period_detect(x,y,minPeriod,maxPeriod) x时间列,从小到大排列。格式为Unixtime时间戳,单位为秒。 y数值列,对应某时刻的数据。 minPeriod预估计周期最小长度占序列总长度的比例。小数形式,取值范围为(0,1]。 maxPeriod预估计周期最大长度占序列总长度的比例。说明 指定参数时,maxPeriod必须大于minPeriod。小数形式,取值范围为(0,1]。

SQL
*
and metric - type: demonetwork |
select
  ts_period_detect(stamp, value, 0.005, 0.2, 1, 'avg')
from
  (
    select
      key [1] as stamp,
      key [3] as value
    from
      (
        select
          ts_smooth_fir(stamp, value, 'rectangle', 4, 1, 'avg') as res
        from
          (
            select
              stamp - stamp % 10 as stamp,
              avg(value) as value
            from
              log
            GROUP by
              stamp
            order by
              stamp
          )
        limit
          1000
      ), unnest(res) as t(key)
  )

SQL查询结果样例:

样例图片