In case you have your own slow SQL query, you can optimize it automatically here.
For the query above, the following recommendations will be helpful as part of the SQL tuning process.
You'll find 3 sections below:
CREATE INDEX aircraftdata_idx_action ON "public"."AircraftData" ("action");
CREATE INDEX aircraftdata_idx_uid ON "public"."AircraftData" ("uid");
SELECT
A.uid AS uid,
A.max_time AS time,
ST_AsText(ST_Collect(ARRAY(SELECT
public."AircraftData"."position"
FROM
public."AircraftData"
WHERE
public."AircraftData"."uid" = A.uid
AND "time" BETWEEN 1617608651642 AND 1617657618453
ORDER BY
"time" DESC LIMIT 254))) AS trajectory
FROM
(SELECT
M.uid AS uid,
M.max_time AS max_time
FROM
(SELECT
public."AircraftData"."uid",
MAX("time") AS max_time
FROM
public."AircraftData"
WHERE
"time" BETWEEN 1617608651642 AND 1617657618453
GROUP BY
public."AircraftData"."uid") M
INNER JOIN
(
SELECT
public."AircraftData"."uid"
FROM
public."AircraftData"
WHERE
"time" > 1617657618453
GROUP BY
public."AircraftData"."uid"
) N
ON M.uid = N.uid
) A
INNER JOIN
public."AircraftData" B
ON A.uid = B.uid
AND A.max_time = B.time
AND B.action != 2
ORDER BY
"time" ASC