Automatic Management of Data and Computation in Datacenters

最近在研究数据中心的数据管理和性能优化,看了一篇2010的论文Nectar:Automatic Management of Data and Computation in Datacenters,还是有一定的启发的,简要介绍给大家,详细的建议大家download论文下来看下。

Nectar核心思路有两个:

1、大部分数据计算存储之后是无效的,根据论文中研究统计结果,有50%的文件在过去的250天之内完全未必访问过,所以这50%的存储是完全被浪费掉了,因此只计算和存储真正有用的数据就可以降低50%的存储使用。

2、数据计算的中间过程是可以被重用的。通过重用子计算,来降低数据中心的负荷。

Nectar怎么来做到上面两点呢?

核心方法: 实现数据和计算的统一自动化管理。实现计算和数据可交换,主要在于2点:

1、将计算的结果存放在Cache中统一管理,等到下次相似的计算进行的时候,首先从datecenter wide caching service中去查找是否已经完全或者部分执行过,如果有的话,就会避免相同数据的重复计算。

2、将废弃不用或者经常不使用的数据从数据中心的存储空间自动回收(使用了标准的mark-and-sweep Garbage Collector),并保留生成该数据的计算来取代该数据,但是当该数据需要的时候,就要重新提交该计算。

上面说的对计算和数据的管理,整个过程对用户是完全透明的。做到以上两点,核心在缓存策略,重算算法。看下封面的Nectar的架构:

1、用户提交程序的时候,程序会被rewriter,分解成子计算,然后到cache server中看是否被命中,命中的不需要重新计算,从而节省计算时间。

2、每次计算的中间过程,同样会被cache到cache server中。

3、Cache server并不保存数据,所有数据保存在Distribute FS上。Cache server上只是保存一个到Distributed FS映射。

当能这个系统也不是万能的,当前Nectar为了做到program rewriter,要求所有的程序只能是LINQ,另外,数据重算的策略对时效性要求高的是否适合也值得讨论。总的来说,系统的思路还是值的借鉴和学习的,推荐大家去down一下原生的论文看看。

2014年我给自己定了一个目标,看50篇英文论文,目前完成5篇了,这个算是启发比较大的。

原文发布于微信公众号 - 大数据和云计算技术(jiezhu2007)

原文发表时间:2015-01-24

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏落影的专栏

程序员算法基础——贪心算法

我们自然而然能产生一种解法:尽可能的往右跳,看最后是否能到达。 本文即是对这种贪心决策的介绍。

1573
来自专栏诸葛青云的专栏

计算位数最高达300位的两个非负整数的乘积,C语言编程实现

小编给大家推荐一个学习氛围超好的地方,C/C++交流企鹅裙:870963251!适合在校大学生,小白,想转行,想通过这个找工作的加入。裙里有大量学习资料,有大神...

941
来自专栏Dawnzhang的开发者手册

数据结构与算法学习笔记之 复杂度分析

大家都知道数据结构和英语,就如同程序员的两条腿一样;只有不断的积累,学习,拥有了健壮的“双腿”才能越走越远;在数据结构和算法的领域,不得不承认自己就是一只菜...

843
来自专栏数据派THU

放弃“for循环”,教你用这种算法 !(附代码)

原文标题:Why you should forget ‘for-loop’ for data science code and embrace vectoriz...

1916
来自专栏云霄雨霁

加权有向图----关键路径算法

1550
来自专栏CSDN技术头条

机器学习算法线上部署方法

我们经常会碰到一个问题:用了复杂的GBDT或者xgboost大大提升了模型效果,可是在上线的时候又犯难了,工程师说这个模型太复杂了,我没法上线,满足不了工程的要...

40710
来自专栏AI科技评论

学界 | 大规模分布式存储如何优化?Facebook说自己的方法能把CPU负载降一半

AI 科技评论按:Facebook今天在研究blog上发布了一篇文章,介绍了自己的超大规模图分区优化算法SHP。这是 Facebook 为了处理自己的规模过大的...

3175
来自专栏take time, save time

Think in 递归

     网上写递归的文章可以用汗牛充栋来形容了,大多数都非常清晰而又细致的角度上讲解了递归的概念,原理等等。以前学生的时候,递归可以说一直是我的某种死穴,原理...

39912
来自专栏落影的专栏

程序员进阶之算法练习(七)

前言 最近来公司面试的开发者很多,经验从1、2年,到5、6年都有,大都不堪重用。 或许在一些程序员眼里,能实现功能,保证上线即可。代码质量,可扩展性,复杂度...

2859
来自专栏AI黑科技工具箱

0.伏笔:图像读取方式以及效率对比

入职了之后挺忙,已经好久没有做一些科普性的更新了。近期已做了些学术要求不高的工作,所以刚好有时间写写总结。

37611

扫码关注云+社区