我读过很多关于通过设置 yarn.scheduler.maximum-allocation-mb
,当前运行时已将其设置为2gb select count(*) from <table>
我想这算不了什么。但这是什么 Required AM memory (471859200+47185920 MB)
应该是什么意思?另一个问题是关于 (1024+2048)
或者类似的。我在一台机器上进行设置,即我的桌面有4 gb ram和2个内核。作为配置单元执行引擎运行spark的规格是否很低?目前我正在运行这个作业从java和我的设置是
Connection connect = DriverManager.getConnection("jdbc:hive2://saurab:10000/default", "hiveuser", "hivepassword");
Statement state = connect.createStatement();
state.execute("SET hive.execution.engine=spark");
state.execute("SET spark.executor.memory=1g");
state.execute("SET spark.yarn.executor.memoryOverhead=512m");
``` `yarn-site.xml` ```
<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>3g</value>
</property>
和一个简单的查询
String query = "select count(*) from sales_txt";
ResultSet res = state.executeQuery(query);
if (res.next()) {
System.out.println(res.getString());
}
还有那两个记忆号码(a+b)是什么?
1条答案
按热度按时间bvjveswy1#
am代表在Yarn上运行Spark的应用程序主机。很好的解释:https://jaceklaskowski.gitbooks.io/mastering-apache-spark/yarn/spark-yarn-applicationmaster.html
现在还不清楚为什么你需要在你的单机上运行Yarn来测试这一点。您可以在独立模式下运行它,以消除Yarn开销,并测试spark应用程序代码。https://spark.apache.org/docs/latest/
这个
spark.*.memory
以及spark.yarn.executor.memoryOverhead
需要在部署spark应用程序时设置。它们不能在这些语句中设置。