先行一步
VMware 提供培训和认证,助您快速前进。
了解更多今天,我们很高兴地宣布 Spring XD 1.2 和 Spring XD 1.1.3 的正式发布 (GA),以及 Flo for Spring XD Beta 的发布。
1.2 版本包含了广泛的新功能和改进。这次发布历程充满挑战,主要是由于 Spring XD 在许多不同群体中的受欢迎程度,每个群体都有其各自的请求优先级。然而,Spring XD 团队迎接了挑战,回顾并审视为履行简化大数据复杂性的承诺所付出的创新努力是令人欣慰的。
以下是我们过去 3 个月工作的总结,以及为社区和客户创造的价值。
##Flo for Spring XD 和 UI 改进
Flo for Spring XD 是一个基于 Spring XD 运行时之上的 HTML5 canvas 应用程序,提供了一个图形界面用于创建、管理和监控流数据管道。这里有一个简短的截屏视频,向您展示如何构建一个高级流定义。
您可以查阅文档,获取更多信息和 Flo 实际操作的截屏视频链接。
XD 管理界面还包含一个新的分析部分,您可以在其中轻松查看仪表、计数器、字段值计数器和聚合计数器。
##性能改进
为了应对不断增长的高吞吐量和低延迟物联网 (IoT) 需求,我们在底层消息总线实现中进行了多项性能优化,以利用 Kafka 作为传输方式在 Spring XD 容器之间实现每秒传输数百万条消息。通过这些优化,我们现在的性能与 Kafka 自身的测试工具相当。然而,我们使用的是功能更丰富的 Spring Integration Kafka 客户端,而不是 Kafka 的高级消费者库。
对于有兴趣重现这些数字的任何人,请参考 XD 基准测试博客,其中详细描述了执行的测试和使用的基础设施。
##Apache Ambari 和 Pivotal HD
为了帮助自动化在 Apache HadoopⓇ 集群上部署 Spring XD,我们添加了一个 适用于 Spring XD 的 Apache AmbariⓇ 插件。该插件支持 Pivotal HD 3.0 和 Hortonworks HDP 2.2 版本。我们还在 Spring XD 中添加了对 Pivotal HD 3.0 的支持,使支持的 Hadoop 版本总数达到五个。
##新的 Source、Processor、Sink 和批处理作业
Spring XD 最大的价值主张之一是其完整的开箱即用的数据连接适配器集,可用于创建实时和基于批处理的数据管道,对于常见用例,这几乎不需要或完全不需要用户代码。在社区贡献者的帮助下,我们现在有了 MongoDB、VideCap 和 FTP 作为 source 模块,一个 XSLT-transformer processor,以及 FTP sink 模块。XD 团队还开发了一个 Cassandra sink 和一个 language-detection processor。
鉴于其在Pivotal 大数据产品组合中的重要作用,我们还通过 gpfdist sink 添加了与 Pivotal Greenplum Database 和 Pivotal HAWQ 的原生集成,用于实时流式传输,并支持基于 gpload 的批处理作业。
为了增强我们的开发者生产力主题以及 Spring XD 在生产环境中用于高吞吐量数据摄取用例的应用,我们很高兴表彰 Simon Tao 和 Yu Cao(EMC² CTO 办公室与中国实验室),他们自 2014 年以来一直在生产环境中运行 Spring XD 数据管道,并贡献了 VideCap source 模块。他们的用例和实现细节(用他们自己的话来说)如下。
“视频监控行业对从大量非结构化视频流中提取洞察有着巨大需求。在数据科学家进行分析之前,首先需要摄取视频监控数据。为了应对这一挑战,我们使用 Spring XD 构建了一个高度可扩展和可扩展的视频数据摄取平台。该平台已准备好将各种视频源摄取到集中的大数据湖中。鉴于 Spring XD 的开箱即用功能,该平台旨在提供丰富的视频内容处理能力,例如视频转码和目标检测等。
该平台还支持各种类型的视频源——数据处理器和数据导出目的地(例如 HDFS、Gemfire XD 和 Spark)——这些都作为自定义模块构建在 Spring XD 中,并且高度可重用和可组合。借助声明式 DSL,视频摄取流将由定义为模块的有向无环图的视频摄取管道处理。该管道设计用于部署在集群环境中,上游模块通过消息总线有效地将数据传输到下游模块。Spring-XD 分布式运行时允许管道中的每个模块拥有多个实例,这些实例在不同的节点上并行运行。通过水平扩展,我们的系统能够支持具有高视频数据量和复杂数据处理工作负载的大规模视频监控部署。”
##自定义模块注册中心和 HA 支持
虽然我们可以灵活配置共享网络位置以实现自定义模块的分布式可用性(通过:xd.customModule.home),但我们也认识到在故障场景下保持模块注册中心弹性的重要性——因此,我们拥有一个由 HDFS 支持的模块注册中心。为生产部署设置此功能可提供自定义模块位的持续可用性以及根据业务需求进行选择的灵活性。
##Pivotal Cloud Foundry 集成
为了进一步推动 Pivotal Cloud Foundry 集成工作,我们对 Spring XD 运行时进行了几项基础级别的修改,以便能够在 Lattice 和 Diego 中将 Spring XD 模块作为云原生应用运行。我们有积极的路线图计划,将在 Diego 上正式推出 Spring XD。在研究 Diego 的 Receptor API(用 Go! 编写)时,我们创建了一个 Java Receptor API,目前已提议给 Cloud Foundry 进行孵化。
##下一步
我们即将迎来一些非常有趣的发展。也许最重要的一点是,我们将启动专注于消息驱动和面向批处理的“数据微服务”的新项目。这些项目将分别直接构建在 Spring Boot、Spring Integration 和 Spring Batch 之上。我们的主要目标是为创建云原生、以数据为中心的微服务应用程序提供最简单的开发者体验。反过来,Spring XD 2.0 将被重构为位于这些项目之上的一层,以支持将这些数据微服务组合成流和作业,以及它目前提供的所有“即服务”方面,但将重点关注部署到 Cloud Foundry 和 Lattice。我们很快会发布更多关于这些新项目的信息,敬请关注!
反馈非常重要,如有问题和意见,请通过以下方式联系我们:
spring-xd
标签编者注:©2015 Pivotal Software, Inc. 保留所有权利。Pivotal、Pivotal HD、Pivotal Greenplum Database、Pivotal Gemfire 和 Pivotal Cloud Foundry 是 Pivotal Software, Inc. 在美国和/或其他国家的商标和/或注册商标。Apache、Apache Hadoop、Hadoop 和 Apache Ambari 是 Apache Software Foundation 在美国和/或其他国家的注册商标或商标。