Sto cercando di eseguire la moltiplicazione della matrice usando Apache Spark e Java. Ho 2 domande principali: Come creare RDD che può rappresentare la matrice in Apache Spark? Come moltiplicare due di questi RDD?
RDD ha un ordine significativo (al contrario di un ordine casuale imposto dal modello di archiviazione) se è stato elaborato da sortBy() , come spiegato in questa risposta . Ora, quali operazioni preservano quell’ordine? Ad esempio, è garantito che (dopo a.sortBy() ) a.map(f).zip(a) === a.map(x => (f(x),x)) Che ne dite di a.filter(f).map(g) === a.map(x => […]
scala> val p=sc.textFile(“file:///c:/_home/so-posts.xml”, 8) //i’ve 8 cores p: org.apache.spark.rdd.RDD[String] = MapPartitionsRDD[56] at textFile at :21 scala> p.partitions.size res33: Int = 729 Mi aspettavo di stampare 8 e vedo 729 compiti nell’interfaccia utente di Spark MODIFICARE: Dopo aver chiamato la repartition() come suggerito da @ zero323 scala> p1 = p.repartition(8) scala> p1.partitions.size res60: Int = 8 […]
Il codice seguente leggerà da hbase, quindi convertiremo in struttura json e convertiremo in schemaRDD, ma il problema è che sto using List per memorizzare la stringa json e poi passare a javaRDD, per i dati di circa 100 GB il master sarà caricato con dati in memoria. Qual è il modo giusto per caricare […]
Sto eseguendo Spark-1.4.0 pre-costruito per Hadoop-2.4 (in modalità locale) per calcolare la sum dei quadrati di un DoubleRDD. Il mio codice Scala sembra sc.parallelize(Array(2., 3.)).fold(0.0)((p, v) => p+v*v) E ha dato un risultato sorprendente 97.0 . Questo è abbastanza controintuitivo rispetto alla versione di fold di Scala Array(2., 3.).fold(0.0)((p, v) => p+v*v) che dà la […]
Ho un RDD come questo: 1 2 3 4 5 6 7 8 9 È una matrice. Ora voglio trasporre il RDD in questo modo: 1 4 7 2 5 8 3 6 9 Come posso fare questo?
Ho, credo, un caso d’uso relativamente comune per lo streaming di scintille: Ho un stream di oggetti che vorrei filtrare in base ad alcuni dati di riferimento Inizialmente, ho pensato che sarebbe stata una cosa molto semplice ottenere usando una variabile di trasmissione : public void startSparkEngine { Broadcast refdataBroadcast = sparkContext.broadcast(getRefData()); final JavaDStream filteredStream […]
Cercando di leggere un file che si trova in S3 usando spark-shell: scala> val myRdd = sc.textFile(“s3n://myBucket/myFile1.log”) lyrics: org.apache.spark.rdd.RDD[String] = s3n://myBucket/myFile1.log MappedRDD[55] at textFile at :12 scala> myRdd.count java.io.IOException: No FileSystem for scheme: s3n at org.apache.hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:2607) at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2614) at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:91) … etc … IOException: No FileSystem per schema: errore s3n si è verificato con: Spark […]
Dall’interfaccia utente di Spark. Cosa significa saltare?
Quando un set di dati distribuito resiliente (RDD) viene creato da un file di testo o da una raccolta (o da un altro RDD), è necessario chiamare esplicitamente “cache” o “persist” per memorizzare i dati RDD nella memoria? O i dati RDD sono memorizzati in modo distribuito nella memoria per impostazione predefinita? val textFile = […]