Hadoop生态系统中的容器和微服务 玩出哪些新花样?

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介:

最近大多数大数据应用都部署在裸设备上,这意味着Hadoop大多数部署在非虚拟化服务器上。随着容器和微服务对应用开发圈产生影响,这种情况在发生改变。

容器和微服务都把整个应用程序的代码细分成更小粒度的片段。这样不仅简化了开发,而且更容易测试,这也是设计更灵活应用程序部署方案和代码复用的关键。

早期的时候,这种技术就应用于大数据领域,但是现在看起来在数据流处理、微服务这类领域应用也很有前途。欧洲某顶级电子商务公司的一位技术经理认为,微服务方法简化了开发工作,增强了代码复用能力。

Otto GmbH公司是一家多渠道零售商(产品包括高级铸件以及熔铸设备和半成品工业设备),总部位于德国汉堡。Rupert Steffner是该公司商业智能系统首席平台架构师,他说:“使用微服务方法是非常经济的做法。对于有些类型的应用,忽略微服务的方式是不明智的。你会一遍又一遍地开发相同的功能。”

Steffner谈到的这种类型应用是许多人工智能机器人在公司在线零售网站上运行着各种实时分析任务。Otto使用了微服务整合Docker容器和流处理技术来增强这些AI机器人的功能。

容器和微服务
云计算是推动Hadoop、Spark和其它大数据技术走向虚拟化的主要力量。不过仍然有很多基础设施在云之外构建,各公司都在努力用技术缓解这种演变。

Tom Phelan是BluData软件公司联合创始人和首席架构师,该公司设计的平台可以自动配置Hadoop或Spark集群。他说:“Hadoop大多数运行在裸设备上,不过它也可以运行在虚拟机上。例如,Amazon云和Azure云都使用了OpenStack。现在Hadoop要转向容器了。”

他说:“以前认为Hadoop集群部署在裸设备上性能更优,但现在看来不一定了。”容器需要变得更成熟,而且Hadoop本身设计并不是针对微服务风格的架构。BlueData公司最近更新软件提升了对容器的支持,推出了自动Kerberos配置Hadoop集群和Linux特权访问管理工具。

Hadoop发行版供应商MapR技术公司一位经理表示,敏捷性和流处理也是微服务获益的驱动力。Jack Norris是MapR公司数据和应用高级副总裁,他说客户构建机器人需要有快速适应数据的能力并具备机器学习模型。

他表示,在“事件驱动”架构的应用程序中这一点尤为明显。这种架构越来越多的包含了数据流处理组件。

Norris说,Hadoop和Spark应用流变得越来越复杂,他们变得更难升级了。但是,他认为微服务只是关注数据管道中的事件,这会给这种开发带来更多灵活性。这是与原始Hadoop开发风格相比最根本的变化。

Norris说:“我们看到了开放更宽泛应用程序集的需求。”与此同时,他承诺MapR公司将继续支持现有整块应用程序的风格。

上个月,MapR公司对于大数据应用微服务做了深入实践,为应用程序版本控制提供微服务专用卷,为机器学习模型AB测试设计专用微服务。另外,Norris表示,他们设计了新的参考架构用来指导开发人员利用微服务聚合流数据和实时分析应用。

AI机器人监视“只逛不买”的购物车
随着大数据处理任务变得更复杂,加上相关组件都支持精确的数据流,微系统方法的应用越来越广泛了。Otto公司的Steffner认为,微系统提供了典型的“各个击破”手段来满足架构需求。

上个月在纽约举办的Strata+Hadoop 2016年世界大会上,Steffner表示,Otto公司数据架构中的每个AI机器人都处理特定任务。例如,一个AI机器人查找欺诈交易;另一个针对实时广告位分析建模;还有一个检查空的在线购物车,并对未购买任何商品就打算离开的客户推送最后一轮促销产品。

该公司通过基于Docker的微系统架构实现以上功能,该架构是2015年四月上线的,那时候该公司已经部署传统大数据平台两年了,不过并没有满足全部需求。

Docker容器也非常适合机器人软件。Otto公司在后台安装了混合开源流处理引擎,包括Storm、Spark流处理、Flink和Ignite。不过Steffner说,Ignite是内存数据组织技术,最初是由GridGain系统公司开发的,用来处理当前环境中的批量实时处理工作。

本文转自d1net(转载)

