大数据争论:批处理与流处理的C位之战

简介: 数据无疑是当今数字经济中的新货币,但要跟上企业数据变化和递增的业务信息需求,仍然是非常艰难。这也就解释了公司将数据从传统基础构架中迁移至云中,以衡量数据驱动决策的原因。这可确保公司宝贵资源——数据——受到监管,值得信任,方便管理和访问。

  数据无疑是当今数字经济中的新货币,但要跟上企业数据变化和递增的业务信息需求,仍然是非常艰难。这也就解释了公司将数据从传统基础构架中迁移至云中,以衡量数据驱动决策的原因。这可确保公司宝贵资源——数据——受到监管,值得信任,方便管理和访问。

  虽然企业也认可:基于云的技术是确保跨企业间的数据管理、数据安全、隐私和流程合规性的关键,但关于如何更快地处理数据仍然存在一个有趣的争论。那就是批处理与流处理之间的PK。

  每种处理方法都有其优缺点,但如何选择还是依据具体的业务需求。下面会深入探讨哪些用例需要使用批处理,又有哪些用例需要使用流处理。

  批处理和流处理之间有什么区别?

  批次是在特定时间间隔内组合在一起的数据点集合。通常用于此的另一个术语是数据窗口。流处理,用于处理连续数据,是将大数据转换为快速数据的关键。这两种模型都很有价值,每种模型都可用于解决不同的用例。他们甚至可以“融合”,可以在数据流中做数据窗口,也就是微批量。

  虽然批处理模型需要时间段内收集的一组数据,但流处理需要将数据送入分析工具中,通常以实时微批量方式送入。处理来自传统架构的大量数据或数据源时经常使用批处理,而在流中直接处理数据是不可行的。根据定义,批处理数据还需要将批处理需要的所有数据加载成某种类型的存储、数据库或文件系统,然后才进行处理。有时,在开始分析阶段之前,IT团队可能会无所事事地等待,直至所有数据加载完成。

  cf2fa8bb58da16af562fb552d5608ba0

  流处理也可以用于处理大量数据,但是当您不需要实时分析时,批处理工作效果最佳。由于流处理负责处理运动中的数据并快速提供分析结果,因此它可以用Apache Spark和Apache Beam等平台生成近乎即时的结果。

  86fb9d55d411221ec16d12f773db02fd

  例如,Talend最近发布的Talend Data Streams是一款免费的亚马逊市场应用程序,由Apache Beam提供支持,可简化并加速大量数据,摄取各种实时数据。

  批处理一定比流处理好吗?

  无论您喜欢批处理还是支持流处理,两者“融合“时会更好。虽然流处理最适合时间很重要的用例,批处理在收集所有数据时运行良好,但这不代表哪一个比另一个好-这实际上取决于您的业务目标。

  然而,我们看到试图利用流处理的公司发生了重大转变。最近对超过16,000名数据专员的调查显示,数据科学面临的最常见挑战包括脏数据、整体访问、或数据可用性等各方面。不幸的是,由于数据处于运动状态,流式传输往往会加剧这些挑战。在“跳槽”至实时的流处理之前,解决这些可访问性和数据质量问题是关键。

  17f5851fe55328144e5846c03473137c

  当我们与企业讨论他们如何收集数据并加速创新时,他们通常回答说:“想要实时的数据”,我们再问:“实时对您意味着什么?”

  商业用例可能会有所不同,但实时取决于事件创建或数据创建相对于处理时间的比例,可能是每小时,每五分钟或每毫秒。

  公司为何将数据批处理转换为数据流处理?下面我打一个比方。想象一下,你刚刚从你最喜欢的啤酒厂订购了一批啤酒,客人已准备好喝酒了。但在你能喝酒之前,你必须根据啤酒花的味道对啤酒进行评分,并编辑在线评论对每种啤酒进行评分。如果你知道每换一种啤酒喝就要完成相同的、重复的过程,那么从一种啤酒到另一种啤酒需要相当长的时间。对于一个企业来说,啤酒相当于管道数据。不是等到你所有的数据后进行处理,而是你可以在几秒或几毫秒内微批量处理它(这意味着你可以更快地喝啤酒!)。

  为什么选流处理?

  如果你长时间没使用过流处理,你可能会问:“为什么我们不能像以前一样批处理?”你当然可以,但如果你有大量的数据,何时需要提取数据很简单,但何时需要使用它很难。

  公司将实时数据视为游戏规则改变者。但如果没有适当的工具,实现这一目标仍然是一个挑战,特别是因为企业需要处理递增的数量、种类和数据类型,它们来自众多不同数据系统(如社交媒体)的。在Talend,我们看到企业通常希望拥有更灵活的数据处理,以便他们能够加速创新,并更快地应对竞争威胁。

  例如,来自风力涡轮机上的传感器始终开启着。因此,数据流不间断地流动。由于没有数据的启动或停止,因此典型摄取或处理此数据的批处理方法已过时。这是一个使用流处理的完美用例。

  大数据争论

  很明显,企业正在将实时分析/流处理的优先级转移到实时收集可操作的信息。虽然过时的工具无法应对分析数据所涉及的速度或规模,但今天的数据库和流处理应用程序已经准备好应对当今的业务问题。

  以下是大数据争论中的重要内容:仅仅因为你有锤子并不意味着这是工作的正确工具。批处理和流处理是两种不同的模型,它不是二选一的游戏,它是关于如何确定哪一种更适合您的用例的判断。

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
8天前
|
消息中间件 存储 监控
[AIGC 大数据基础] 大数据流处理 Kafka
[AIGC 大数据基础] 大数据流处理 Kafka
|
8天前
|
SQL 大数据 数据处理
[AIGC大数据基础] Flink: 大数据流处理的未来
[AIGC大数据基础] Flink: 大数据流处理的未来
|
6月前
|
存储 分布式计算 大数据
大数据处理平台的架构演进:从批处理到实时流处理
大数据处理平台的架构演进:从批处理到实时流处理
126 0
|
8月前
|
存储 大数据 API
大数据Flink流处理相关概念
大数据Flink流处理相关概念
62 0
|
消息中间件 存储 SQL
大数据流处理平台的技术选型参考
大数据流处理平台的技术选型参考
大数据流处理平台的技术选型参考
|
消息中间件 分布式计算 大数据
大数据实时流处理零数据丢失
大数据实时流处理零数据丢失 1.整体流程: a)kafka:作为流处理程序的生产者 b)sparkStreaming:作为消费者,设置合理batch c)DB:输出到redis/ES 2.存在问题: 雪崩效应: kill 出现,导致的数据丢失 sparkStreaming程序挂掉了,到知道的数据丢失 解决: 1.使用checkpoint。
2080 0

热门文章

最新文章