spark
大跃ET
大数据,数据仓库,每周要看一个spark小模块或小问题
展开
-
MapReduce Shuffle 和 Spark Shuffle 原理概述
Shuffle的本意是洗牌、混洗的意思,把一组有规则的数据尽量打乱成无规则的数据。而在MapReduce中,Shuffle更像是洗牌的逆过程,指的是将map端的无规则输出按指定的规则“打乱”成具有一定规则的数据,以便reduce端接收处理。其在MapReduce中所处的工作阶段是map输出后到reduce接收前,具体可以分为map端和reduce端前后两个部分。在shuffle之前,也就是在map阶段,MapReduce会对要处理的数据进行分片(split)操作,为每一个分片分配一个MapTask任务。转载 2020-12-15 15:59:38 · 295 阅读 · 0 评论 -
彻底搞懂spark的shuffle过程(shuffle write)
什么时候需要 shuffle writer假如我们有个 spark job 依赖关系如下我们抽象出来其中的rdd和依赖关系:E <-------n------, C <--n---D---n-----F--s---, A <-------s------ B <--n----`-- G对应的划分后的RDD结构为:最终我们得到了整个执行过程:中间就涉及...转载 2020-11-19 17:24:26 · 3774 阅读 · 0 评论 -
Lambda架构,Kappa架构和去ETL化的IOTA架构
经过这么多年的发展,已经从大数据1.0的BI/Datawarehouse时代,经过大数据2.0的Web/APP过渡,进入到了IOT的大数据3.0时代,而随之而来的是数据架构的变化。▌Lambda架构在过去Lambda数据架构成为每一个公司大数据平台必备的架构,它解决了一个公司大数据批量离线处理和实时数据处理的需求。一个典型的Lambda架构如下:Lambda架构数据从底层的数据源开始,经过各种各样的格式进入大数据平台,在大数据平台中经过Kafka、Flume等数据组件进行收集,然后分成两转载 2020-11-15 18:21:10 · 450 阅读 · 0 评论 -
大数据处理中的Lambda架构和Kappa架构
首先我们来看一个典型的互联网大数据平台的架构,如下图所示:在这张架构图中,大数据平台里面向用户的在线业务处理组件用褐色标示出来,这部分是属于互联网在线应用的部分,其他蓝色的部分属于大数据相关组件,使用开源大数据产品或者自己开发相关大数据组件。你可以看到,大数据平台由上到下,可分为三个部分:数据采集、数据处理、数据输出与展示。数据采集将应用程序产生的数据和日志等同步到大数据系统中,由于数据源不同,这里的数据同步系统实际上是多个相关系统的组合。数据库同步通常用 Sqoop,日志同步可以...转载 2020-11-15 18:08:45 · 386 阅读 · 0 评论