We have to deal with a lot of historical TS data as well as recent. Is Timescale a solution we should look into if we have to backfill a lot of data or is a NoSQL option more ideal?
TimescaleDB is actually a lot better for backfilled/out-of-order data then a lot of NoSQL options. This is because in TimescaleDB data is fundamentally organized by data time instead of insert time (as it is for LSM trees, for instance).