« Moving to Wikidata | Main | In defense of MARC »


Simon Spero

There can be a bit of tradeoff here, depending on the granularities of the dependent entities, and the design of the backend storage system.

One problem is latency; the dependent entities cannot be requested for at least one RTT ;if there are chains of depencies then this can quickly add up (HTTP/2.0 can reduce this effect somewhat).

If most of the dependent entities are used most of the time then it can be more efficient to send a dataset containing multiple entities.

This is especially true if the data is compressed (either ahead of time or on-the-fly). Most compression algorithms require a bit of a run-up to get started.
This is very much the case for RDF - especially n-triples / n-quads, where there aren't any prefixes, and for RDF/XML, which is XML...

This does not lessen the importance of making the other entities available by name (blank nodes must die).

[If the client requests an RDF format that supports named graphs then each entity can go in a separate graph. This can help with caching]

The comments to this entry are closed.

My Photo

February 2016

Sun Mon Tue Wed Thu Fri Sat
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29