云存储技术体系

本文涉及的产品
传统型负载均衡 CLB,每月750个小时 15LCU
网络型负载均衡 NLB,每月750个小时 15LCU
EMR Serverless StarRocks,5000CU*H 48000GB*H
简介: 云存储涉及的知识面很广,既涉及云存储服务端的技术,又涉及终端设备应用开发相关的技术。本文章关注云存储系统服务端技术。 云存储技术体系结构分为四层:硬件层、单机存储层、分布式存储层、存储访问层,下面分别介绍。

云存储涉及的知识面很广,既涉及云存储服务端的技术,又涉及终端设备应用开发相关的技术。本文章关注云存储系统服务端技术。

云存储技术体系结构分为四层:硬件层、单机存储层、分布式存储层、存储访问层,下面分别介绍。

硬件层

硬件层包括存储、网络以及CPU。在存储方面,除了传统的SAS或者SATA磁盘,SSD技术发展迅猛;在网络方面,千兆网卡已经普及,万兆网卡离我们越来越近,Google这样的互联网巨头已经开始会试通过软件自定义交换机;在CPU层面,IntelX86架构成为主流,低功耗逐步成为研究热点。为了降低成本和能耗,云存储服务提供商往往会定制服务器,甚至自建数据中心,需要考虑电源、冷却、PUE(Power Usage Eficiency,能源使用效率)等各种问题。

主机存储层

云存储系统的底层大多为定制的Linux操作系统,服务提供商需要在文件系统、网络协议以及CPU和内存使用上对Linux系统进行大量的定制化工作。单机存储系统大致分为两类:传统的关系数据库以及NoSQL存储系统。关系数据库支持二维的关系模式,并提供关系数据库查询语言SQL,支持事务,索引等操作,使用比较方便。

NoSQL存储系统则百花齐故,常见的NoSQL系统包括仅支持根据主键进行CRUD(Create,Read,Update,Delete)操作的键值(Key-Value)存储系统,也有基于传统的B树或者LSM树(Log-Structured Merge Tree)的存储系统。

分布式存储层

分布式存储层是云存储技术的核心,也是最难实现的部分。分布式存储系统需要能够将数据均匀地分散到多个存储节点上,另外,为了保证高可靠性和高可用性,需要将数据复制到多个存储节点并保证一致性。当存储节点出现故障时,需要能够自动检测到节点故障并将服务迁移到其他正常工作的节点。分布式存储层依赖一些基础服务,常见的包括分布式锁服务(例如Google Chubby系统),以及集群资源管理服务(例如Google Borg系统)。另外,分布式存储层包含分布式缓存以及服务总线,分布式缓存用于提高访问性能,服务总线用于云平台应用逻辑解耦。云存储系统既存储无结构化数据,又存储半结构化以及结构化数据,分别对应分布式文件系统、分布式表格系统以及分布式数器库,面CDN以及P2P技术将云存储系统中的热点数据缓存到离用户较近的边缘节点或者临近的其他用户的客户端,从而起到访问加速的作用,并且节省云存储服务提供商的网络带宽成本。

存储访问层

云存储系统通过存储访问层被个人用户的终端设备直接访问,或者被云存储平台中托管的应用程序访问。云存储访问层的功能包括:Web服务、负载均衡、安全服务以及计费。云存储系统对外提供统一的访问接口,常见的接口是REST或者SOAP这样的Web服务,需要通过Apache或者Nginx这样的Web服务器进行协议转化,Web服务器端经常使用LVS(Linux Vitual Server)、HaProxy这样的软件或者专业的负载均衡设备(如F5负载均衡器)进行负载均衡。存储访问层需要提供安全和计费服务、安全服务包括身份认证、访问授权、综合防护、安全审计、Ddos攻击预防/防火墙等。

