For long storage this type of structure is build. The solution is you can send your samples from prometheus to other clustered storage system. Remote write sends samples as they are ingested to another system. Remote read allows PromQL to transparently use samples from another system, as if it were stored locally within the Prometheus. For this you can edit your prometheus.yml and write those rules.
remote_write:
- url: http://localhost:1234/write
remote_read:
- url: http://localhost:1234/read
You have to enable write_relabel_configs flag for the service.