我正在使用带火花解释器的齐柏林飞艇从MongoDB中查询数据,例如在MongoDB中使用6 Gb数据库:
import com.mongodb.spark.MongoSpark
import com.mongodb.spark.config.{ReadConfig, WriteConfig}
import com.mongodb.spark.sql._
import org.apache.spark.sql.functions._
import org.bson.Document
val readConfig = ReadConfig(Map("uri" -> "mongodb://127.0.0.1:27017/",
"database" -> "test","collection" -> "Collection_From1_to_9"))
val zipDf = spark.sparkSession.read.mongo(readConfig).toDF()
val df=zipDf.select(zipDf("_id"),zipDf("data"),zipDf("date"),zipDf("userprofile"),zipDf("criticity"),zipDf("service"),zipDf("indication"),zipDf("conclusion.rulename").getItem(0).as("rule"),zipDf("nd"),zipDf("duration"),zipDf("scenario"))
val df_rule=df.groupBy("rule").count()
需要10多分钟。如何加快齐柏林飞艇的速度,我使用的是centos7 48GB Ram 12 CPU。
任何帮助,请