云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

华为云_注册公司域名_免费领

小七 141 0

Pearson将ApacheSpark流媒体用于下一代自适应学习平台

这是Pearson的朋友们的一篇客座博客文章,概述了他们的apachespark用例。皮尔逊简介皮尔逊是一家总部设在伦敦的英国跨国出版和教育公司。它是世界上最大的教育公司和最大的图书出版商。最近,培生宣布了一个新的组织结构,以加速其向数字学习、教育服务和新兴市场的进军。我是培生高等教育集团的一员,该集团向高等教育的师生提供教科书和数字技术。培生的高等教育品牌包括eCollege、Mastering/MyLabs和金融时报出版社。我们想做什么我们正在构建下一代自适应学习平台,提供沉浸式学习体验,为当今学生的阅读、思考和学习方式设计。该学习平台是一个可扩展、可靠、基于云的平台,为下一代高等教育产品提供动力。通过一个通用的数据平台,我们可以跨产品和机构边界分析学生的表现,并向学习者和机构提供我们以前无法提供的有效性见解。该平台将帮助培生更快地开发新产品,提供世界上最丰富的教育内容,同时为教育提供最先进的数据、分析、自适应和个性化功能。为什么选择Apache Spark和Spark流媒体现在,为了深入了解数以百万计的学习者,我们需要一种大数据方法,我们发现,在学习者分析领域,开创性的行业领先创新存在着巨大的机会。我们有各种各样的使用案例,从近实时服务、构建学习者图表、开发用于执行自适应学习和推荐的通用学习者模型,以及基于搜索的不同分析等。我们发现Apache Spark是一款能够将所有这些功能集成到一个平台上的产品。Spark支持批量和实时数据处理模式,以及图形分析和机器学习库。皮尔逊近实时体系结构是使用Spark流设计的。Spark MLLib将有助于Pearson机器学习用例,Spark图库将有助于在单个公共平台上构建学习者图。拥有通用的api和数据处理语义,Spark将帮助Pearson在单个平台上构建自己的技能和能力,而不是学习和管理各种不同的工具。有一个单一的平台和通用的API范式是我们将实时堆栈从早期使用apachestorm设计的解决方案转移到Spark流的关键原因之一。我们做了什么Pearson的流处理架构是使用ApacheKafka和Spark Streaming构建的。ApacheKafka是一个分布式消息传递基础设施,在Pearson的实现中,所有学生的活动和上下文数据都来自不同的学习应用程序。Spark Streaming以近乎实时的方式从Kafka收集这些数据,并进行必要的转换和聚合,以构建通用的学习者数据模型,并将数据保存在NoSQL store中(目前我们使用的是Cassandra)。对于与搜索相关的用例,Spark Streaming使用来自Kafka的消息并将其索引到apacheblur中,apacheblur是HDFS之上的一个分布式搜索引擎。对于这两个用例,我们需要一个可靠的、容错的Kafka消费者,它可以在没有任何数据丢失的情况下使用来自Kafka主题的消息。下图显示了此数据管道中不同组件的高级概述。下一个图强调了Spark流应用程序的功能。将来自不同学习应用的所有学生/教师活动和领域事件结合在一起,不断更新每个学生的学习模型。在实时流应用案例中,Kafka正在成为分布式消息传递系统最常用的平台,这促使Spark streaming等各种流媒体层都有一个内置的Kafka消费者,这样流媒体层就可以无缝地适应这种架构。当我们开始研究Spark Streaming和Kafka时,我们希望获得比内置的高级Kafka接收器更好的性能和更强的保证。因此,我们选择编写我们的定制卡夫卡接收器。这个定制的用于Spark流媒体的Kafka消费者使用低级别的Kafka消费者API,是Spark可用的最健壮、性能最高的Kafka消费者。这个消费者处理Kafka节点故障、leader变更、管理ZK中提交的偏移量,并且可以具有可调的数据速率吞吐量。它还解决了接收器故障时的数据丢失情况。Pearson在Amazon云上运行Spark Streaming和YARN managed cluster。使用Spark Streaming构建通用学习者数据模型架构将于2014年底投入生产。基于搜索的解决方案将于2015年第一季度投入生产。其他解决方案如Learner Graph或advanced Machine Learning solution将于2015年开发。要了解更多信息:更多信息,请参考我最近在Lucene/SolrRevolution会议上的演讲(幻灯片)。免费试用Databricks。今天就开始吧