Apache Spark

Spark(九)Spark之Shuffle调优

◇◆丶佛笑我妖孽 提交于 2021-02-01 06:21:00
一、概述 大多数Spark作业的性能主要就是消耗在了shuffle环节,因为该环节包含了大量的磁盘IO、序列化、网络数据传输等操作。因此,如果要让作业的性能更上一层楼,就有必要对shuffle过程进行调优。但是也必须提醒大家的是,影响一个Spark作业性能的因素,主要还是代码开发、资源参数以及数据倾斜,shuffle调优只能在整个Spark的性能调优中占到一小部分而已。因此大家务必把握住调优的基本原则,千万不要舍本逐末。下面我们就给大家详细讲解shuffle的原理,以及相关参数的说明,同时给出各个参数的调优建议。 二、shuffle的定义 Spark的运行主要分为2部分:   一部分是驱动程序,其核心是SparkContext;   另一部分是Worker节点上Task,它是运行实际任务的。程序运行的时候,Driver和Executor进程相互交互:运行什么任务,即Driver会分配Task到Executor,Driver 跟 Executor 进行网络传输; 任务数据从哪儿获取,即Task要从 Driver 抓取其他上游的 Task 的数据结果,所以有这个过程中就不断的产生网络结果。其中, 下一个 Stage 向上一个 Stage 要数据这个过程,我们就称之为 Shuffle 。 三、ShuffleManager发展概述 在Spark的源码中,负责shuffle过程的执行

TDMQ喜获可信云最高级认证证书!

孤人 提交于 2021-01-31 18:01:32
导语: 由中国信息通信研究院、中国通信标准化协会联合主办的“2020可信云大会”于昨天圆满结束,会上发布了2020年可信云上半年最新评估结果。其中腾讯云中间件—— 分布式消息队列 TDMQ 凭借其优秀的技术能力,获得了 可信云最高级认证证书 。 01 TDMQ喜获可信云最高级认证证书 在刚刚过去的“2020可信云大会”在线上大会上,腾讯云中间件——分布式消息队列TDMQ喜获可信云 最高级认证证书 !代码编号:No.MQ-0003 TDMQ刚刚出道,便获得了可信云软件认证的最高级证书,这是对产品服务能力和腾讯云中间件技术能力的最佳认可。 02 创新定义,开启消息队列新时代 TDMQ基于开源Pulsar 存储计算分离 架构,完美支持 按量使用无限扩展 , 专为云而生的消息队列 ,并 兼容主流消息队列产品。 03 超强服务能力 1. 高一致性 采用raft算法 。 同步刷盘 。 多副本 。 2. 高性能低延迟 高效支持 亿级消息生产和消费 。 单集群 QPS 超过10万 。 时耗方面有保护机制来保证低延迟,帮助您轻松满足业务性能需求 。 3. 百万级 To pic 计算与存储架构的分离 设计,可以轻松 支持百万级消息主题 。 多租户,完善的自助运维管理工具 。 4. 丰富的消息类型 提供丰富的消息类型,涵盖普通消息、顺序消息(全局顺序 / 分区顺序)、分布式事务消息、定时消息等。 5.

HDFS与HADOOP

喜夏-厌秋 提交于 2021-01-31 05:30:58
再写 HDFS Federation机制的时候,发现基础不扎实,需要将之前的hadoop再详细记录一下原理(重点只说Hadoop2.0版本): Hadoop2.0版本,引入了Yarn。核心:HDFS+Yarn+Mapreduce Yarn是资源调度框架。能够细粒度的管理和调度任务。此外,还能够支持其他的计算框架,比如spark等。 存储的基础知识以及原理: 元数据信息和具体数据,分别对应namenode和datenode: namenode 工作职责: 1.要知道管理有哪些机器节点,即有哪些datanode。比如ip信息等。 2.要管理文件信息,文件名、文件多大、文件被切成几块、以及每一块的存贮位置信息(存在哪个datanode节点上了),即管理元数据信息。 3.要有一个机制要知道集群里datanode节点的状态变化。可以rpc心跳机制来做到。 4.namenode存在单点故障问题,可以再引入一台管理者节点。 5.datanode挂掉后,可能数据就丢失,文件就不完整了,要有一个备份机制,一般来说,一个文件块,有3个备份,本机一份,同一机架的其他datanode有一份,另外一机器的机器上有一份。 管理元数据信息,文件名,文件大小,文件块信息等。 namdenode把元数据信息存到内存里,为了快速查询,此外为了应对服务宕机而引起的元数据丢失,也要持久化到本地文件里。

