Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

[Feature request] Support FFT and DFT functions in the table model

Abierto
#17,939 13 comentarios 0 reacciones 1 asignado Ver en GitHub

Los mantenedores suelen responder en 1 día

@DaZuiZui ya está trabajando en esto.

Desde el 22/6/2026.

Evaluación

Este issue todavía no se ha evaluado.

Descripción

good-first-issue New Feature
Search before asking
  • I searched in the issues and found nothing similar.
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!
Lenguaje dominante
Java
Estrellas
6.4k
Forks
1.2k
Merge medio
1 d 11 h
PR fusionados (30 d)
149

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de apache/iotdb

Todos los issues de apache/iotdb

Issues similares

Más issues de Java

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.