如何通过MaxCompute Java SDK设置SQL的Flag?
当您使用DataWorks控制台或MaxCompute客户端(odpscmd)提交SQL时,通常需要设置SQL的Flag。例如,如果您需要使用MaxCompute 2.0数据类型,可以通过Session级别方式开启,在涉及2.0新数据类型的SQL前增加Set Flag语句set odps.sql.type.system.odps2=true;。
使用Java SDK提交SQL时,不能简单地把Set Flag语句直接增加到SQL中,设置Flag的正确方式如下。
--构造SQLTask对象。SQLTask task = new SQLTask();task.setName("foobar");task.setQuery("select ...");--设置Flag。Map settings = new HashMap<>();settings.put("odps.sql.type.system.odps2", "true");...--设置其它Flags。task.setProperty("settings", new JSONObject(settings).toString()); --这里是关键:将Flags对应的JSON String设置到settings中。--执行。Instance instance = odps.instances().create(task);
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
MaxCompute(原ODPS)是一项面向分析的大数据计算服务,它以Serverless架构提供快速、全托管的在线数据仓库服务,消除传统数据平台在资源扩展性和弹性方面的限制,最小化用户运维投入,使您经济并高效的分析处理海量数据。