Una serie di nuovi file con nomi di file univoci "appare" regolarmente 1 su un server. (Come centinaia di GB di nuovi dati ogni giorno, la soluzione dovrebbe essere scalabile in terabyte. Ogni file ha dimensioni di diversi megabyte, fino a diverse decine di megabyte.)
Esistono diverse macchine che elaborano tali file. (Dieci, la soluzione dovrebbe essere scalabile a centinaia.) Dovrebbe essere possibile aggiungere e rimuovere facilmente nuove macchine.
Esistono server di archiviazione dei file di backup su cui ogni file in arrivo deve essere copiato per l'archiviazione. I dati non devono essere persi, tutti i file in arrivo devono essere consegnati sul server di archiviazione di backup.
Ogni file in arrivo può essere consegnato a un singolo computer per l'elaborazione e deve essere copiato sul server di archiviazione di backup.
Non è necessario che il server ricevente memorizzi i file dopo averli inviati sulla loro strada.
Si prega di consigliare una soluzione affidabile per distribuire i file nel modo sopra descritto. La soluzione non deve essere basata su Java. Sono preferibili soluzioni Unix-way.
I server sono basati su Ubuntu, si trovano nello stesso centro dati. Tutte le altre cose possono essere adattate ai requisiti della soluzione.
1 Nota che sto omettendo intenzionalmente informazioni sul modo in cui i file vengono trasportati nel filesystem. Il motivo è che al giorno d'oggi i file vengono inviati da terze parti con diversi mezzi legacy (abbastanza stranamente, via SCP e ØMQ). Sembra più facile tagliare l'interfaccia tra cluster a livello di filesystem, ma se una o un'altra soluzione richiederà effettivamente un trasporto specifico, i trasporti legacy possono essere aggiornati a quello.