Articles of apache spark

Schema di partizionamento predefinito in Spark

Quando eseguo il comando seguente: 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 Dice che ci sono 10 partizioni e il partizionamento è fatto usando HashPartitioner . Ma quando eseguo […]

Come modificare i tipi di colonna in DataFrame di Spark SQL?

Supponiamo che io stia facendo qualcosa del tipo: val df = sqlContext.load(“com.databricks.spark.csv”, Map(“path” -> “cars.csv”, “header” -> “true”)) df.printSchema() root |– year: string (nullable = true) |– make: string (nullable = true) |– model: string (nullable = true) |– comment: string (nullable = true) |– blank: string (nullable = true) df.show() year make model comment […]

In Apache Spark 2.0.0, è ansible recuperare una query da un database esterno (piuttosto che afferrare l’intera tabella)?

Utilizzando pyspark: from pyspark.sql import SparkSession spark = SparkSession\ .builder\ .appName(“spark play”)\ .getOrCreate() df = spark.read\ .format(“jdbc”)\ .option(“url”, “jdbc:mysql://localhost:port”)\ .option(“dbtable”, “schema.tablename”)\ .option(“user”, “username”)\ .option(“password”, “password”)\ .load() Piuttosto che recuperare “schema.tablename”, preferirei prendere il set di risultati di una query.

Come gestire le caratteristiche categoriali con spark-ml?

Come gestisco i dati categoriali con spark-ml e non spark-mllib ? RandomForestClassifier pensato che la documentazione non sia molto chiara, sembra che i classificatori, ad esempio RandomForestClassifier , LogisticRegression , abbiano un argomento featuresCol , che specifica il nome della colonna di feature in DataFrame e un argomento labelCol , che specifica il nome della […]

Come evitare le colonne duplicate dopo l’adesione?

Ho due dataframe con le seguenti colonne: df1.columns // Array(ts, id, X1, X2) e df2.columns // Array(ts, id, Y1, Y2) Dopo che lo faccio val df_combined = df1.join(df2, Seq(ts,id)) Finisco con le seguenti colonne: Array(ts, id, X1, X2, ts, id, Y1, Y2) . Potrei aspettarmi che le colonne comuni vengano eliminate. C’è qualcosa di aggiuntivo […]

Che cosa significa “Stage Skipped” significa nell’interfaccia utente web di Apache Spark?

Dall’interfaccia utente di Spark. Cosa significa saltare?

Come definire lo schema per il tipo personalizzato in Spark SQL?

Il seguente codice di esempio tenta di inserire alcuni oggetti del caso in un dataframe. Il codice include la definizione di una gerarchia di oggetti caso e una class case utilizzando questa caratteristica: import org.apache.spark.{SparkContext, SparkConf} import org.apache.spark.sql.SQLContext sealed trait Some case object AType extends Some case object BType extends Some case class Data( name […]

Chiavi primarie con Apache Spark

Sto avendo una connessione JDBC con Apache Spark e PostgreSQL e voglio inserire alcuni dati nel mio database. Quando uso la modalità append ho bisogno di specificare id per ogni DataFrame.Row . C’è un modo per Spark di creare chiavi primarie?

Elaborazione di file multipli come RDD indipendenti in parallelo

Ho uno scenario in cui un certo numero di operazioni incluso un gruppo deve essere applicato su un numero di file piccoli (~ 300 MB ciascuno). L’operazione sembra così .. df.groupBy(….).agg(….) Ora per elaborarlo su più file, posso usare un carattere jolly “/**/*.csv”, tuttavia, che crea un singolo RDD e lo suddivide in per le […]

Spark – repartition () vs coalesce ()

Secondo Learning Spark Tieni presente che la ripartizione dei dati è un’operazione abbastanza costosa. Spark ha anche una versione ottimizzata di ripartizione () chiamata coalesce () che consente di evitare lo spostamento di dati, ma solo se si sta riducendo il numero di partizioni RDD. Una differenza che ottengo è che con la ripartizione () […]