Vorrei creare una sorta di configurazione distribuita per eseguire una tonnellata di query Web REST di piccole dimensioni/semplici in un ambiente di produzione. Per ogni 5-10 query correlate che vengono eseguite da un nodo, genererò una quantità molto piccola di dati derivati, che dovranno essere memorizzati in un database relazionale standard (come PostgreSQL).Soluzione per la distribuzione di MOLTE semplici attività di rete?
Quali piattaforme sono state create per questo tipo di set di problemi? La natura, le dimensioni dei dati e le quantità sembrano contraddire la mentalità di Hadoop. Ci sono anche altre architetture basate sulla rete come Condor e Sun Grid Engine, che ho visto menzionate. Non sono sicuro che queste piattaforme abbiano comunque un recupero dagli errori (verificando se un lavoro ha esito positivo).
Quello che mi piacerebbe davvero è una coda di tipo FIFO alla quale potrei aggiungere posti di lavoro, con il risultato finale del mio database che si aggiorna.
Qualche suggerimento sullo strumento migliore per il lavoro?
Suoni del tutto simili a un programma di monitoraggio (proprietario) che sto finendo. Scarica periodicamente da più URL a intervalli configurabili, analizzando e salvando i risultati in un database PostgreSQL. Ho implementato questo come un singolo programma C++ che mantiene una coda di priorità dei lavori di download (in realtà una std :: map perché i lavori devono essere estratti quando il monitoraggio è disabilitato) e usa libcurl per eseguire il download. Non ho affrontato il raggruppamento dei risultati principalmente perché il programma di monitoraggio e il database vivono sullo stesso server. Non ho davvero usato una piattaforma, quindi +1 :-) –