Articles of rdd

Stackoverflow devido à longa linhagem RDD

Eu tenho milhares de pequenos arquivos no HDFS. Precisa processar um subconjunto de arquivos um pouco menor (que é novamente em milhares), fileList contém uma lista de caminhos de arquivos que precisam ser processados. // fileList == list of filepaths in HDFS var masterRDD: org.apache.spark.rdd.RDD[(String, String)] = sparkContext.emptyRDD for (i line.startsWith(“#####”)).map(line => (filePath, line)) masterRDD […]

Spark ler arquivo do S3 usando sc.textFile (“s3n: //…)

Tentando ler um arquivo localizado no S3 usando o shell de ignição: 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 … A IOException: No FileSystem para esquema: erro s3n ocorreu com: Spark 1.31 […]

Apache Spark: map vs mapPartitions?

Qual é a diferença entre o map um RDD e o método mapPartitions ? E o flatMap se comporta como map ou como mapPartitions ? Obrigado. (editar) ou seja, qual é a diferença (seja semanticamente ou em termos de execução) entre def map[A, B](rdd: RDD[A], fn: (A => B)) (implicit a: Manifest[A], b: Manifest[B]): RDD[B] […]

Esquema de Particionamento Padrão no Spark

Quando executo o comando abaixo: scala> val rdd = sc.parallelize(List((1,2),(3,4),(3,6)),4).partitionBy(new HashPartitioner(10)).persist() rdd: org.apache.spark.rdd.RDD[(Int, Int)] = ShuffledRDD[10] at partitionBy at :22 scala> rdd.partitions.size res9: Int = 10 scala> rdd.partitioner.isDefined res10: Boolean = true scala> rdd.partitioner.get res11: org.apache.spark.Partitioner = org.apache.spark.HashPartitioner@a Ele diz que existem 10 partições e o particionamento é feito usando o HashPartitioner . Mas quando […]

O que significa “Stage Skipped” na interface da Web do Apache Spark?

Da minha interface do usuário do Spark. O que significa por ignorado?

Spark – repartition () vs coalesce ()

De acordo com o Learning Spark Tenha em mente que reparticionar seus dados é uma operação bastante cara. O Spark também tem uma versão otimizada de repartition () chamada coalesce () que permite evitar a movimentação de dados, mas somente se você estiver diminuindo o número de partições RDD. Uma diferença que eu vejo é […]

(Por que) precisamos chamar o cache ou persistir em um RDD

Quando um dataset distribuído resiliente (RDD) é criado a partir de um arquivo de texto ou coleção (ou de outro RDD), precisamos chamar “cache” ou “persistir” explicitamente para armazenar os dados RDD na memory? Ou os dados RDD são armazenados de maneira distribuída na memory por padrão? val textFile = sc.textFile(“/user/emp.txt”) De acordo com o […]

Igualdade de class de caso no Apache Spark

Por que a correspondência de padrões no Spark não funciona da mesma maneira que no Scala? Veja o exemplo abaixo … A function f() tenta combinar com o padrão na class, o que funciona no Scala REPL, mas falha no Spark e resulta em todos os “???”. f2() é uma solução alternativa que obtém o […]

Diferença entre o DataFrame (no Spark 2.0, ou seja, DataSet ) e o RDD no Spark

Eu só estou querendo saber qual é a diferença entre um RDD e DataFrame (Spark 2.0.0 DataFrame é um mero tipo alias para Dataset[Row] ) no Apache Spark? Você pode converter um para o outro?

Como converter object rdd para dataframe em faísca

Como posso converter um RDD ( org.apache.spark.rdd.RDD[org.apache.spark.sql.Row] ) em um Dataframe org.apache.spark.sql.DataFrame . Eu converti um dataframe para o rdd usando .rdd . Depois de processá-lo, eu o quero de volta no dataframe. Como posso fazer isso ?