对象存储作为云计算的数据存储基石,实现了计算逻辑的存储卸载,自身就可以提供数据的存储和访问服务。本书权威详解了对象存储的历史由来(从块存储到文件存储,再到对象存储);存储技术架构(存储区域网络架构、网络附加存储架构、对象存储架构,以及公共云对象存储服务实现架构);对象存储的技术细节(协调和复制、命名和同步、容错和数据完整性、元数据索引设计);对象存储的操作和使用(快速上手、迁移数据到对象存储、安全与合规、数据保护、应用与实践);对象存储的未来展望(数据湖存储、混合云存储、移动网络5G存储、人工智能存储、存储新技术趋势)。
本书适合云计算开发、使用和运维人员,或作为资深技术专家全面分析对象存储的参考书,还适合信息管理专业技术人员、IT经理人等专业人士、技术专家、高校学生,以及更多愿意了解和投入存储事业的人们参考阅读。
国际资深存储技术大师专著|对象存储为海量数据存储、人工智能、大数据分析、云计算而生|本书详解对象存储的历史由来、技术细节、实战操作、未来展望
推荐序一
存储,在人类发展的漫长历史长河中,始终扮演着至关重要的角色。远古时代结绳记事中的“绳”是记录事件的载体,随着文字和图画的产生,记载甲骨文的龟壳和承载先人绘画的岩壁成为历史的印记。但是这些信息记录方式原始且效率低下,中国发明的造纸术和活字印刷术,让信息以书的形式得以大规模传播和保存,大大提高信息记录和传播的效率。
20世纪中叶,以电子计算机为代表的第三次科技革命,推动了信息技术急风骤雨般的演进,也激发了专业存储厂家的创新浪潮,从早期大型机的纸带存储到广泛使用的光盘存储、磁盘存储,从单机存储到分布式存储,从存储区域网络到网络共享存储,无一不见证着数据的爆炸式增长。
21世纪初,云计算技术风起云涌,从商业和技术上改变了企业的IT技术设施,掀开了信息科技发展的新篇章。云计算以其崭新的商业模式、按需付费的使用方式、弹性伸缩的扩展能力,迅速得到业界的广泛认可。
对象存储作为云计算的数据存储基石,是首批商业化的云存储服务。对象存储作为创新的云存储服务,它不同于存储区域网络和网络附加存储技术需要额外的服务器加载数据才能对外提供服务;对象存储实现了计算逻辑的存储卸载,自身就可以提供数据的存储和访问服务。用户只需要将网站的页面和图片存放到对象存储,客户端就可以直接通过对象存储提供的域名访问网站,从而提供一站式的网站托管服务,最终实现高效的信息访问。
对象存储支持互联网访问的公网地址和云计算访问的私网地址,因此,服务器、移动设备、物联网设备等均可访问对象存储。由于提供多类设备的广泛接入能力,必然要支持不同数据类型的存取,以及多种应用的灵活访问方式,从而让各类数据都能流入对象存储;并且对象存储因其安全、稳定、可靠、弹性的特性,天然就是海量数据存放的最佳选择。随着存储空间和对象数呈指数级增长,对象存储自然而然地成为数据湖。管理超大数据湖的容量空间,提供接近无限规模的对象数保存能力,保证多租户下数据的安全性和隔离性,实现不同热度数据的生命周期管理达到领先的性价比优势,也成为对象存储的本质特征和巨大挑战。
本书为阿里云内部核心技术人员所著,从分布式存储基础架构入手,结合技术原理和产品实践展开讨论,并从入门和使用维度深入介绍对象存储的应用实战。阿里云对象存储的产品验证和客户场景最佳实践,具有重大的参考意义和示范效应。
尽管云计算已发展十多年,但是与其相关的计算、存储、网络等技术还远未成熟,未来还有巨大的创新空间。希望未来的云能够跟随数字化转型深入各行各业,滋养越来越多的应用,进而促进全球信息技术的演进。
舒继武
清华大学教授
中国计算机学会信息存储技术专业委员会主任
2021年7月于北京
推荐序二
回顾过去一个世纪的技术变革,从19世纪末内燃机替代蒸汽机、20世纪初汽车替代马车、20世纪70年代电话替代电报,新旧技术的交替往往以拐点的形式出现,现在是云计算全面替代传统IT的拐点。云计算作为一项新兴技术,经历过去10年的发展,已经在关键技术和应用规模上实现对传统IT的全面超越,云、大数据、AIoT和移动化技术引领时代,“全面上云是时代必然”。
云计算是新一代的IT技术,也是数字化转型的新基础设施。数据本质上跟云计算有关系,但没有必然的关系,因为在没有云计算之前也有大数据处理。有了云计算平台后,大数据得以迅猛发展,怎样获取、存储、处理、应用数据,是一整套方法论,也要有一整套的工具。对象存储因云而生,是面向各种计算应用的存储资源池,提供弹性的服务化能力。
云计算本质就两件事:一是用分布式技术替代了集中化技术,取代了原有的小型机、大型机、集中式存储、集中式数据库等,这是互联网公司崛起带来的一个显著现象。分布式技术巨大地提升了运行效率,把IT设施更加统一化和一致化,被产品化之后就成了如今的云计算;二是云本身也发生了很大的变化,把所有计算资源整合成计算资源池,所有存储资源整合成存储资源池,通过数据在计算资源池和存储资源池之间流动产生价值。
企业全面上云,经过了基础设施上云、大数据上云、云上中台和云上智能四个阶段,对象存储随之也经历了安全性、稳定性、扩展性、智能化的发展过程。相比传统的计算机硬盘、固态盘、移动硬盘等只能提供有限的存储空间,对象存储为云计算提供网络访问的海量存储空间。基于对象存储构建的应用可以无须规划容量、随时随地访问、按需付费,大大降低了业务创新的数据存储门槛。
因其安全可靠、弹性扩展、性价比高等突出优势,对象存储成为多种类型数据备份等的不二选择。同时对象存储构建了丰富的计算分析平台技术生态,让各种数据都能方便地流入对象存储,从而对象存储成为数据湖存储的理想选择。“城市大脑”是阿里云数据智能的一个突破,对象存储通过高可靠、高性能支撑了海量图片和视频的存储,为数据智能技术提供7×24的服务保障,让城市变得更加聪明。2020年,新冠肺炎疫情期间,钉钉增加了1亿用户,浙江省有134多万公务员通过钉钉办公,阿里巴巴集团自身每天1500万条信息在平台上流动,背后就有对象存储在疫情早期实现1周内10倍扩容的关键技术,通过其扩展性支撑了钉钉业务的业务波峰。在奥运会期间,对象存储以高可用、智能化的视频存储能力,保障精彩的体育内容能够快速向全球推送,让世界更便捷地享受数字技术浪潮。
“数字经济之所以与过去的发展模式不同,是因为数据已成为新的生产要素。”未来,随着新型基础设施的普及,每一个城市、每一个工厂、每一条道路、每一个下水道都将实现数据化、智能化。
“稳定安全高性能、普惠智能新存储”是阿里云存储的理念,不断优化服务质量、降低使用成本、提高客户易用性,让数据存取随处可得。
本书通过最佳实践介绍如何更好地配置和使用对象存储,有助于读者了解对象存储并对数字时代创新有更加深入的认识。
张建锋(行癫)
阿里云智能总裁
2021年7月于杭州
推荐序三
互联网业务的发展,推动着互联网技术的发展,后者对底层技术的需求也改变着以往底层技术的形态。无论技术形态如何变化,只要抓住互联网的技术本质,就可以看清技术的发展方向。
我认为,互联网技术有两个本质:一是“极低的成本要求”,因为业务发展的不确定性及算力代替人力的大方向,必然会采用基于廉价、普惠硬件的技术路线;二是“极高的吞吐要求”,那么只能是分布式技术,因为单机提供的算力和存储都是有限的。
要实现这两个要求,除技术创新外,往往要考虑分布式带来的两大挑战:一是运维复杂度问题;二是稳定性问题,这些都是非常关键的课题。本书不仅从使用哪种技术的角度,告诉大家如何更好地选择存储系统,更重要的是从存储技术的发展、架构方式上给出了两个本质和两个挑战的思路。
阿里云的产品是基于飞天操作系统进行建设的,而飞天操作系统是由三大关键技术组成的,分别是代表计算的神龙架构、代表虚拟网络的洛神架构,以及代表存储的盘古架构。阿里存储从早期的TFS演化到今,经受了大规模业务的考验,已经是世界上最为成熟的产品之一。本书介绍的对象存储基于盘古存储引擎实现,后者和存储产品相结合以进行研发演进。
盘古架构为大量的存储产品提供了底层的架构支撑,这种架构设计为存储产品线的快速创新提供了可能,除对象存储外,如数据库使用的DBFS,使得分布式架构的数据库存储和计算进行了分离,分布式数据库也实现了资源预估的灵活性,计算资源和存储资源可以按需扩展。当然类似的存储产品还非常多,在阿里云官网上,我们可以看到数十种存储产品,随着客户需求的迭代发展,新的存储产品会不断诞生。
阿里云的研发体系,正经历一个从研发到研究的历史性进程。对象存储的技术研究不局限于某一种实现,更希望为产业带来系统化的提升和思考。
蒋江伟(小邪)
阿里云高级研究员
2021年7月于杭州
推荐序四
存储领域一直围绕着高可靠、高可用、高扩展、低成本和高性能而不断发展。随着互联网应用的蓬勃发展和企业数字化的转型,数据迎来爆炸式增长,2020年全球产生的数据预估是59ZB,2025年预计达到175ZB。一方面,数据的形态多样化,尤其是非结构化数据(如文本、图片、音频和视频的数据)的增长速度更快,2025年占比将达到80%。另一方面,数据是新的“石油”,基于数据的智能分析和智能决策成为数字经济的新常态。尽管产生了大量的数据,但是只有大约10%的数据被存储下来,大约只有5%的数据被分析过,低成本、易管理、易分析的存储需求驱动了对象存储的产生和发展。
对象存储提供简单易扩展的名字空间,它通过RESTful接口提供了在任何时间、任何地点、任何互联网设备上进行上传和下载数据的能力。通过分布式存储技术的加持,跨数据中心和跨地域的容错能力,对象存储具备低成本、高可靠和易扩展的优势。对象存储在合规性、安全性、管理、生态、数据湖等领域不断发展,满足业务的需求,促进业务的创新。随着云计算的发展,对象存储已成为事实标准的云存储。
存储的基本要求是数据不丢不错,随时可以访问。这些看似简单的要求在数据中心规模和互联网访问规模下对技术带来极大的挑战。本书结合阿里云十几年在分布式存储领域和对象存储领域的研发实践,理论结合实践阐述了对象存储领域的关键技术,深入地分析和总结了阿里云存储的实践和创新,希望能帮助读者更加深入地了解分布式存储的核心技术,更好地认识对象存储的技术挑战及其在阿里云实践过程中的经验和教训,从而更高效地用好云存储,更快更好地借助云计算进行业务创新。
吴结生
阿里云高级研究员
2021年7月于西雅图
推荐序五
欣欣然,见本书付梓。
履职阿里云以来,我一直以推动云计算相关的技术专著出版为己任,一是因为市面上的技术图书大部分都与计算相关,鲜有云计算的元素和内容;二是我对技术生态情有独钟,我认为科技企业的成功,首先是生态的成功,而高质量的技术图书是建立生态的有效途径。
2020年7月初,庆超和我说想写一本与对象存储相关的书。考虑到工作繁忙,技术图书一般会由多个作者共同完成,我提出是否给庆超找几个合著者,庆超婉言谢绝了,他信心满满地说:“我有足够多的资料和想法,人多了写作进度可能会更慢。”几天后,看到他拿出的图书大纲,我对本书的质量有了充分的信心。
庆超是我的好朋友,也是国内存储领域的资深技术专家,他拥有十多年的技术研发经验,至今还带领着对象存储团队战斗在技术研发一线。今天看到的这本书,无论从行文还是思想上都有着单一作者带来的高度连贯性。无论从思想理论还是生产实践的角度来看,本书无疑都具备了极高的阅读价值!
我对本书的评价是两个字:严谨,本书兼具教科书的架构感和工具书的实用性。虽然对象存储不是云计算特有的,但是阿里云的对象存储是服务云计算的,是因云而生的新技术和产品。本书给大家展示的是数千PB数据下的大规模实践。
特别希望本书成为一次成功的技术“布道”,将对象存储的知识以“大道至简”的结构化方式奉献给产业,为中国正在从事或者有志于投身云计算产业的朋友们架起一座通向未来的彩虹之桥。
陈绪 阿里云技术战略总监
2021年7月于杭州
前言
随着21世纪初云计算的诞生,对象存储服务始终作为云计算的数据存储基石,并随着行业需求不断演进发展。最初,对象存储服务通过静态网站托管功能为企业提供网站服务,通过创建对象存储服务的存储空间就可以生成网站域名,上传网页文件、图片到存储空间后即可实现网站的访问。在移动网络升级到4G后,由于对象存储服务能够提供互联网访问,短视频天然选择通过对象存储服务实现大规模的数据分发,而对象存储服务的海量数据扩展能力、BGP和静态网络管理能力、防攻击能力成为核心竞争力。
对象存储服务数据量的极速增加,不断要求服务提高可靠性、可用性和强大的数据管理能力,从而对象存储服务成为数据湖存储的理想选择,大量的数据湖分析应用基于它构建,也打造了更强的多租户隔离、细粒度权限能力。由于对象存储服务基于互联网的HTTP/HTTPs访问能力是架构设计的关键,从而也形成互联网的全球扩展能力,伴随着更多的行业相关企业上云,对象存储服务将会持续发展、进一步壮大。
存储技术的发展历史,见证着存储规模的壮大过程。从计算机产生开始,纸带就作为存储介质,业界为了提高存储效率发明了硬盘,并且将机械硬盘扩展到固态硬盘;尽管硬盘的容量和性能持续提升,但它通常只能连接到单台计算机,一旦该计算机出现故障就无法提供存储服务,因此其可靠性和存储容量有限(机械硬盘典型容量为10TB级)。
为了解决该问题,存储区域网络技术通过外置的存储阵列为计算机提供存储空间,存储阵列采用集中式架构,使用两个控制器提供高可靠能力并通过管理多块硬盘提供更大的存储容量;由于存储区域网络只能提供线性的存储空间,应用还需在存储空间上格式化文件系统来支持文件的访问,为了让多台计算机方便地访问共享文件系统,业界发明了网络附加存储,它采用类似存储阵列的集中式架构并把文件系统能力卸载到存储侧,提高了存储易用性。
尽管集中式架构提高了扩展性,但通常也只能满足PB级存储需求,为了支持互联网EB级存储规模,需要采用分布式架构的对象存储服务,通过分布式领域的技术实现全球级扩展能力。
为了实现对象存储服务的全球扩展性,采用分布式架构中的DNS域名解析技术,通过分级域名体系来管理对象存储服务的存储空间,在不同地域的各个存储空间拥有不同的域,从而灵活地支撑对象存储服务的静态网站托管功能。由于对象存储服务要支持EB级存储,大规模系统在异常场景时需要分布式架构中的协调技术来提供仲裁功能,从而支撑分布式软件对异常达成共识,便于对象存储服务正确地恢复工作。
为了达成高可靠,对象存储服务在硬盘故障、服务器故障、机柜故障、数据中心故障、可用区故障、地域故障时需要采用分布式架构中的复制、容错技术来实现数据冗余功能,保证数据不丢失。
为了达成高可用,对象存储服务发现各种故障时需要采用分布式架构中的数据保护功能,保证能够持续提供数据访问能力。因此,对象存储服务的理论基础是建立在分布式技术原理之上的,掌握好分布式技术原理的知识点可以更好地理解对象存储服务。
本书从分布式存储基础架构入手,结合技术原理和产品实践展开讨论,并从入门和使用维度深入介绍对象存储服务的应用实战。全书分为三篇:
第一篇,基础与原理,从存储技术发展历史切入,讲解块存储、文件存储、对象存储的技术原理、特性及应用场景,从而引出对象存储是卸载计算能力的高级形态,并且从公共云对象存储服务的角度重点阐述在安全性、高可靠、高可用、扩展性、性价比方面的关键功能,然后围绕针对实现这些核心功能的“协调、复制、命名、同步、容错、数据完整性、元数据索引”等分布式原理展开讲解,并对理论结合业界对象存储实现进行分析,从而在掌握好理论前提基础下能够恰当应用到实际产品设计开发中。
第二篇,操作和使用,以阿里云对象存储服务OSS为实验平台,介绍公共云对象存储服务的快速上手、迁移数据到对象存储、安全与合规、数据保护、应用与实践,从而让读者能够从实战的维度正确配置对象存储,为企业应用业务保驾护航。
第三篇,总结与展望,介绍数据湖、混合云对存储的需求,讨论移动网络5G、人工智能对存储的影响,分析硬盘、固态硬盘、内存对存储演进带来的变化,从而从技术原理、操作使用、趋势分析角度,让读者在对象存储领域有全面的认识和理解。
本书提到的业务需求痛点、存储发展历史、技术原理细节来自业界客户的反馈、行业专家的观点、高校学者的讨论,正是这些来自不同领域的不同观点和碰撞促进了笔者的思考,在此对他们深表感谢。同时,感谢所有陪伴阿里云对象存储OSS成长的用户和开发者,正是你们对产品的深入使用、持续反馈,才让OSS逐步走向成熟,在安全性、高可靠、高可用、扩展性、性价比等维度构建了竞争力。同时,也感谢阿里云基础产品团队、存储团队、对象存储同事的长期拼搏奋斗,正是你们在DevOps的开发运维机制下,不断追求卓越的辛苦付出才成就了本书。
罗庆超
阿里云对象存储负责人 资深技术专家
2021年7月于杭州