Hiii Typesense community, our team is planning to ...
# community-help
t
Hiii Typesense community, our team is planning to adopt Typesense as our internal search engine. We're looking to reuse our existing infrastructure to deploy Typesense on Cloud Run and mount a GCS bucket as a persistent volume. Is this feasible? Has anyone had any experience with this? Any insights would be greatly appreciated
j
Typesense is an in-memory datastore that needs to run as an uninterrupted persistent process. My understanding of Cloud Run is that it uses ephemeral containers that can spin down and up. This is incompatible with how Typesense functions. Also Typesense stores a backup of the raw data on a filesystem. GCS is block storage and so it's not possible to use GCS as the storage layer
t
Hi Jason, thanks for this detail. I just want to clarify a few things to better discuss with my team •
Cloud Run is that it uses ephemeral containers that can spin down and up
I just want to check if my understanding is correct that when Cloud Run spins down, only the memory is lost. When it spins back up, are we still able to mount the existing volume (in case we use filesystem volumes), then restoring/creating the memory again. Does it still an issue in that case? •
Also Typesense stores a backup of the raw data on a filesystem. GCS is block storage and so it's not possible to use GCS as the storage layer
-> oohhh okay I see so basically we need a something like filesystem storage as a volume.
What do you think Jason @Jason Bosco 🙂
j
oohhh okay I see so basically we need a something like filesystem storage as a volume.
That's correct.
When it spins back up, are we still able to mount the existing volume (in case we use filesystem volumes), then restoring/creating the memory again.
Yeah, that's fine. But Typesense will have to re-build the in-memory indices again. Depending on your index size this might take some time and won't be instantaneous. So your cold start times will be high
t
Thanks Jason, ok i got it
Yeah, that's fine. But Typesense will have to re-build the in-memory indices again.
because we're following blue/green strategy, so we need to find somehow identity in-memory indices is done
j
The health endpoint will return success if the indexing is done