Yep, why not both? Clients must bid for both connection slots and space in the fixed-size database. The underlying values could be computed dynamically as well, e.g. fixed database size could be based on disk size - if the relay owner adds more disk suddenly there are more slots and therefore they become cheaper.