Cosa fare se, quando si attraversa l'RDD, devo calcolare i valori nel set di dati chiamando il servizio esterno (bloccante)? Come pensi che potrebbe essere raggiunto?Come si esegue il blocco dell'IO in processi spark di apache?
valori val: Future[RDD[Double]] = Future sequence tasks
ho cercato di creare un elenco di Futures, ma come RDD id non Traversable, Future.sequence non è adatto.
Mi chiedo solo se qualcuno avesse avuto un problema simile e come lo hai risolto? Quello che sto cercando di ottenere è ottenere un parallelismo su un singolo nodo di lavoro, quindi posso chiamare quel servizio esterno volte per secondo.
Probabilmente, c'è un'altra soluzione, più adatta per la scintilla, come avere più nodi di lavoro su un singolo host.
È interessante sapere come affronta questa sfida? Grazie.
Che tipo di valore è necessario calcolare? È possibile che possa essere calcolato offline e unito al tuo set di dati? O che il codice remoto potrebbe essere tirato dentro come un barattolo e processato in-process? – DPM
Il valore viene calcolato confrontando l'input fornito e ogni elemento dal RDD. Così ho attraversato RDD e ho confrontato ogni elemento. Comarisson è una chiamata bloccante, perché è nascosta in un componente nativo. Ecco perché mi chiedo, come lo faresti e se avessi questa sfida? Apprezzo molto il tuo aiuto. –