我正在使用弹簧控制器.
这是代码.
@RequestParam(value = "status", required = false, defaultValue = StatusEnum.STATUS.toString())
Run Code Online (Sandbox Code Playgroud)
如果我使用enum作为defaultValue我得到注释属性RequestParam.defaultValue的值必须是一个常量表达式.
根据我的理解,它应该接受枚举作为默认值.
请指教.
我使用cloudwatch预定事件在特定时间间隔后触发我的lambda函数.我想使用云形成模板在cloudwatch中添加此规则.我已经浏览了cloudformation模板文档,但我无法找到使用云形成模板配置事件的方法.任何人都可以建议如何使用云形成模板实现它.
我正在使用下面的模板.
{
"AWSTemplateFormatVersion": "2010-09-09",
"Description": "Provision environment specific",
"Resources": {
"lambdaScheduler": {
"Type": "AWS::CloudWatch::Event",
"Properties": {
"detail-type": "Scheduled Event",
"source": "aws.events",
"name": "TEST_EVENT_10_MINS_RULE",
"schedule-expression": "rate(5 minutes)"
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
A client error (ValidationError) occurred when calling the ValidateTemplate operation: Template format error: Unrecognized resource type: AWS::CloudWatch::Event当我使用aws cli验证它时,我收到错误消息.
amazon-web-services aws-cloudformation amazon-cloudwatch aws-lambda amazon-cloudwatchlogs
我正在使用 sqoop 1.4.2 版本。我正在尝试将 sqoop 元存储从默认的 hsqldb 更改为 mysql。
我在 sqoop-site.xml 文件中配置了以下属性。
<property>
<name>sqoop.metastore.client.enable.autoconnect</name>
<value>false</value>
<description>If true, Sqoop will connect to a local metastore
for job management when no other metastore arguments are
provided.
</description>
</property>
<property>
<name>sqoop.metastore.client.autoconnect.url</name>
<value>jdbc:mysql://ip:3206/sqoop?createDatabaseIfNotExist=true</value>
</property>
<property>
<name>sqoop.metastore.client.autoconnect.username</name>
<value>userName</value>
</property>
<property>
<name>sqoop.metastore.client.autoconnect.password</name>
<value>password</value>
</property>
</configuration>
Run Code Online (Sandbox Code Playgroud)
当我尝试使用元连接 url 创建 sqoop 作业时,它无法连接到配置的 mysql 数据库。
sqoop job --create --meta-connect {mysql_jdbc_url} sqoop job defination
Run Code Online (Sandbox Code Playgroud)
它抛出以下异常。
14/06/06 15:04:54 INFO sqoop.Sqoop: Running Sqoop version: 1.4.4.2.0.6.1-101
14/06/06 15:04:55 WARN hsqldb.HsqldbJobStorage: Could not interpret …Run Code Online (Sandbox Code Playgroud) 我在执行oozie sqoop动作时遇到问题.在日志中我可以看到sqoop能够将数据导入临时目录,然后sqoop创建hive脚本来导入数据.
将临时数据导入配置单元时失败.
在日志中我没有任何异常.
下面是我正在使用的sqoop动作.
<workflow-app name="testSqoopLoadWorkflow" xmlns="uri:oozie:workflow:0.4">
<credentials>
<credential name='hive_credentials' type='hcat'>
<property>
<name>hcat.metastore.uri</name>
<value>${HIVE_THRIFT_URL}</value>
</property>
<property>
<name>hcat.metastore.principal</name>
<value>${KERBEROS_PRINCIPAL}</value>
</property>
</credential>
</credentials>
<start to="loadSqoopDataAction"/>
<action name="loadSqoopDataAction" cred="hive_credentials">
<sqoop xmlns="uri:oozie:sqoop-action:0.2">
<job-tracker>${jobTracker}</job-tracker>
<name-node>${nameNode}</name-node>
<job-xml>/tmp/hive-oozie-site.xml</job-xml>
<configuration>
<property>
<name>oozie.hive.defaults</name>
<value>/tmp/hive-oozie-site.xml</value>
</property>
</configuration>
<command>job --meta-connect ${SQOOP_METASTORE_URL} --exec TEST_SQOOP_LOAD_JOB</command>
</sqoop>
<ok to="end"/>
<error to="kill"/>
</action>
Run Code Online (Sandbox Code Playgroud)
下面是我用来导入数据的sqoop作业.
sqoop job --meta-connect ${SQOOP_METASTORE_URL} --create TEST_SQOOP_LOAD_JOB -- import --connect '${JDBC_URL}' --table testTable -m 1 --append --check-column pkId --incremental append --hive-import --hive-table testHiveTable;
Run Code Online (Sandbox Code Playgroud)
在mapred日志中,我得到以下异常.
72285 [main] INFO org.apache.sqoop.hive.HiveImport - Loading uploaded …Run Code Online (Sandbox Code Playgroud) bigdata ×2
hadoop ×2
hive ×2
sqoop ×2
annotations ×1
aws-lambda ×1
enums ×1
oozie ×1
spring-mvc ×1
sqoop2 ×1