大数据混业混布类场景
混业混布的技术背景与概念
在当今的大数据时代,数据规模和计算需求呈指数级增长,资源成本问题日益突出,为了解决这一问题,混业混布技术应运而生,混业混布是指在一个集群中同时运行在线业务和离线任务,通过提高资源利用率来降低成本,这种技术特别适用于大数据处理,其中离线任务可以在在线业务的空闲时段运行,从而优化整体资源使用,腾讯开源的全场景在离线混部系统Caelus就是这一领域的代表项目。
混业混布的主要架构
1. Hadoop生态与YARN调度
在Hadoop生态系统中,YARN(Yet Another Resource Negotiator)作为分布式资源调度系统,负责分配CPU和内存资源给特定的计算作业,随着技术的发展,批处理技术如Hive、MapReduce逐渐与流处理技术如SparkStream、FlinkCore结合,形成Lambda和Kappa架构。
2. 云原生与容器化
随着云原生技术的普及,大数据组件逐步实现容器化,腾讯的Caelus系统允许在线应用和离线任务在同一集群内共存,通过容器技术提升资源利用,Caelus还实现了Yarn on k8s,使得原有的大数据任务可以无缝迁移到Kubernetes环境。
3. 混业混布调度与资源管理
混业混布的核心在于如何合理分配资源,确保在线服务不受影响的同时,充分利用其空闲资源,Caelus通过指标收集、资源画像、资源隔离、干扰检测等模块全方位保障在线服务质量,Caelus还引入了容器热迁移能力,保证离线任务的SLA。
混业混布的核心技术难题与解决方案
1. 资源隔离与干扰检测
混业混布需要完善的资源隔离机制来避免任务间干扰,Caelus采用全维度弹性资源隔离,包括CPU、内存、磁盘IO等,并结合内核级别的数据采集和异常检测算法来实现干扰检测。
2. 调度器的性能与兼容性
大规模集群和大量短作业对调度器的调度吞吐提出了高要求,Caelus自研的高性能调度器解决了这一问题,同时保证了对多种版本Hadoop和Kubernetes的兼容性。
3. 服务质量(QoS)保障
Caelus通过资源画像和调度配合,提升了离线任务的服务质量,当在线业务需要资源时,离线任务会及时归还资源,从而保障在线服务的正常运行。
混业混布的实践案例:知乎与金山云Colo方案
知乎在采用金山云的Colo方案前,曾尝试多种方法优化IT资源成本,但最终选择混业混布后才实现了更精确的管理调度和高效的运维效率,Colo方案通过削峰填谷的方式提高了服务器资源的利用率,减少了企业IT开支。
相关问答FAQs
1. 什么是混业混布,它的主要优势是什么?
混业混布是将在线业务和离线任务部署在同一个集群中,通过提高资源利用率来降低成本,其主要优势在于能够充分利用在线业务空闲时段的资源,避免资源浪费,同时降低企业IT成本。
2. 混业混布中的资源隔离是如何实现的?
资源隔离主要通过全维度弹性资源隔离机制实现,包括对CPU、内存、磁盘IO等资源的隔离,还采用了内核级别的数据采集和异常检测算法来进行干扰检测,确保不同任务之间不会互相干扰。