相关疑难解决方法(0)

什么是蟒蛇中的Truthy和Falsy?它与真与假有什么不同?

我刚刚才知道有TruthyFalsy在Python这是与正常不同的价值观TrueFalse

是否有人可以深入解释什么truthyfalsy值?

我应该在哪里使用它们?

truthyTrue值以及falsyFalse值之间有什么区别?

python

92
推荐指数
4
解决办法
3万
查看次数

一个应用程序可以有多少个SparkSession?

我发现当Spark运行时,表的大小(通过Joins)增长,火花执行器最终会耗尽内存并导致整个系统崩溃.即使我尝试将临时结果写入Hive表(在HDFS上),系统仍然没有释放大量内存,并且我的整个系统在大约130个连接后崩溃.

但是,通过实验,我意识到如果我将问题分解成更小的部分,将临时结果写入hive表,并停止/启动Spark会话(和spark上下文),则系统的资源被释放.我能够使用这种方法加入超过1,000列.

但是我找不到任何文档来理解这是否被认为是一种好的做法(我知道你不应该同时获得多个会话).大多数系统在开始时获取会话并在最后关闭它.我也可以将应用程序分解为较小的应用程序,并使用像Oozie这样的驱动程序在Yarn上安排这些较小的应用程序.但是这种方法会在每个阶段启动和停止JVM,这似乎有点重量级.

所以我的问题是:在单个spark应用程序运行期间不断启动/停止spark会话以释放系统资源是不好的做法吗?


但是,您能详细说明单个JVM上单个SparkContext的含义吗?我能够调用sparkSession.sparkContext().stop(),同时也stopSparkSession.然后我创建了一个新的SparkSession并使用了新的sparkContext.没有抛出任何错误.

我也能在JavaSparkPi没有任何问题的情况下使用它.

我已经测试了这个yarn-clientlocal安装了火花.

停止火花环境究竟做了什么,为什么一旦你停止了它就不能创建一个新的?

hadoop-yarn apache-spark apache-spark-sql

5
推荐指数
1
解决办法
4232
查看次数