I am planning to model a metric time series layer on top of FDB, and this layer can create potentially a few Trillion rows in the system. So I wanted to check if there is any aspect I should consider before starting out?
Most of the data will be cold data and I will try to model the data so that time_bucket is prefixed to the key (in addition to timestamp being suffixed), to try to produce ranges that become immutable once the time_bucket for that range has become old. This is being done to ensure that the data that has become cold does not incur more churn of any kind. Something like:
coarse_time_bucket/series_key/timestamp -> values
Is there any limitation on the absolute number of KV pairs that can be stored in the system ? Assuming that there is enough disk storage in the cluster to hold KV pairs, are there any other resource requirements that grow proportional to number of KVs (like a memory map to hold location of keys etc.)?