Search before asking
Motivation
Motivation
IoTDB already provides frequency-domain analysis capabilities in the tree model through UDFs such as fft/ifft in library-udf. However, users who work with the table model currently do not have an equivalent built-in or library-level way to run FFT/DFT analysis directly in SQL.
For table-model workloads, frequency-domain analysis is useful for scenarios such as vibration monitoring, rotating machinery diagnosis, signal periodicity analysis, anomaly detection, and sensor data preprocessing. Users should be able to calculate Fourier transform results over a time-ordered numeric column, optionally partitioned by device/tag columns, without switching back to the tree model or exporting data to external tools.
Solution
Add FFT and DFT support for the IoTDB table model.
A possible design is to provide table-model functions such as fft and dft that can process a numeric column ordered by time and return frequency-domain results. The exact SQL syntax can be discussed, but the function should support table-model usage patterns, for example:
SELECT *
FROM TABLE(
fft(
TABLE(
SELECT time, device_id, value
FROM vibration
WHERE time >= 0 AND time < 10000
)
PARTITION BY device_id
ORDER BY time
)
);
### Solution
_No response_
### Alternatives
_No response_
### Are you willing to submit a PR?
- [ ] I'm willing to submit a PR!
Search before asking
Motivation
Motivation
IoTDB already provides frequency-domain analysis capabilities in the tree model through UDFs such as
fft/ifftinlibrary-udf. However, users who work with the table model currently do not have an equivalent built-in or library-level way to run FFT/DFT analysis directly in SQL.For table-model workloads, frequency-domain analysis is useful for scenarios such as vibration monitoring, rotating machinery diagnosis, signal periodicity analysis, anomaly detection, and sensor data preprocessing. Users should be able to calculate Fourier transform results over a time-ordered numeric column, optionally partitioned by device/tag columns, without switching back to the tree model or exporting data to external tools.
Solution
Add FFT and DFT support for the IoTDB table model.
A possible design is to provide table-model functions such as
fftanddftthat can process a numeric column ordered by time and return frequency-domain results. The exact SQL syntax can be discussed, but the function should support table-model usage patterns, for example: