阿里云飞天系统的技术架构(转)

阿里云有以下五大优势:中国万网,提供虚拟主机托管的服务,而且还提供域名等服务,其客户群非常庞大。淘宝、阿里巴巴(内部称:B2B)、支付宝等其他子公司:有大量的数据分析业务,需要消耗大量的服务器资源,电力,机房设施。阿里巴巴集团:已经购买了多条大带宽的专线,并且形成多网互联和加速的能力,并且有能力自己建设机房等方面的能力。阿里系公司技术积累:吸收雅虎的技术,尤其经过将近4-5年的努力,吸收了行业内一大批技术实力和经验都非常丰富的人才。阿里巴巴拥有的现金非常充裕。

飞天系统的技术架构图:

在众神尚未存在之前,神界是被黑暗笼罩的无边无际的一片混沌。主神的灵力运行其中,施造化之功,令众神齐备……

(一)  第一日:主神说要有光,于是便有了夸父
夸父

a)         网络通信模块
b)        连接千万台主机,主宰众神之间的沟通

夸父的目标
a)         可靠,高效,实用,简单

辛巴的力量
a)        共享连接降低系统资源消耗
b)        共享智慧诠释团队无边力量

夸父技术架构图:

(二)  第二日:主神说神要有名字,造女娲为众神命名
女娲

a)         终极的可靠中心
b)        提供名字服务,识别众神

女娲的目标
a)         可靠性
b)        还是可靠,不可靠众神会乱套

女娲技术架构图:

(三)  第三日:主神说神要懂文化,要说仓颉语
仓颉

a)         统一的消息格式,序列化/反序列化时使用
b)        众神之间沟通的语言

仓颉的目标
a)        兼容
b)        高效
c)        易用

(四)  第四日:主神造伏羲以规范神界
伏羲

a)         管理计算资源,调度Service和Job
b)        提供编程接口

伏羲的目标
a)        易用性:编写分布式程序很简单
b)        可扩展:完善的容错机制
c)         可共享:支持多Service和Job,支持Quota和Billing

伏羲技术架构图:


(五) 第五日:主神说盘古很靠谱,可以管地皮
盘古

a)         管理存储资源,支持无结构数据存储
b)        保证数据的正确、可靠

设计目标
a)         可靠性:硬盘或机器坏时数据仍正确可用
b)        可扩展:增加机器即可增加存储空间和系统吞吐量
c)         多用户共享:提供访问控制、配额管理和资源统计

非设计目标
a)        盘古不为大量的小文件存储做优化
b)        盘古不直接支持结构化数据的存储和访问
c)         盘古不支持擦写操作

盘古系统技术架构图:

盘古技术架构图:

(六) 第六日:主神说有巢很前卫,弄弄房地产
有巢的一些特性:

a)         有巢是伏羲的Service
b)        有巢基于盘古
c)         有巢为结构化数据优化,支持小文件,支持擦写
d)        有巢支持自动的数据片分裂

有巢的典型应用:
a)         KV Engine   —- 图片存储
b)        SQL Engine  —- 网站数据库、BI分析
c)         SI Engine    —- 文本搜索

有巢技术架构图:
(七) 第七日:主神说有个大病小灾的要找神农
神农

a)        素问:收集众神信息,异常情况报警
b)        灵枢:异常情况预警,自动故障预防/处理

神农的目标
a)        低系统影响
b)        易扩展
c)         高智能

功曹、公明、钟馗、愚公技术架构图:

穿越而来的后羿
后羿:

a)        通过虚拟技术共享计算资源
b)        单机应用在云平台运行

后羿系统技术架构图:

后羿技术架构图:


  • (本文出自计算科学思想家,转载时请注明出处)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/352625.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Jenkins 流水线 获取git 分支列表_基于Jenkins的DevOps流水线实践

讲师介绍课程寄语我认为Jenkins是对我这些年运维经验的总结,起初我们运维同学都是编写脚本完成一些自动化的操作。而有了Jenkins我们可以将我们的运维经验与Jenkins设计理念融合完成自动化运维平台。全程最佳实践,Pipeline as Code,打通DevOp…

Java微服务:蛋糕是骗人的,但您不能忽略它

构建微服务实际上意味着什么? 通过微服务框架的眼光回答 忽略微服务的趋势已变得不可能。 有些人会说这只是另一个难以忍受的流行语,而另一些人会背诵打破巨石的优势或采取逆势方法并关注负面因素。 在本文中,我们将深入了解我们拥有的框架…

隐马尔科夫模型C#类库调用示例