用户的应用程序可能会托管在应用运行平台中,应用场景大致分为三类:

  • 弹性计算平台。典型的弹性计算平台为Amazon EC2以及Microsoft的各种虚拟机实例,底层涉及的技术包括虚拟机、自动伸缩。弹性计算平台通过虚拟机自身的机制来保证云安全,比如虚拟机安全隔离、虚拟机防火墙。基于虚拟机的弹性计算平台的优势在于兼容性,支持各种编程语言和平台。
  • 云引擎。典型的云引擎为Google AppEngine,底层设计的涉及的技术主要是应用容器(比如Java Tomcat、Jetty,Python Runtime)以及应用容器自动伸缩。当应用的负载过高时,自动增加应用的运行容器数;反之,自动减少应用的运行容器数。云引擎通过应用容器的沙箱机制来保证安全性,AppEngine的沙箱环境通过限制每个请求的执行时间来防止多租户之间干扰,另外,限制应用程序对网络、文件进行一些危险操作。云引擎与云存储服务提供商结合较好,但是对于每种不同的编程语言都需要定制相应的应用容器,对编程语言和平台支持比较有限。
  • 分布式计算。云平台往往会支持分布式计算,通过后台的计算实例执行耗时较长的计算任务。MapReduce是最为常见的分布式计算模型,云平台一般都支持开源的Hadoop MapReduce计算框架。除了MapReduce之外,还有很多针对特定应用场景的计算模型,例如MPI(Message Passing Interface)、BSP(Bulk Synchronous Parallel)等。
目录
相关文章
|
4月前
|
人工智能 运维 监控
现代云平台技术及其应用
在当今数字化时代,云平台技术正日益成为企业转型和创新的关键。本文将探讨现代云平台的定义、架构特点及其在不同行业中的应用案例,旨在帮助读者深入了解并有效应用这一技术。 【7月更文挑战第9天】
165 2
|
2月前
|
机器学习/深度学习 安全 网络安全
云计算与网络安全的融合:构建安全高效的云服务体系
本文深入探讨了云计算与网络安全之间的紧密联系,特别是在云服务、网络安全和信息安全等关键技术领域。随着云计算技术的迅猛发展,数据安全成为企业和组织面临的主要挑战之一。通过分析当前云服务中的安全漏洞和威胁,本文提出了一系列增强云计算环境安全性的策略和技术措施,包括加密技术、访问控制、身份验证以及安全审计等。此外,还讨论了未来云计算和网络安全技术的发展趋势,强调了技术创新在提高数据处理效率和保护信息安全中的重要性。
|
1月前
|
存储 安全 文件存储
阿里云云存储:数字时代的数据保障与创新
在信息爆炸的数字时代,数据已经成为个人和企业不可或缺的重要资产。而如何高效、安全地存储和管理这些数据,成为各行各业共同关注的核心问题。阿里云作为全球领先的云计算服务提供商之一,其云存储服务不仅提供了强大的存储能力,还融合了多种创新技术和安全措施,满足了不同规模的企业需求。
132 0
|
1月前
|
存储 安全 网络安全
云计算与网络安全:构建安全、可靠的云服务生态
【10月更文挑战第7天】 在数字化时代,云计算已成为企业运营的核心支柱。然而,随着云服务的普及,网络安全问题也日益凸显。本文将探讨云计算与网络安全的关系,分析云服务中的安全隐患,并提出相应的解决方案。通过深入剖析云计算的发展趋势和面临的安全挑战,本文旨在为企业构建安全、可靠的云服务生态提供指导。
53 0
|
3月前
|
存储 边缘计算 Kubernetes
边缘计算问题之边缘计算平台建设中业务应用践行云原生体系如何解决
边缘计算问题之边缘计算平台建设中业务应用践行云原生体系如何解决
60 1
|
5月前
|
存储 传感器 边缘计算
云存储和边缘计算:协同工作的伙伴
【6月更文挑战第6天】学习了云存储和边缘计算,两者协同工作提供高效智能解决方案。云存储提供大规模安全存储,边缘计算则在数据源头快速处理,降低延迟。在实际应用如自动驾驶、智能家居中,边缘设备处理实时数据,重要信息上传至云存储进行深度分析。通过示例代码展示了这种合作模式。科技世界充满可能,将持续学习以应对未来项目挑战。
70 1
|
存储 数据安全/隐私保护 对象存储
云存储的创新
云存储的创新
65 0
|
存储 人工智能 监控
带你读《云存储应用白皮书》之4:1. 基础设施的云化
带你读《云存储应用白皮书》之4:1. 基础设施的云化
179 0
|
弹性计算 缓存 负载均衡
互联网行业高弹性系统构建最佳实践
在互联网行业的业务发展中,针对业务突发性的特点,系统需要有弹性伸缩的能力。
互联网行业高弹性系统构建最佳实践
|
数据管理
云与传统灾备生态如何融合?
业界首次灾备大咖圆桌揭秘!
221 0
云与传统灾备生态如何融合?