Flink 助力美团数仓增量生产

此生再无相见时 提交于 2021-01-30 03:10:03
简介: 本文由美团研究员、实时计算负责人鞠大升分享,主要介绍 Flink 助力美团数仓增量生产的应用实践。内容包括:1、数仓增量生产;2、流式数据集成;3、流式数据处理;4、流式 OLAP 应用;5、未来规划。 一、数仓增量生产 1.美团数仓架构 先介绍一下美团数仓的架构以及增量生产。如下图所示,这是美团数仓的简单架构,我把它叫做三横四纵。所谓三横,第一是贯穿全链路的元数据以及血缘,贯穿数据集成、数据处理、数据消费、以及数据应用的全过程链路。另外一块贯穿全链路的是数据安全,包括受限域的认证系统、权限系统、整体的审计系统。根据数据的流向,我们把数据处理的过程分为数据集成、数据处理、数据消费、以及数据应用这 4 个阶段。 在数据集成阶段,我们对于公司内部的,比如说用户行为数据、日志数据、DB 数据、还有文件数据,都有相应的集成的系统把数据统一到我们的数据处理的存储中,比如说 Kafka 中。 在数据处理阶段,分为流式处理链路、批处理链路以及基于这套链路的数仓工作平台(万象平台)。生产出来的数据,经过 Datalink 导入到消费的存储中,最终通过应用以不同的形式呈现出来。 我们目前在 Flink 上面应用比较广泛的地方,包括从 Kafka 把数据导到 Hive,包括实时的处理,数据导出的过程。今天的分享就集中在这些方面。 2.美团 Flink 应用概况 美团的 Flink 目前大概有

Flink 助力美团数仓增量生产

拥有回忆 提交于 2021-01-30 03:09:04
01 PDF下载 识别 下方二 维码 ,回复“ 峰会 ”,即可获得下载地址。感觉干货多,记得 设为 星标 哦 本文分享自微信公众号 - 小晨说数据(flink-spark)。 如有侵权,请联系 support@oschina.cn 删除。 本文参与“ OSC源创计划 ”,欢迎正在阅读的你也加入,一起分享。 来源: oschina 链接: https://my.oschina.net/u/4658124/blog/4829779

Serverless Kubernetes:理想,现实与未来

筅森魡賤 提交于 2021-01-29 17:35:21
作者 | 易立、张维 来源 | 阿里巴巴云原生公众号 导读 :当前 Serverless 容器的行业趋势如何?有哪些应用价值?如果 Kubernetes 天生长在云上,它的架构应该如何设计?Serverless 容器需要哪些基础设施?阿里云容器服务产品负责人易立及阿里云 Serverless Kubernetes 产品 TL 张维将分享他们对 Serverless 容器架构和背后的关键思考。 从 Serverless 容器到 Serverless Kubernetes Serverless(无服务器)容器是让用户无需购买和管理服务器直接部署容器应用的产品、技术形态。 Serverless 容器可以极大提高容器应用部署的敏捷度和弹性能力,降低用户计算成本;让用户聚焦业务应用而非底层基础设施管理,极大地提高应用开发效率,降低运维成本。 目前 Kubernetes 已经成为业界容器编排系统的事实标准,基于 Kubernetes 的云原生应用生态(Helm, Istio, Knative, Kubeflow, Spark on K8s 等)更是让 Kubernetes 成为云操作系统。一方面通过 Serverless 方式根本性解决 K8s 自身的管理复杂性,让用户无需受困于 K8s 集群容量规划、安全维护、故障诊断;一方面进一步释放了云计算的能力,将安全、可用性

Flink 助力美团数仓增量生产