相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
1月前
|
Kubernetes 开发者 Docker
基于容器技术的微服务架构
基于容器技术的微服务架构
33 0
|
2月前
|
监控 数据可视化 关系型数据库
微服务架构+Java+Spring Cloud +UniApp +MySql智慧工地系统源码
项目管理:项目名称、施工单位名称、项目地址、项目地址、总造价、总面积、施工准可证、开工日期、计划竣工日期、项目状态等。
307 6
|
1月前
|
人工智能 运维 监控
构建高性能微服务架构:现代后端开发的挑战与策略构建高效自动化运维系统的关键策略
【2月更文挑战第30天】 随着企业应用的复杂性增加,传统的单体应用架构已经难以满足快速迭代和高可用性的需求。微服务架构作为解决方案,以其服务的细粒度、独立性和弹性而受到青睐。本文将深入探讨如何构建一个高性能的微服务系统,包括关键的设计原则、常用的技术栈选择以及性能优化的最佳实践。我们将分析微服务在处理分布式事务、数据一致性以及服务发现等方面的挑战,并提出相应的解决策略。通过实例分析和案例研究,我们的目标是为后端开发人员提供一套实用的指南,帮助他们构建出既能快速响应市场变化,又能保持高效率和稳定性的微服务系统。 【2月更文挑战第30天】随着信息技术的飞速发展,企业对于信息系统的稳定性和效率要求
|
13天前
|
分布式计算 资源调度 监控
Hadoop生态系统深度剖析:面试经验与必备知识点解析
本文深入探讨了Hadoop生态系统的面试重点,涵盖Hadoop架构、HDFS、YARN和MapReduce。了解Hadoop的主从架构、HDFS的读写流程及高级特性,YARN的资源管理与调度,以及MapReduce编程模型。通过代码示例,如HDFS文件操作和WordCount程序,帮助读者巩固理解。此外,文章强调在面试中应结合个人经验、行业动态和技术进展展示技术实力。
|
18天前
|
数据采集 运维 监控
微服务监控:守护系统稳定的终极防线
微服务监控在数字化时代日益重要,它帮助运维和开发人员实时监测服务性能、状态和安全,确保微服务架构的稳定性和可用性。构建微服务监控体系需关注合理监控策略、数据采集处理、可视化及告警。数据采集的三大支柱是指标、日志和链路追踪。监控涵盖基础设施、系统、应用和业务层面。通过优化监控体系、融合业务场景和建立跨团队协作,可提升监控效果。未来,AI和云计算将推动微服务监控向更精准、高效和安全的方向发展。
27 0
|
1月前
|
Kubernetes SDN 微服务
微服务与 Kubernetes 容器云的边界
【2月更文挑战第30天】该文探讨了微服务与Kubernetes集群的关系,主要关注是否应跨多集群部署。理想的状况是每个微服务对应一个Kubernetes集群,配置和注册中心在同一集群内,以减少网络延迟。
|
1月前
|
运维 应用服务中间件 调度
微服务容器化的运维
【2月更文挑战第27天】
|
1月前
|
运维 API Docker
深入浅出:微服务架构与容器化技术的完美融合
【2月更文挑战第13天】 在现代软件开发领域,微服务架构和容器化技术已成为推动企业快速发展的两大核心力量。本文将从微服务的基本概念出发,深入探讨其与容器化技术结合的必然性与优势,进而分析如何在实践中有效地实现二者的完美融合。通过对微服务架构的细致解析及容器化技术的应用展示,旨在为读者提供一种全新的视角,理解并掌握这一前沿技术趋势,以指导实际工作中的技术选择与架构设计。
|
2月前
|
运维 Java Docker
微服务容器化实践
【2月更文挑战第6天】
|
2月前
|
开发者 Docker 微服务
深入浅出:使用Docker容器化部署微服务架构
在当今快速迭代的软件开发环境中,微服务架构因其高度解耦和独立性而成为企业首选。然而,微服务的管理和部署可能会变得复杂和繁琐。本文将探讨如何利用Docker,一个轻量级的容器化技术,来简化和加速微服务的部署。我们将从Docker的基础概念入手,详细介绍如何创建、配置和运行微服务容器,最后讨论Docker在微服务架构中的优势和挑战。本文旨在为开发者提供一条清晰的路径,通过容器化技术实现微服务架构的高效部署和管理。
87 0