We previously learnt to measure the use of SERVICE syntax in queries running on Wikidata Query Service. While it provided some initial understanding of query federation happening, this data is not very reliable. It mixes URLs with prefixes (T399805), federation with invoking helper behavior (T399827) and doesn't show which attempts to federate were actually successful (T399828).
In this task, we investigate whether it is possible to get data on the actual outgoing subqueries (instead of looking at the query that the user wrote).
Ideally, the data should include:
- graph name (In this context, “graph” refers to the source database/instance where the user originally ran their query. e.g. wikidata_main, wikidata_scholarly,.. etc)
- timestamp
- result code (success / fail)
- endpoint the subquery went to via http
- is this endpoint on the allowlist (can also be part of the result code)
Tom's assumption is that we will need to start the investigation here: https://gerrit.wikimedia.org/r/plugins/gitiles/wikidata/query/rdf/
We start with a timeboxed investigation of the feasibility and depending on the outcome, make a decision whether to proceed with the actual implementation in the data.