Torna al blog BIM i IFC
Bessons digitals · 2026-10-16 · 8 min
Com de recents són les dades urbanes en temps real? Sis feeds mesurats durant 24 hores
«En temps real» no diu res de l'antiguitat que tenen les dades quan t'arriben. Hem registrat durant 24 hores sis feeds públics que llegeixen bessons digitals en viu i hem mesurat l'antiguitat de cada vehicle i cada estació que contenen. La resposta va de menys d'un segon a un minut i mig, i la marca de temps del mateix feed la pot amagar.
El bessó digital de la sortida de l'estació de Tochōmae a IFC Viewer Online: el model IFC de la sortida A4 sobre el mapa de Tòquio, amb el número en viu del tren de Toei a l'andana flotant a sobre
Tots els feeds en viu diuen que són en temps real. Per a un bessó digital, aquesta expressió amaga l'única xifra que decideix què volen dir els seus colors: quina antiguitat tenen les dades quan arriben. Un ancoratge pintat de vermell perquè fa tres minuts no tenia bicicletes no és el mateix que un que ara mateix no en té cap.
Així que ho hem mesurat. Durant 24 hores hem registrat sis feeds públics que llegeixen bessons en viu a Barcelona, Hèlsinki i Tòquio, i per a cada vehicle o estació de cada resposta hem comparat l'hora que escrivia el publicador amb l'hora en què arribaven les dades. El registre complet està publicat[log].
L’essencial
- El flux MQTT d'HSL arribava en menys d'un segon. La mateixa flota en GTFS-Realtime tenia uns 2 segons d'antiguitat, però els navegadors no poden llegir aquell feed.
- Les posicions dels trens de Toei tenien aproximadament mig minut d'antiguitat. Les dels autobusos de Toei i les estacions de Bicing tenien una mediana d'aproximadament un minut i mig, i arribaven fins a uns tres minuts en el 90% dels casos.
- La marca de temps del mateix feed pot enganyar: el fitxer de Bicing tenia un terç de segon d'antiguitat, mentre que les estacions que contenia havien informat uns 95 segons abans.
- El feed de carregadors d'Endolla no indica enlloc quan va informar cada carregador, només quan va canviar per última vegada, de manera que no es pot mostrar fins a quin punt està al dia.
- Totes les 14.329 peticions van rebre resposta, i el flux MQTT va portar missatges cada minut del dia.
Antiguitat mediana dels vehicles o les estacions d'una resposta típica, i fins on arriba el 90%.
Com ho hem mesurat
- Des de les 21:15 UTC del 15 d'octubre fins a les 21:15 UTC del 16 d'octubre de 2026, en un sol ordinador a Europa amb el rellotge sincronitzat.
- El GTFS-Realtime d'HSL es consultava cada 15 segons; Bicing i els dos feeds de Toei, cada 30 segons; Endolla, cada 5 minuts. Ens vam subscriure al flux MQTT d'HSL per a l'àrea d'Hèlsinki i el vam resumir per minuts.
- Per a cada resposta vam calcular la mediana i el percentil 90 dels seus vehicles o estacions; el gràfic mostra el valor típic d'aquestes xifres al llarg de les 24 hores.
L'antiguitat és l'hora d'arribada menys la marca de temps que el publicador va escriure per a cada element: el moment en què es va mesurar la posició d'un vehicle a GTFS-Realtime[gtfsrt], l'última vegada que una estació va informar a GBFS[gbfs], l'hora pròpia de cada missatge al flux d'HSL[hfp] i l'hora del registre de cada tren a ODPT.
Feed per feed
| Feed | Com arriba | Antiguitat mediana | El 90% per sota de | Elements per resposta |
|---|
| Autobusos d'HSL, HFP (Hèlsinki) | MQTT, enviat (push) | menys d'1 s | menys d'1 s | ~28.000 missatges per minut |
| Vehicles d'HSL, GTFS-Realtime (Hèlsinki) | HTTP, cada 15 s; sense CORS | 1,9 s | 1,9 s | 843 vehicles |
| Trens de Toei, ODPT (Tòquio) | HTTP, cada 30 s | 28 s | 30 s | 92 trens |
| Autobusos de Toei, GTFS-Realtime (Tòquio) | HTTP, cada 30 s | 88 s | 3,1 min | 490 autobusos |
| Estacions de Bicing, GBFS 3.0 (Barcelona) | HTTP, cada 30 s | 95 s | 2,8 min | 543 estacions |
| Carregadors d'Endolla, GELFS (Barcelona) | HTTP, cada 5 min | no consta | no consta | 1.366 connectors |
Valors típics al llarg de 24 hores, 15–16 d'octubre de 2026. Els recomptes d'elements són medianes; Toei no fa circular trens ni autobusos de matinada.
En surten tres grups. HSL publica el que diu cada autobús en el moment que ho diu, de manera que l'antiguitat és gairebé zero per MQTT i d'uns dos segons a través del seu fitxer GTFS-Realtime, que agrupa les dades per lots. Els registres de trens de Toei solien tenir aproximadament mig minut. Els autobusos de Toei i les estacions de Bicing informen cada pocs minuts cadascun, de manera que en qualsevol moment aproximadament la meitat tenen més d'un minut i mig: el 49% dels autobusos i el 52% de les estacions superaven els 90 segons d'antiguitat.
La marca de temps que diu «recent»
El fitxer d'estat de les estacions de Bicing porta una hora last_updated, i sempre era a menys d'un segon de l'hora actual: la marca s'hi posa en el moment de servir el fitxer. Les 543 estacions que conté havien informat, de mediana, 95 segons abans. Un bessó que es refiés de l'hora del fitxer mostraria «actualitzat fa 0 s» sobre dades d'un minut i mig. El feed d'autobusos de Toei mostra el mateix patró, més atenuat: la marca de temps del fitxer tenia uns 16 segons d'antiguitat, i els seus autobusos, uns 88.
La lliçó és senzilla: l'antiguitat és una propietat de cada element, no del fitxer. Llegeix l'hora que comunica cada vehicle o estació, i mostra aquesta.
El feed que no ho pot dir
La mida del fitxer de punts de recàrrega d'Endolla va canviar en 262 de 286 intervals de cinc minuts, de manera que és evident que es manté actualitzat. Però cada connector només porta l'hora en què el seu estat va canviar per última vegada: la meitat no havia canviat en unes 21 hores, i una desena part, en més de 10 dies. Pot ser del tot exacte, un carregador que ningú no ha fet servir durant la nit, o bé un carregador que ha deixat d'informar; el feed no permet distingir un cas de l'altre. Un bessó pot mostrar aquestes dades «tal com es publiquen», mai com a dades en viu.
Push o consulta periòdica
Els dos canals d'HSL porten els mateixos autobusos. Per MQTT, cada posició arriba en el moment que es produeix; pel fitxer que es consulta periòdicament, espera el lot següent, i a més el navegador ha d'esperar la seva pròxima consulta. Consultar també té un cost: el fitxer de Bicing ocupa uns 268 KB sense comprimir per a les 543 estacions, de manera que un bessó que en necessita una sola continua baixant-les totes a cada consulta. Consultar més sovint del que canvia la font només fa gastar dues vegades aquest ample de banda.
Què implica per a un bessó
- Mostra l'antiguitat al costat del valor, a partir de la marca de temps de l'element, no de la del fitxer.
- Situa el límit d'antiguitat per sobre del que és normal per al feed. Els exemples en viu d'aquí fan servir 45 segons per a les dàrsenes d'HSL, 2 minuts per als trens de Toei, 10 minuts per a la parada d'autobús de Toei i 15 minuts per a Bicing.
- El gris vol dir «sense dades recents», mai l'últim valor disfressat d'actual.
- Prefereix el push quan el publicador l'ofereixi; no consultis més sovint del que canvia la font.
- Un feed sense hora per element es pot mostrar, però no es pot dir que sigui en viu.
L'altra meitat de la qüestió és si una pàgina web pot llegir cadascun d'aquests feeds: quines dades obertes de ciutat pot llegir una pàgina web. Com fa servir el flux MQTT el bessó d'Hèlsinki ho trobaràs al bessó de la terminal d'autobusos amb MQTT.
Com de recents són les dades urbanes en temps real? Sis feeds mesurats durant 24 hores