我正在使用Scala运行Spark作业,但由于工作节点无法执行和执行任务而陷入困境。
目前,我将此提交给Livy,后者将使用以下配置将其提交给我们的Spark集群,该集群具有8个内核和12GB RAM:
data={
'file': bar_jar.format(bucket_name),
'className': 'com.bar.me',
'jars': [
common_jar.format(bucket_name),
],
'args': [
bucket_name,
spark_master,
data_folder
],
'name': 'Foo',
'driverMemory': '2g',
'executorMemory': '9g',
'driverCores': 1,
'executorCores': 1,
'conf': {
'spark.driver.memoryOverhead': '200',
'spark.executor.memoryOverhead': '200',
'spark.submit.deployMode': 'cluster'
}
}
Run Code Online (Sandbox Code Playgroud)
然后,节点日志将被不断填充:
2019-03-29T22:24:32.119+0000: [GC (Allocation Failure) 2019-03-29T22:24:32.119+0000:
[ParNew: 68873K->20K(77440K), 0.0012329 secs] 257311K->188458K(349944K),
0.0012892 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]
Run Code Online (Sandbox Code Playgroud)
我正在使用 Calcite 的 SqlParser,但我遇到了 Postgres 查询的一些问题,即PRIMARY、TIME、 和ZONE没有被正确解析。以下代码是我正在使用的代码:
import org.apache.calcite.sql.parser.SqlParser;
import org.apache.calcite.sql.ddl.SqlCreateTable;
SqlParser.Config sqlParserConfig = SqlParser
.configBuilder()
.setParserFactory(SqlDdlParserImpl.FACTORY)
.build();
String sql = "CREATE TABLE \"elements_elementcomponent\" (\"id\" bigserial NOT NULL, \"created_at\" timestamp with time zone NOT NULL, \"updated_at\" timestamp with time zone NOT NULL, \"version\" double precision NOT NULL, \"git_sha\" varchar(60) NOT NULL, \"element_id\" bigint NULL, \"element_item_id\" bigint NULL, \"element_basket_id\" bigint NULL);";
SqlParser parser = SqlParser.create(sql, sqlParserConfig);
SqlCreateTable stmt = (SqlCreateTable) parser.parseQuery();
Run Code Online (Sandbox Code Playgroud)
使用上述关键字会出现以下错误:
org.apache.calcite.sql.parser.SqlParseException: Encountered "PRIMARY" …Run Code Online (Sandbox Code Playgroud)