Raccolta dati:
Un approccio è chiedere a tutti i siti di pubblicare un feed RSS con prezzi in un formato specifico. Potrebbe usare il formato ATOM. Parte del feed RSS di ATOM è che specifica i metadati al suo interno che dice, in sostanza, "non eseguire il checkback più frequentemente di ogni ora" (o qualsiasi altra cosa) che può aiutare a gestire la frequenza con cui eseguire il polling di ciascuno senza dover gestire tali dati centralmente la volatilità dei prezzi può variare a seconda della fonte). Questo è fondamentalmente come funziona un aggregatore RSS (come Google Reader).
Potrebbe anche cercare di rendere i formati dati OData (vedi www.odata.org).
In alternativa, tutti i siti potrebbero chiamare un'API centrale, ma sarà più difficile da gestire e probabilmente più complesso per i siti partner e più incline agli errori.
Manutenzione dei dati:
Un database! Le semplici tabelle di prezzo possono essere sufficienti: distruggi i dati così come sono e archivia in una forma che consente una facile aggregazione. Considera di conservare tutta la cronologia (potrebbe avere un altro valore nell'analisi delle tendenze o altro). Ricalcola gli aggregati in base a una pianificazione o su richiesta. Considera come gestire le "correzioni" ai prezzi (forse un sito di origine può eseguire il ping del sito centrale con un suggerimento di "correzione" fare la presa RSS può essere programmata prima di altrimenti per raccogliere le correzioni).
Non hai menzionato il volume. Set di dati molto grandi possono richiedere più considerazione, ma questo set up dovrebbe portarti molto lontano.