Interconnected Solid Pods form a Decentralized Knowledge Graph (DKG)
Lack of centralized index(es)
Massive number of globally distributed sources
Permissioned data
Difficulties for user-facing app developers
-
Discovering data
How can I find pods? How can I find data within a pod?
-
Combining data
How to combine data across different pods?
-
Preserving privacy
How to not leak sensitive data?
Abstract access to DKGs with query engines
Hide the complexities of reading and writing for app developers
↔
↔
SPARQL, GraphQL, …
Image credit
Solid pods adhere to Linked Data Principles
-
Client-side engines can discover data by following links
Link Traversal Query Processing:
Lookup more information about things by following links
➕ Fully decentralized
No dependency on intermediaries
Robust against partial unavailability
➖ Slow for complex queries
Query results arrive incrementally
within human attention limits
Query execution time mainly influenced by number of followed links
If pods expose more information, complex querying can become faster
-
When following links, engines can discover optimizations
If pods expose them
Pods exposing shape information allows query engines to skip many links
Pods exposing cardinality information allows engines to make better query plans
- Hanski, Jonni, et al. "Link Traversal over Decentralised Environments
using Restart-Based Query Planning." ICWE 2025.
Let's optimize client-driven execution!