Archive for the ‘cloud’ category

看展台的烦心事

November 18th, 2011

话说最近有两件事很郁闷,一是云计算这个概念从总体上讲继续不靠谱,而且没有变靠谱的趋势,这件事不是最郁闷的,最郁闷的是第二件——我得跟别人说,我是做云计算的。只希望云计算赶快退热,让那些浮云被风吹走吧。

先声明啊,我不是在攻击同行啊,不指责同行是我的一个个人准则,更不是说自己的公司不靠谱,不靠谱还做什么呢。

前不久在 QCon杭州主持了云计算的 Track,那时候看到的是——BigData 与云计算的概念逐步分离,云计算成功实践已然浮现,技术圈对云计算的看法趋于冷静、理智,找到了适于和不适于云计算的场景,对于追捧、炒作、质疑都或泰然处之、或辨清曲直、或接受面对。似乎“大家”都可以好好做事、为用户服务了。

然而,我忽视了一个事实——那个小小的技术圈还算不上“大家”,技术人员对社会的影响力是很小而且不直接的。

这两天在高交会看展台,满眼政务云、医疗云、安全云、物流云⋯⋯依然是不知所云、人云亦云。各路政府、机构、厂商,有的本来就对概念一知半解,有的为了自己的利益故意混淆是非,让本来已经逐渐清晰化的概念又在模糊起来了。更残酷的事实是,正是这些宣传在影响着更多的人,而不是我们技术小圈子的共识,现在,那些花50块钱进来看展览的叔叔阿姨们也知道了有这么多朵云了,知道所有东西都可以是云了⋯⋯对我来说,痛心疾首啊,我只想,让云赶快退烧,我们换一个技术名词吧。

好了,说了这么多,我来给云下王氏定义了:

不计自称为云的 SaaS 模式(此模式由来已久、变化不大、仅是在名词上划为了云,我们不评论它,这里的讨论也不涉及它,我更没有能力和兴趣来界定它),过去几年谈的云已经划分为了两个主流的概念:

  • 用大规模系统、服务大规模用户,这样的服务还叫云,其外在的特征表现为快速弹性(快速扩展与收缩服务能力)、用量计费(按照精确的消耗时长、空间、和流量)、按需自助服务(通过页面或API自助服务),而其内在特征则是细粒度、高效率、高可靠、自动化的资源池;【此定义参考了米国国家标准学会的定义,搞了很久无厘头的云计算标准化,这方面还是有点积累的,呵呵】
  • 用大规模系统、处理大规模数据,这样的应用现在叫BigData,其核心竞争力在于利用PC级硬件集群,存储海量数据,在适当建模的基础上,进行大规模分布式处理,高效的任务分解与调度,提供较以往的数据库或数据仓库类产品更高的容量和更强大的处理能力。

当然,你完全不必接受我的定义,这是我在自己的博客上的闲言碎语,也不打算在这里争概念,有不同见解的,请另找地方发表高见,我不支持你在本文后面的评论里写你的简介,唯一的原因就是——我觉得闹心。

我的愿望很简单,剩下的这部分最好也别叫云了,咱要么叫原来的名字,Utility Computing,好不好?至于那些在云或“类云系统”(请允许我这么称呼那些功能不全、规模不大的小型平台)上工作的服务,咱们也别叫XX云了吧。

嗯,就这样,我的简单的愿望不知道哪天才能实现啊⋯⋯

FSDataset结构图

April 7th, 2011

大概用了三天弄出来的,当前trunk的FSDataset的结构&调用关系图,肯定有疏漏的地方。这个文件现在是HDFS里,仅次于FSNamesystem的最长的文件了。

Illustration of FSDataset

 

前两天回学校喷了…

December 6th, 2010

前两天回学校,和师弟师妹简单聊了一下云计算,嗯,造孽啊,幻灯片送上:

CSDN TUP 之 Hadoop 沙龙流水账

September 6th, 2010

