2014-09-10 5 views
1

Lorsque j'utilise Shark/Spark SQL pour traiter des mégadonnées, Spark alerte Out Of Memory. Il n'y a pas d'utilisation de tunneling GC. Je suppose que les données brutes sont trop grandes pour être traitées.Comment estimer la mémoire nécessaire pour Shark/Spark SQL?

Ma question est comment je peux estimer la mémoire à allouer pour Spark, ou quand donné une mémoire spécifique à Spark, le maximum de données Spark peut traiter?

Répondre

0
  1. Quelle est la taille de vos données?
  2. Quel mode utilisez-vous pour votre SQL requin/spark? Standalone, fil, mesos? Essayez d'utiliser le mode autonome pour tester en premier.
  3. Quel est le réglage de l'environnement de votre machine? VM? CPU? Mémoire?
  4. Si vous souhaitez définir la mémoire, vous pouvez essayer dans votre code scala comme ci-dessous,

    val conf = new SparkConf() 
        .setMaster("local") 
        .setAppName("Wordcount") 
        .set("spark.executor.memory", "4g") 
    val sc = new SparkContext(conf) 
    

Vous pouvez visiter pour plus d'informations d'accord. http://spark.apache.org/docs/latest/tuning.html#data-serialization Et étincelle de configuration pour référence. http://spark.apache.org/docs/latest/configuration.html

+0

C'est une vieille question, maintenant je l'ai résolu. La raison en est que j'ai oublié de mettre la parlliziation – tonyking

Questions connexes