

如需與 Amazon Timestream for LiveAnalytics 類似的功能，請考慮使用 Amazon Timestream for InfluxDB。它提供簡化的資料擷取和單一位數毫秒查詢回應時間，以進行即時分析。[在這裡](https://docs.aws.amazon.com//timestream/latest/developerguide/timestream-for-influxdb.html)進一步了解。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 衍生函數
<a name="timeseries-specific-constructs.functions.derivatives"></a>

衍生項目是用來計算指定指標的變更率，並可用來主動回應事件。例如，假設您計算過去 5 分鐘內 EC2 執行個體 CPU 使用率的衍生，並注意到顯著的正衍生。這可能表示工作負載的需求增加，因此您可能決定要啟動更多 EC2 執行個體，以更好地處理您的工作負載。

Amazon Timestream 支援兩種衍生函數變體。本節提供 Timestream for LiveAnalytics 衍生函數的使用資訊，以及範例查詢。



## 用量資訊
<a name="w2aab7c59c13c13c13b9"></a>


| 函式 | 輸出資料類型 | Description | 
| --- | --- | --- | 
|  `derivative_linear(timeseries, interval)`  |  時間序列  |  針對指定的 ，計算 中每個點`timeseries`的[衍生](https://wikipedia.org/wiki/Derivative)`interval`。  | 
|  `non_negative_derivative_linear(timeseries, interval)`  |  時間序列  |  與 相同`derivative_linear(timeseries, interval)`，但只會傳回正值。  | 

## 查詢範例
<a name="w2aab7c59c13c13c13c11"></a>

**Example**  
尋找過去 1 小時內每 5 分鐘 CPU 使用率的變化率：  

```
SELECT DERIVATIVE_LINEAR(CREATE_TIME_SERIES(time, measure_value::double), 5m) AS result 
FROM “sampleDB”.DevOps 
WHERE measure_name = 'cpu_utilization' 
AND hostname = 'host-Hovjv' and time > ago(1h) 
GROUP BY hostname, measure_name
```

**Example**  
計算一個或多個微服務產生的錯誤增加率：  

```
WITH binned_view as (
    SELECT bin(time, 5m) as binned_timestamp, ROUND(AVG(measure_value::double), 2) as value            
    FROM “sampleDB”.DevOps  
    WHERE micro_service = 'jwt'  
    AND time > ago(1h) 
    AND measure_name = 'service_error'
    GROUP BY bin(time, 5m)
)
SELECT non_negative_derivative_linear(CREATE_TIME_SERIES(binned_timestamp, value), 1m) as rateOfErrorIncrease
FROM binned_view
```