对着背影说爱祢 提交于 2021-01-29 10:16:48
简介: 本文由美团研究员、实时计算负责人鞠大升分享,主要介绍 Flink 助力美团数仓增量生产的应用实践。内容包括:1、数仓增量生产;2、流式数据集成;3、流式数据处理;4、流式 OLAP 应用;5、未来规划。 一、数仓增量生产 1.美团数仓架构 先介绍一下美团数仓的架构以及增量生产。如下图所示,这是美团数仓的简单架构,我把它叫做三横四纵。所谓三横,第一是贯穿全链路的元数据以及血缘,贯穿数据集成、数据处理、数据消费、以及数据应用的全过程链路。另外一块贯穿全链路的是数据安全,包括受限域的认证系统、权限系统、整体的审计系统。根据数据的流向,我们把数据处理的过程分为数据集成、数据处理、数据消费、以及数据应用这 4 个阶段。 在数据集成阶段,我们对于公司内部的,比如说用户行为数据、日志数据、DB 数据、还有文件数据,都有相应的集成的系统把数据统一到我们的数据处理的存储中,比如说 Kafka 中。 在数据处理阶段,分为流式处理链路、批处理链路以及基于这套链路的数仓工作平台(万象平台)。生产出来的数据,经过 Datalink 导入到消费的存储中,最终通过应用以不同的形式呈现出来。 我们目前在 Flink 上面应用比较广泛的地方,包括从 Kafka 把数据导到 Hive,包括实时的处理,数据导出的过程。今天的分享就集中在这些方面。 2.美团 Flink 应用概况 美团的 Flink 目前大概有

大型分布式存储方案MinIO介绍,看完你就懂了!

点点圈 提交于 2021-01-29 09:23:39
1、MinIO是什么? 官方解释:MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几kb到最大5T不等。 MinIO是一个非常轻量的服务,可以很简单的和其他应用的结合,类似 NodeJS, Redis 或者 MySQL。 2、MinIO有哪些优势? 2.1 开发文档全面 MinIO作为一款基于Golang 编程语言开发的一款高性能的分布式式存储方案的开源项目,有十分完善的官方文档。。 官网文档地址:https://docs.min.io/cn/ 2.2 高性能 MinIO号称是目前速度最快的对象存储服务器。在标准硬件上,对象存储的读/写速度最高可以高达183 GB/s和171 GB/s。对象存储可以作为主存储层,用来处理Spark、Presto、TensorFlow、H2O.ai等各种复杂工作负载以及成为Hadoop HDFS的替代品。 MinIO用作云原生应用程序的主要存储,和传统对象存储相比,云原生应用程序需要更高的吞吐量和更低的延迟。而这些都是MinIO能够达成的性能指标。 2.3 支持全面 目前MinIO支持市面主流的开发语言并且可以通过SDK快速集成快速集成使用。 2.4 AWS

大型分布式存储方案MinIO介绍,看完你就懂了!

。_饼干妹妹 提交于 2021-01-28 05:12:31
1、MinIO是什么? 官方解释:MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几kb到最大5T不等。 MinIO是一个非常轻量的服务,可以很简单的和其他应用的结合,类似 NodeJS, Redis 或者 MySQL。 2、MinIO有哪些优势? 2.1 开发文档全面 MinIO作为一款基于Golang 编程语言开发的一款高性能的分布式式存储方案的开源项目,有十分完善的官方文档。。 官网文档地址:https://docs.min.io/cn/ 2.2 高性能 MinIO号称是目前速度最快的对象存储服务器。在标准硬件上,对象存储的读/写速度最高可以高达183 GB/s和171 GB/s。对象存储可以作为主存储层,用来处理Spark、Presto、TensorFlow、H2O.ai等各种复杂工作负载以及成为Hadoop HDFS的替代品。 MinIO用作云原生应用程序的主要存储,和传统对象存储相比,云原生应用程序需要更高的吞吐量和更低的延迟。而这些都是MinIO能够达成的性能指标。 2.3 支持全面 目前MinIO支持市面主流的开发语言并且可以通过SDK快速集成快速集成使用。 2.4 AWS