You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In spark-evaluate, we are (or will be) mapping retrievals to clients, see RSR per client #193.
The missing piece is aggregating per-client data to per-allocator data. The important insight is that each client is linked to a single allocator only.
fil-deal-ingester maintains a mapping between clients and allocators in the table allocator_clients.
We need to access this mapping from spark-evaluate or spark-stats, depending on where we aggregate per-client to per-allocator stats.
Possible options to consider:
Enhance each retrieval task in the round details with the list of allocators in addition to the list of clients.
This may be the easiest path if we map clients to allocators in spark-evaluate.
Implement a new REST API endpoint in spark-stats to allow spark-evaluate or spark-stats to map clients to allocators.
We must be careful about performance - we don't want to make one request for each client.
This endpoint can be useful for per-client dashboard as it will allow us to show the allocator from which the client has received DataCap.
spark-stats can provide a public facade for this endpoint using the same mechanism we have already in place for getting deals eligible for retrieval testing (source code).
The text was updated successfully, but these errors were encountered:
Since one allocator can have multiple clients, we should not combine per-client aggregated stats to produce per-allocator stats.
For example, one measurement can be linked to two clients from the same allocator. This should account for 1 total measurement. If we combine per-client aggregated stats, we would get 2 total measurements.
Based on the above, I think we need to produce per-allocator stats inside spark-evaluate using a similar algorithm to the one producing per-client stats.
Loop over all measurements.
Map each measurement to a list of clients of the deal(s) measured and then from clients to allocators. The goal is to get Map<allocator, measurement[]>.
For each allocator, aggregate the measurements to calculate the stats (total, successful, successful_http, etc.)
Provide retrieval-based RSR calculated on a per-allocator basis.
Pre-requisites:
Related discussions:
^^ The goal is to calculate RSR for deals made by a particular data onramp provider. See https://app.hex.tech/protocol/app/ccbb785c-7fad-42b5-9553-609cde5c6acc/latest
Notes:
In spark-evaluate, we are (or will be) mapping retrievals to clients, see RSR per client #193.
The missing piece is aggregating per-client data to per-allocator data. The important insight is that each client is linked to a single allocator only.
fil-deal-ingester maintains a mapping between clients and allocators in the table
allocator_clients
.We need to access this mapping from spark-evaluate or spark-stats, depending on where we aggregate per-client to per-allocator stats.
Possible options to consider:
The text was updated successfully, but these errors were encountered: