网站大量收购独家精品文档,联系QQ:2885784924

ApacheFlinkTableAPI和SQL发展现状概述.PDF

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ApacheFlinkTableAPI和SQL发展现状概述.PDF

Apache Flink:Table API和SQL发展现状概述 Spark大数据博客 - Apache Flink:Table API和SQL发展现状概述 Flink Table API Apache Flink对SQL的支持可以追溯到一年前发布的0.9.0-milestone1版本。此版本通过引入Table API来 提供类似于SQL查询的功能,此功能可以操作分布式的数据集,并且可以自由地和Flink其他API进 行组合。Tables在发布之初就支持静态的以及流式数据(也就是提供了DataSet和DataStream相关 APIs)。我们可以将DataSet或DataStream转成Table;同时也可以将Table转换成DataSet或DataSt ream,正如下面的例子所展示的: /** * User: 过往记忆 * Date: 2016年6月16日 * Time: 下午23:16 * bolg: * 本文地址:/archives/1691 * 过往记忆博客,专注于hadoop、hive、spark、shark、flume的技术博客,大量的干货 * 过往记忆博客微信公共帐号:iteblog_hadoop */ val execEnv = ExecutionEnvironment.getExecutionEnvironment val tableEnv = TableEnvironment.getTableEnvironment(execEnv) // obtain a DataSet from somewhere val tempData: DataSet[(String, Long, Double)] = // convert the DataSet to a Table val tempTable: Table = tempData.toTable(tableEnv, location, time, tempF) // compute your result val avgTempCTable: Table = tempTable .where(location.like(room%)) .select( (time / (3600 * 24)) as day, Location as room, ((tempF - 32) * 0.556) as tempC ) .groupBy(day, room) .select(day, room, tempC.avg as avgTempC) // convert result Table back into a DataSet and print it avgTempCTable.toDataSet[Row].print() 1 / 4 Apache Flink:Table API和SQL发展现状概述 Spark大数据博客 - 上面的例子是通过Scala语言展示的,不过我们也可以在Java中使用Table API。 本文由 过往记忆 大数据技术博客( )编写整理,转载必须注明出处。欢迎 关注微信公共帐号:iteblog_hadoop了解必威体育精装版的大数据资讯。 为什么需要引入SQL 大家可以看出,虽然Table API提供了类似于SQL的功能来操作分布式的数据,但是其有以下几点问题: 1、Table API不能独立使用。Table API必须包含在DataSet或DataStream的程序中。 2、对于批处理表(batch Tables)的查询并不支持外连接(outer joins)、排序以及其他很多在SQL查询中经常会使用到的标量函数(scalar functions); 3、在流数据表(streaming tables)上的查询只支持fiter、union以及projections操作,并不支持aggregations或者joins操作。 4、Table查询语句的翻译(应该是翻译成逻辑计划)并没用使用到查询优化技术,只有在物理 计划的时候会有相应的优化,因为物理优化会应用到所有的DataSet程序。

您可能关注的文档

文档评论(0)

tangtianxu1 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档