前两天在twitter上,因为 HIC2010 的缘故,注意到 TUP 搞了这个 Hadoop 沙龙(http://tup.csdn.net),通过和刘江老师(@turingbook)陶瓷,混到了入场机会,今天就兴奋而来了,这里记个流水账。

因为路途遥远,下班后不敢耽搁,直接出发,一路公交+地铁,六点半赶到五道口,饥饿难耐,在 KFC 解决了一下自己的肚子问题,然后匆匆赶往清华科技园的 Yahoo 北京研发中心。

走到电梯间,发现了周六见过的印裔老哥,估计这就是今天的主讲人Milind Bhandarkar了,于是上前搭讪,说明自己是中国移动的搞 hadoop 的同学,特地慕名前来参加 hadoop 的活动的,简单寒暄了几句,大意是说周六的活动很盛大,问问他停留多久,还去了啥地方啥的,别的不说了,总之,印度口音让我对今晚的活动有点怯意。

到门口的时候看到了刘江老师,可能是上周电话确认的时候我没接到电话,所以签到表里并没有我的名字,厚着脸皮签了个名就进去了,这时就差不多七点了。进到会场,发现已经来了不少人了,差不多坐满了,不过后来还有不少陆陆续续赶到的同学,我还不算是晚的,呵呵。

在刘江老师和Yahoo的东道主们致辞之后,介绍就正式开始了。Milind 今天的主要话题是 Hadoop 调优,面向 MapReduce 应用,实际上从08年底09年初的某项目之后一年半多的时间里,我的重点都不在调优上,所以今天的话题不是很在行,基本就是来学习一下,不准备吭声了,话题里,有这么几个点还是值得一说的,时间顺序:

  • Milind 的工作是做 Job 无关的调优,或者说 Job 的实现是个黑箱,主要根据系统运行参数进行调优,通过配置,使应用相对于基线效率有较大提升;
  • 首先是 Map/Reduce 的数量和性能优化的关系,Map 任务越多,并行度就越高,但调度开销也越高,这是需要 trade-off 的;而 Reduce 则要有所保留,不要占满所有能力,为重复执行留出一部分能力空余来;
  • 然后是内存分配方面,通过设置buffer,(Map 端的 io.sort.mb 和 Reduce 端的几个参数)尽量降低本地磁盘读写;
  • 还有使用 combiner ,通过 map 端的提前聚合,降低 map 与 reduce 任务间的通信量;
  • 当然还有使用压缩,减少通信,节约磁盘开销。
  • 此外,还在最后总结时提到了 DistributedCache 的使用。

讲座中,还介绍了一个 hadoop 诊断工具 vaidya。

这里是一张照片,嗯,是内容的最后一页,总结一些经验的

csdntup

这是我今天拍的唯一一张能看得到字的,不是因为我坐的太远,是因为……我的手机相机一直工作在微距的状态……FML,调回自动状态,并擦了擦镜头后,终于拍到一张能看到字的……

在完成之后的提问环节,比较引起我关注的是关于 scheduler 的问题,毕竟同事小郭也做了这方面的工作,Yahoo 在使用的是 Capacity Scheduler,用于给不同的用户分配处理能力,这方面我们可能有参考或经验,不过要回去请教小郭才知道。

此外,又有人提到 NameNode 的 SPoF 问题了,这次 Milind 十分慷慨地介绍说中国移动也有哥们搞这个,我就接过话题说了一下我们当前的状态和下一步考虑一起共建 trunk 中的 HA 的考虑。这个问题上,我想我低估需求了,虽然技术上实际上问题的严重性并不高,但人们的心魔难祛,这个功能实际的需求(包括心理需求)是很强烈的,我应该在上面再花点精力努力一下。

也正因为这下曝光了我的垄断国企雇员身份,引来无数目光,嗯,我干的确实还不够好,有点对不起大家的话费了。

往外走的时候,刘江老师建议我们写写我们的Hadoop方面的工作,呵呵,真是有些惭愧,担心拿不出手啊。在门口还和优酷、Yahoo中国的朋友交流了半天,快10点才出门,觉得今天不仅收获到了些知识,还增加了很多动力。

回想一下这几天参见的 HIC2010 和 TUP,我先后向 Facebook、Yahoo 和国内同行朋友们介绍了我们在 NameNode HA 和 DataNode 卷管理方面的工作,但这些工作在受到一定瞩目的同时还有很多不成熟的地方,我得抓紧时间、集中精力,作出更大贡献才对得起自己、对得起大家。希望我们的工作更多地出现在官方的代码仓库里。

中国移动研究院的Hadoop开发工作

September 5th, 2010

下面是我在 HIC2010 大会的幻灯片,相关内容欢迎进一步交流。

Hadoop in China 2010大会归来

September 4th, 2010

刚刚在最后的Panel开始之前提前撤出了 HIC2010 的会场,来篇新闻稿吧谢罪吧。

关于大会组织

这次 HIC2010 的会场选在了文津国际酒店,地理位置比去年的计算所更便利,组织者也花费了很大心思在布展上,但分会场的位置都不是很好找,标识也不够醒目,导致我、@acumon 和几个其他的讲演者在找自己的会场的时候都有点困难,呵呵。

这次来的公司里,多了EMC、VMWare这样的厂商,没有听VMWare的发言,也不知道他们到底是来做什么的,既然交了赞助费,应该不是来踢场子的。Hadoop主要参与者Yahoo和Facebook都来了很多人,Yahoo来了他们的VP,Facebook的华人团队更是差不多全来了,不过没看见上次见过的海荣有点遗憾。比较意外的是,Cloudera这次完全缺席,不知是主办方的问题还是Cloudera自己的问题,上次他们不仅有大佬来,还有培训。

对于演讲的topic,没什么可挑剔的,大家都很务实,介绍了自己的工作,不过每个topic的时间限制太短了,大部分讲演者都不自觉地超时了,我的讲演拖了大概十分钟,@acumon 同学的也差不多这个情况,差不多每个分会场都是如此,我觉得每个topic安排40分钟可能更合理一些。

关于交流

交流时此次来的主要目的,有些人是久仰大名的,比如 @turingbook 老师,有些是来之前知道也会前来的同行,比如 @acumon,有些是原来工作中有过交流但素未谋面的,比如Facebook的邵征和Intel的Jason Dai,这次都见到真身而且搭上讪了,非常兴奋。

因为时间关系,没有听到 Facebook 的Scott Chen的讲演,本来非常遗憾,不过快出门时看到Facebook一干大神正在门口聊天,赶快上来搭讪,和Scott Chen就HDFS进行了一些交流。同时还和另外几位百度的同学相谈甚欢,收货不少。

今天最大的收获差不多是向很多人,包括facebook的邵征和Scott Chen推出了我的最近的工作:DataNode 在线磁盘更换功能,他们也非常有兴趣,我得抓紧时间把这个patch附到JIRA上去了。

此外,今天着重还听了一下IBM CRL的邱杰的工作,因为和我的一些工作有很强的相关性,不过因为他下课后没直接出来,没有搭上讪算是唯一的遗憾了吧,争取以后有机会联系一下。

后记

最后,感觉还是北京有相当几个真做Hadoop的同学的,至少我们、百度、IBM都有,阿里巴巴、腾讯似乎也有,今天没见到,应该搞些小规模的真正的开发者的民间聚会了,就像linuxfb一样。开源技术交流非常有趣,非公司之间、非竞争性、非盈利性,纯粹的个体间技术交流,互相促进、共同繁荣。

嗯,先这些吧。

8月云计算相关开源新闻

August 28th, 2010

Hadoop 0.21 发布

http://hadoop.apache.org/common/docs/r0.21.0/releasenotes.html
8 月23日,Hadoop 0.21发布,距离上一个版本0.20的发布已经过去了16个月,而之前两个版本,从0.18到0.20也仅仅用了一半的时间,8个月。这个千呼万唤始出来的版本是Hadoop发展历史上的一个重要里程碑,但是,很可能将成为一个过渡版本,而不会被广泛使用。

Hadoop 0.21有一个代码结构上的大调整,HDFS和MapReduce分离成了两个独立的子项目,而公共部分,如 RPC 和一些辅助工具则由 Common 子项目来完成,这一拆分是造成发布姗姗来迟的主要原因之一。这一版本在功能上的新特征包括:支持Backup Node来改善NameNode的单点问题,扩大了新MapReduce API的支持范围,提供了新的 FileContext API等,同时对测试框架进行了改进,引入了新的自动测试框架Herriot。

尽管从结构上和开发框架上有了很多调整,但从功能看,Hadoop 0.21.0 实际上只是 0.20.2+,在接口上保持了和 0.20.2 的兼容性,新增加的功能或者比较有限,或者还在完善中,很重要的安全方面的功能 Kerberos 的支持也要到 0.22 才会提供,因此,包括 Yahoo 在内的很多重要用户都表示很可能会跳过 0.21 而在 0.22 成熟时直接演进到 0.22,0.21 的前途尚不明朗,它很可能只是 0.22 前进路上的一个重要的铺路石。

Cassandra 0.7.0-beta1和0.6.5发布

https://svn.apache.org/repos/asf/cassandra/tags/cassandra-0.7.0-beta1/NEWS.txt
开源分布式非关系型数据库NoSQL一直在我们的视野之中,自从成为Apache项目以来,发展十分迅速,当然也经历了一些波折,面对着一些质疑,此次 0.7.0 beta的发布,使他再次出现在我们的视野之中,0.7中,行的尺寸从2GB提升到了20亿列,同时增加了输出到Hadoop的输出格式,便于两者的互动,此外,还在功能和性能上进行了很多其他改进。

OpenStack 社区迅速成长

http://openstack.org/blog/2010/08/openstack-community-update/
如果说上半年的明星项目是Cassandra的话,迄今为止,下半年的明星项目当属RackSpace和NASA在7月联合发布的OpenStack,一个多月来,这个项目一直留在我们的视野当中,并于8月25日举行了一次聚会。目前,OpenStack的计算部分(Nova)支持了KVM、Xen和 VirtualBox三种虚拟机,而存储部分则开始进行对象存储系统swift的开发。这些具体的工作让 OpenStack 开始逐步走向现实。

中国移动大云非官方广告桌面

August 13th, 2010

昨天晚上跟风PS的,嗯,凡客的广告影响很大啊,呵呵

love_big_cloud

呵呵,参考凡客的那个韩寒的广告,灵感是受到酷壳的启发,这个BIGCLOUD的针织马甲还不错吧,哈哈。

6月云计算相关开源新闻

June 27th, 2010

本月的最主要新闻来自Hadoop社区,世界杯正在南非举行,而Hadoop世界的最大的聚会则是每年6月在硅谷举办的Hadoop Summit,今年的 Hadoop Summit 会在 6月29日在圣克拉拉举办,继续了去年的盛况。此外IaaS相关开源社区也很活跃。

1. Hadoop Summit 2010将于6月29日举行
http://developer.yahoo.com/events/hadoopsummit2010/

MapReduce模式大规模并行处理的事实标准 Hadoop 项目拥有庞大的用户社区,在世界各地会召开不同规模的社区聚会或会议,一年一度的在硅谷召开的Hadoop Summit是其中最为重要的会议,会议由Hadoop的发起者Yahoo公司举办,全球的 Hadoop 开发者、研究者和用户会参加会议的开发、研究和应用三个主题的研讨,包括Yahoo、Amazon、Cloudera、Facebook在内的云计算领先者都会进行主题发言。

目前,Hadoop的线下活动已经有Hadoop Summit, Hadoop World这样的全球峰会、HUG Meetup这样的小规模技术讨论,以及中国、印度等地的区域性大会,线下活动的丰富是社区成熟的产物,同时也帮助社区更进一步的健康发展。

2. CloudEra与Quest合作开发Hadoop Oracle Connector

http://news.cnet.com/8301-13846_3-20008242-62.html

仍然是一条Hadoop相关新闻,CloudEra宣布,要和Quest Software合作为Hadoop开发一个Oracle Connector,以便进行 Hadoop 和 Oracle 的双向数据通信。

Cloudera 之前已经开发了一个数据库导入工具 squoop,而这次的 Oracle 导入/导出工具更进一步针对了 Oracle 广泛应用的企业IT系统。

3. C12G 发布 OpenNebula 1.4 指南(PDF版)

http://www.c12g.com/blog:2010-06-21-c12g_releases_opennebula_1.4_pdf_guides_-_june_21_2010

OpenNebula 是当前的一个比较著名的开源 IaaS 系统(另一个是Eucalyptus),今年3月,项目的创立者们成立了一家名为C12G的公司,开始商业化地运营。在OpenNebula上个月推出 1.4 企业版和简化版后,这个月C12G发布了1.4版的手册,这个公司正在逐渐开始运转,推动OpenNebula更加成熟。

商业化和开源从来都不矛盾,获得良好商业模式的支持会使得开源软件和社区更具有生命力,MySQL就是个不错的例子,不过,开源软件的生命力在于健康的社区,如果不能营造一个健康开放的社区,开源项目和商业公司可能面临双输的结局,这样的例子也比比皆是。现在对C12G进行判断还为时尚早,期待C12G和OpenNebula共同繁荣。

4. Eucalyptus发布伙伴计划,推进云计算产业链丰富与完善

http://www.crn.com/software/225701187;jsessionid=PDVDQFSBBPVG5QE1GHOSKH4ATMY32JVN

另一家开源IaaS厂商Eucalyptus也不甘寂寞,他们开始了一个合作伙伴计划,向系统集成商、零售商、服务提供商以及平台厂商推广云计算。这项计划的核心是一个“Eucalyptus合作伙伴云”,让伙伴们可以在这里开发、测试他们的解决方案。Eucalyptus期望可以通过这种方式可以构建一个以自己为中心的、繁荣的云计算生态环境。

Switch to our mobile site