大数据环境下资源调度系统
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
workload at Facebook. 2. A Hadoop instance running a set of large batch jobs. 3. Spark running a series of machine learning jobs. 4. Torque running a series of MPI jobs.
Spark 乐观锁
node
node
node
3 Framework of Omega
Omega调度流程特征
Omega使用的是基于shared state的策略
同时优化了并发控制来调节他 们的争抢冲突
每个调度器都拥有整个集群的权限, 可以自由获取资源
这种方式解锁了双层调度器悲 观锁导致的并发限制,让每个 Framework对全局资源可见。
2.基于优先级的资源分配方式
2 Framework of Mesos
Evaluation
Platform:EC2 96 nodes,4 CPU cores,15GB RAM; Four workloads: 1. A Hadoop instance running a mix of small and large jobs based on the
• 降低运维成本
• 容灾
1 Motivation
Hadoop
Spark
Storm
Node
Node
Node
Node
Node
Node
Node
Node
Node
Hadoop
Spark 资源管理系统
Storm
Node
Node
Node
Node
Node
Node
Node
Node
Node
1 Motivation
Storm
2 Framework of Mesos
Framework
架构图
2 Framework of Mesos
资源分配图
2 Framework of Mesos
资源分配
1.最大最小公平算法 例 同一时间段来了四个资源请求,资源需求分别是2,2.6,4,5,其资源总能力为10, 为其计算最大最小公平分配。 解决方法:我们通过几轮的计算来计算最大最小公平分配.第一轮,我们暂时将 资源划分成4个大小为2.5的.由于这超过了用户1的需求,这使得剩了0.5个均 匀的分配给剩下的3个人资源,给予他们每个2.66.这又超过了用户2的需求,所 以我们拥有额外的0.066…来分配给剩下的两个用户,给予每个用户 2.5+0.66…+0.033…=2.7.因此公平分配是:用户1得到2,用户2得到2.6,用户3和用 户4每个都得到2.7.
统一的资源管理与调度平台介绍
符彦军 @Cloud
2015/10/30
结合两篇文章讲述资源调度系统从二代到三 代的渐变过程
1
Motivation
2
Framework of Mesos
3
Framework of Omega
4
Conclusion
1 Motivation
为什么要做资源调度系统
集群的资源调度系统是对底层硬件的一种抽象,屏蔽了硬件的异构性(目前,各系统主 要是对CPU,内存,IO,磁盘进行抽象),对上层各种应用提供资源的统一调度。从云 计算的角度来划分,属于IAAS • 提升资源利用率
2 Framework of Mesos
2 Framework of Mesos
1
Motivation
2
Framework of Mesos
3
Framework of Omega
4
Conclusion
3 Hale Waihona Puke Baiduramework of Omega
协同(类似zookeeper)
Hadoop Storm
共享集群模式使得资源利用率提高
1 Motivation
调度系统的演变历程
1
Motivation
2
Framework of Mesos
3
Framework of Omega
4
Conclusion
2 Framework of Mesos
Apache Mesos
● Scalability to 10,000s of nodes ● Fault-tolerant replicated master and slaves using ZooKeeper ● Support for Docker containers ● Native isolation between tasks with Linux Containers ● Multi-resource scheduling (memory, CPU, disk, and ports) ● Java, Python and C++ APIs for developing new parallel applications ● Web UI for viewing cluster state
3 Framework of Omega
在多用户环境中,在同一时间可能会有多个用户更新相同的记录,这会产生冲突。
锁
这就是著名的并发性问题。简单的说就是实现并发控制;
定义:假定会发生并发冲突,屏蔽一切可能违反数据完整性的操作。 每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都 会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关 系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁, 写锁等,都是在做操作之前先上锁。
定义:假设不会发生并发冲突,只在提交操作时检查是否违反数据完整性。 每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人 有没有去更新这个数据,可以使用版本号等机制。乐观锁适用于多读的应用类型,这样可以提高吞吐量。
1
Motivation
2
Framework of Mesos
3
Framework of Omega
4
Conclusion
4 Conclusion
4 Conclusion
Thank You !
Spark 乐观锁
node
node
node
3 Framework of Omega
Omega调度流程特征
Omega使用的是基于shared state的策略
同时优化了并发控制来调节他 们的争抢冲突
每个调度器都拥有整个集群的权限, 可以自由获取资源
这种方式解锁了双层调度器悲 观锁导致的并发限制,让每个 Framework对全局资源可见。
2.基于优先级的资源分配方式
2 Framework of Mesos
Evaluation
Platform:EC2 96 nodes,4 CPU cores,15GB RAM; Four workloads: 1. A Hadoop instance running a mix of small and large jobs based on the
• 降低运维成本
• 容灾
1 Motivation
Hadoop
Spark
Storm
Node
Node
Node
Node
Node
Node
Node
Node
Node
Hadoop
Spark 资源管理系统
Storm
Node
Node
Node
Node
Node
Node
Node
Node
Node
1 Motivation
Storm
2 Framework of Mesos
Framework
架构图
2 Framework of Mesos
资源分配图
2 Framework of Mesos
资源分配
1.最大最小公平算法 例 同一时间段来了四个资源请求,资源需求分别是2,2.6,4,5,其资源总能力为10, 为其计算最大最小公平分配。 解决方法:我们通过几轮的计算来计算最大最小公平分配.第一轮,我们暂时将 资源划分成4个大小为2.5的.由于这超过了用户1的需求,这使得剩了0.5个均 匀的分配给剩下的3个人资源,给予他们每个2.66.这又超过了用户2的需求,所 以我们拥有额外的0.066…来分配给剩下的两个用户,给予每个用户 2.5+0.66…+0.033…=2.7.因此公平分配是:用户1得到2,用户2得到2.6,用户3和用 户4每个都得到2.7.
统一的资源管理与调度平台介绍
符彦军 @Cloud
2015/10/30
结合两篇文章讲述资源调度系统从二代到三 代的渐变过程
1
Motivation
2
Framework of Mesos
3
Framework of Omega
4
Conclusion
1 Motivation
为什么要做资源调度系统
集群的资源调度系统是对底层硬件的一种抽象,屏蔽了硬件的异构性(目前,各系统主 要是对CPU,内存,IO,磁盘进行抽象),对上层各种应用提供资源的统一调度。从云 计算的角度来划分,属于IAAS • 提升资源利用率
2 Framework of Mesos
2 Framework of Mesos
1
Motivation
2
Framework of Mesos
3
Framework of Omega
4
Conclusion
3 Hale Waihona Puke Baiduramework of Omega
协同(类似zookeeper)
Hadoop Storm
共享集群模式使得资源利用率提高
1 Motivation
调度系统的演变历程
1
Motivation
2
Framework of Mesos
3
Framework of Omega
4
Conclusion
2 Framework of Mesos
Apache Mesos
● Scalability to 10,000s of nodes ● Fault-tolerant replicated master and slaves using ZooKeeper ● Support for Docker containers ● Native isolation between tasks with Linux Containers ● Multi-resource scheduling (memory, CPU, disk, and ports) ● Java, Python and C++ APIs for developing new parallel applications ● Web UI for viewing cluster state
3 Framework of Omega
在多用户环境中,在同一时间可能会有多个用户更新相同的记录,这会产生冲突。
锁
这就是著名的并发性问题。简单的说就是实现并发控制;
定义:假定会发生并发冲突,屏蔽一切可能违反数据完整性的操作。 每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都 会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关 系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁, 写锁等,都是在做操作之前先上锁。
定义:假设不会发生并发冲突,只在提交操作时检查是否违反数据完整性。 每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人 有没有去更新这个数据,可以使用版本号等机制。乐观锁适用于多读的应用类型,这样可以提高吞吐量。
1
Motivation
2
Framework of Mesos
3
Framework of Omega
4
Conclusion
4 Conclusion
4 Conclusion
Thank You !