设为首页 收藏本站
查看: 976|回复: 0

[经验分享] Apache Storm 1.1.0 发布概览

[复制链接]

尚未签到

发表于 2017-12-23 23:54:27 | 显示全部楼层 |阅读模式
写在前面的话
  本人长期关注数据挖掘与机器学习相关前沿研究。欢迎和我交流。
  我自己测试了一下这个版本,总的来说更加稳定,新增的特性并没有一一测试,仅凭kafk-client来说,是达到了生产环境的使用。
  使用阿里云服务器的话,使用清华的节点下载是巨快的。(http://mirrors.tuna.tsinghua.edu.cn/apache/storm/apache-storm-1.1.0/apache-storm-1.1.0.tar.gz)
Storm 1.1.0 发布
  Apache Storm社区很激动地宣布Storm1.1.0已经发布,已经可从下载页面 获得。
  此版本代表了Apache Storm发展的一个重大里程碑,并包含大量新功能,可用性和性能改进,其中一些在下面介绍。
Streaming SQL
  Storm 1.1.0支持由Apache Calcite驱动支持的原生Streaming SQL,允许用户通过运行SQL查询流数据或更新外部系统和数据存储(如Apache Hive)。要部署基于SQL的拓扑,用户可以在文本文件中定义SQL查询,并使用storm sql命令将生成的拓扑提交给Storm集群。Storm将SQL编译成Trident拓扑并在集群上运行。
  Storm的SQL支持包括以下功能:

  • 外部数据源的输入/输出,包括Apache Kafka,HDFS,MongoDB和Redis
  • 元组过滤
  • 映射
  • 生成组件的用户自定义平行度
  • 用户定义函数(UDF)
  • CSV,TSV和Avro输入/输出格式
  • 通过ISQLTridentDataSource接口扩展其他数据源
  有关Storm SQL支持(包括示例)的更多信息,请参阅以下资源:

  • Storm SQL 概述
  • Storm SQL 样例
  • Storm SQL 参考
Apache Kafka集成改进
  除了基于Kafka简单消费者的Kafka 0.8 / 0.9 版本的传统支持外,Storm还支持包括基于新的Kafka消费者API对Kafka 0.10及更高版本。Storm与Kafka 0.10及更高版本的集成是高度灵活和可扩展的,其中的一些功能包括:

  • 增强配置API
  • 细粒度偏移量控制(启动时和失败后)
  • 消费者组支持
  • 可插拔记录翻译器
  • 通配符主题
  • 多流支持
  • 手动分区控制
  • Kafka安全支持
  有关Storm的Kafka集成的更多信息,请参阅以下文档:

  • Kafka 集成 (0.10 and later)
  • Kafka 集成 (0.8 / 0.9)
支持PMML (Predictive Model Markup Language,预测模型标记语言)
  为了更好地支持机器学习用例,Storm现在通过一般的PMML Bolt支持在拓扑中执行PMML模型。PMMLPredictorBolt允许用户指定一个模型,原始输入以及生成的流和输出字段。在运行时,Bolt将处理输入的原始数据,使用给定的输入执行模型,并输出具有预测字段和输出字段的分数的元组。有关Storm的PMML支持的更多信息,请参见这里 。
Druid 集成
  Druid 是一个可扩展的,高性能的,面向列的分布式数据存储,适用于实时分析用例。 Storm 1.1.0引入了一个Storm Bolt和Trident状态实现,用于将数据流传输到Druid数据存储中。Storm's Druid集成的文档可以在这里 找到。
OpenTSDB 集成
  OpenTSDB 是基于Apache HBase的高度可扩展的时间序列数据库。 Storm 1.1.0添加了一个Storm Bolt和Trident状态实现,用于将数据写入OpenTSDB。 Storm的OpenTSDB集成为用户提供了一个简单的接口(ITupleOpenTsdbDatapointMapper)来执行转换,使用户能够对Storm元组如何映射到OpenTSDB数据结构进行细微的控制。可以在这里 找到关于Storm的OpenTSDB集成的信息。
支持AWS Kinesis
  对于希望与亚马逊Kinesis服务集成的用户,Storm 1.1.0现在包括一个用于消费来自Kinesis的消息流的 Spout。像Storm的大部分外部系统集成组件一样,Kinesis Spout提供了一个简单的接口(RecordToTupleMapper),用于控制Kinesis消息如何转换为Storm元组。 Kinesis spout提供了一个额外的接口(FailedMessageRetryHandler),允许用户自定义Spout的故障处理逻辑。这里 可以找到Kinesis Spout的文档。
支持HDFS
  Storm的HDFS集成现在包括一个从HDFS文件系统连续流式传输数据的 Spout。Storm的HDFS端口监视新文件的可配置目录,并将数据反馈至拓扑。当spout完成处理文件时,它将被移动到已配置的归档目录。如果文件已损坏或以其他方式不可处理,相应的文件将被移动到特定目录。通过一个确保每个文件由单个 Spout实例“owned”的锁定机制可以实现 Spout的并行性。 HDFS端口支持连接到使用Kerberos身份验证保护的HDFS实例。有关使用HDFS Spout的更多信息,请参阅Storm HDFS文档 。
Flux改进
  Flux是一个框架和一组实用程序,允许用户声明性地定义Storm拓扑,并避免在拓扑组件中硬编码配置值。 Storm 1.1.0引入了对Flux框架的以下增强功能:

  • Storm UI中的Flux拓扑可视化
  • 支持状态Bolt和窗口
  • 支持命名流
  • 支持引用的列表
  有关Flux的更多信息,请参见Flux文档。
拓扑部署增强功能
  在以前的Storm版本中,通常必须将所有拓扑依赖关系包含在shaded的“uber jar”中,或者通过使其在Storm的类路径上可用。在Storm 1.1.0中,storm jar命令现在包括在拓扑提交期间上传附加依赖项的选项。 --jars命令行选项允许用户指定要上传的本地jar文件。或者,storm jar命令提供了--artifacts选项,用于通过它们的Maven坐标来指定附加的jar文件依赖关系。最后,对于Maven Central之外的Maven工件,-artifactRepository选项允许用户指定附加的存储库以进行依赖性解析。有关storm jar命令的可用选项的更多信息,请参见运行 storm help jar命令。
RAS (资源意识调度, Resource Aware Scheduler)改进
  在Storm 1.0中引入的资源感知调度程序添加了一个考虑了集群中可用的内存(堆和堆)和CPU资源的调度程序实现。在风暴1.1.0中,RAS算法进行了大修,大大提高了集群资源利用率,并将机架知名度引入了调度策略。有关RAS新功能的更多信息,请参见RAS文档 和引入新的机架感知算法的JIRA故障单。
二进制分配的重要变化
  为了最小化二进制分发的文件大小,不再包含外部组件(即“连接器”)二进制文件和已编译的示例。示例仅包含在源代码中,但可以使用Maven mvn install命令轻松编译。
外部组件移动到Maven Central
  大多数外部组件现在仅在Maven Central中托管。外部组件目录将包含README.md文件,但不包含jar文件。我们鼓励用户利用Maven风格依赖解析(Maven,Gradle等)构建系统来构建拓扑jar,并避免手动构建拓扑。这些组件的Maven 路径如下:

  Group>  对于无法使用Maven进行构建的用户,可以从Maven Central下载以下URL模式的外部组件jar文件:
  http://repo1.maven.org/maven2/org/apache/storm/${artifactID}/${version}/${artifactId}-${version}.jar
  例如,要下载storm-kafka-client jar文件,URL将是:
  http://repo1.maven.org/maven2/org/apache/storm/storm-kafka-client/1.1.0/storm-kafka-client-1.1.0.jar
原文地址
  http://storm.apache.org/2017/03/29/storm110-released.html

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-427373-1-1.html 上篇帖子: org.apache.maven.archiver.MavenArchiver.getManifest错误 下篇帖子: Apache服务器出现Forbidden 403错误提示的解决方法总结
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表