[c-sharp] view plaincopyprint?using System; using Splash; namespace SplashCheck { class TestHMMCS { enum Weather { Sunny, Cloudy, Rainy }; // 隐藏状态(天气) enum Seaweed { Dry, Dryish, Damp, Soggy }…

芯片,开源,数学,计算机

近代数学好像没什么数学定理是中国人命名的,有也是凤毛麟角是广泛意义上的华人命名的。开源Linux内核好像也没有几行代码是中国人贡献的,通用CPU芯片美帝的,计算机美帝发明的,内存/硬盘/显示器,三星台湾造。20年前我大…

C#之继承

本文意在巩固基础知识,并不是对其进行深入剖析,如若对各位高手没有什么作用,请绕过。本文为原创文,所有示例均是博主测试过的,欢迎大家批评指正,如有转载请标明出处,谢谢。继承、封装和多态是面…

python的requests模块功能_python中requests模块的使用方法

本文实例讲述了python中requests模块的使用方法。分享给大家供大家参考。具体分析如下: 在HTTP相关处理中使用python是不必要的麻烦,这包括urllib2模块以巨大的复杂性代价获取综合性的功能。相比于urllib2,Kenneth Reitz的Requests模块更能简约的支持完整…

ODPS技术架构及应用实践

《程序员》杂志2014年10月刊《凌云》云计算大数据阿里云ODPShadoop摘要:ODPS是分布式的海量数据处理平台,提供了丰富的数据处理功能和灵活的编程框架。本文从ODPS面临的挑战、技术架构、Hadoop迁移到ODPS、应用实践注意点等方面带领我们初步了解了ODPS的…

ssh,scp带密码操作

1、远程执行,带密码参数 sshpass 安装命令: yum install sshpass 执行命令: sshpass -p "mima" ssh rootlocalhost --------参数小写p,密码mima 2、非22端口 ssh -p 9062 111.111.111…

junit 测试 dao_JUnit测试Spring Service和DAO(带有内存数据库)

junit 测试 dao这篇文章描述了如何为Spring Web Application的Services和DAO实现JUnit测试。 它建立在Spring MVC-Service-DAO-Persistence Architecture Example的基础上 。 从Github的Spring-Web-JPA-Testing目录中可以找到该示例。 提醒 测试装置 –固定状态,用…

C++判断文件夹是否存在

判断文件夹是否存在一、判断文件夹是否存在: 1.用CreateDirectory(".//FileManege",NULL);如果文件夹FileManege不存在,则创建。 2.或者if(_access(".//FileManege",0)-1),表示FileManege不存在。 3.或者…

ODPS MR开发 WordCount

参考: ODPS初始篇--客户端配置和使用:http://blog.itpub.net/26613085/viewspace-1327313/ odps dship客户端使用:http://blog.itpub.net/26613085/viewspace-1328434/ 有了上面两篇文章,就可以使用ODPS的客户端;使用O…

跨域设置

# 参考: https://blog.csdn.net/linzi1994/article/details/82724429 https://www.cnblogs.com/ShaunChen/p/5998800.html# 配置详解: # 跨域设置 CORS_ORIGIN_ALLOW_ALL True # 允许所有域名 CORS_ALLOW_CREDENTIALS True # 允许获取cookie CORS_UR…

kdb q介绍

Q起源Kx systems公司的创始人之一Arthur Whitney在2003年研发了列式数据库KDB和它的操作语言q。q也可以写成Q。设计之初,q语言要做到简洁,高效和富表达性。 q的起源受到多种语言的启示。包括APL、LISP和函数式编程。 APL是一个向量语言,所以…

mysql多大_洞悉MySQL底层架构:游走在缓冲与磁盘之间

提起MySQL,其实网上已经有一大把教程了,为什么我还要写这篇文章呢,大概是因为网上很多网站都是比较零散,而且描述不够直观,不能系统对MySQL相关知识有一个系统的学习,导致不能形成知识体系。为此我撰写了这…

odps新手上路之安装Eclipse开发环境

只看楼主更多操作楼主 发表于: 2014-11-07—本帖被 亮伟 执行取消精华操作(2014-11-27)—准备工作:登录阿里云官网,开通odps服务。创建一个odps的project。安装odps的客户端,具体的方法见 传送门下载Eclipse并解压缩。建议到官网上下载。作…

mfc对话框在不同计算机上显示不全

出现MFC对话框在不同计算机上显示不全的或者显示大小不一样的活可以调整电脑的分辨率也可以在创建对话框时根据分辨率来调整控件。

c++二进制转十进制_二进制,八进制,十进制,十六进制转换详解~

点 击 上 方 蓝 字 关 注 我 们 哦 ^-^本文思维导图:1.数制:用一组固定的数字和一套统一的规则来表示数目的方法称为数制。进位计数制的要素:①、数码:用来表示进制数的元素。二进制:0,1。八进制:0,1,2,3,4…

复习第三章多态

第三章 多态 本章需要掌握的东西 掌握多态的优势和应用场合答:多态的优势可以减少代码量,更加清晰明了。,应用场合为,一个事物需要做多种事情的时候需要用到多态。 2.掌握父类和子类之间的类型转换 答:父类引用转向子…

java堆 数据结构 堆_Java中的紧凑堆外结构/组合

java堆 数据结构 堆在上一篇文章中,我详细介绍了代码对主内存的访问方式的含义。 从那时起,我就在Java中可以做什么以实现更可预测的内存布局提出了很多疑问。 有些模式可以使用数组支持的结构来应用,我将在另一篇文章中讨论。 这篇文章将探讨…

Unix环境高级编程学习笔记(七) 多线程

线程概述 线程(thread)技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80年代中期,solaris是这方面的佼佼者。传统的Unix也支持线程的概念,但是在一个进程(process)中只…