如何集成云层与本地存储

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
对象存储 OSS,内容安全 1000次 1年
简介:

云和本地存储正走向越来越紧密的整合,于是云成为了另一个存储管理员可用的层级。

如何集成云层与本地存储

组织不大可能把100%的数据都移到云服务上,但大多数企业都会至少想让一部分数据能够利用云存储的优势。最好的方法是以混合的方式使用云存储来创建一个本地存储资源和云的无缝集成。这个云计算层的整合可以通过专用的软件,支持云的应用或者存储系统或云网关产品中内建的功能来达成。

为什么要追逐云?

今年恐怕将是公有云采纳终于超越开发项目和Web 2.0公司,并堂堂正正的踏入IT主流的一年。云服务供应商可以提供在弹性、敏捷性、可扩展能力和效用定价等方面的巨大优势。当然,在安全性、竞争力、长期成本和性能方面仍然有着不可避免的担忧。以及,并不是所有的应用或工作负载都是云就绪的,还有大部分组织还无法完全在公有云上运营。不过,这些问题导致了我们今天在实际上所看到的混合云方式,试图将这两个世界的优点结合在一起。

Taneja集团的研究支持这个看法,指出了现在的企业IT组织只有大约10%是考虑完全转移至公有云的。其他绝大多数的IT部门,至少在接下来的3到5 年间,对未来架构的展望仍然是会由云和本地基础架构组成,以超融合产品来加强。然而,也就是在这些IT部门内,接下来18个月的首要IT计划是增加存储整合,虚拟化及建立云服务。这些计划倾向于在有意义的使用现有的公有云能力、支持Web应用和移动用户、协作和共享、深度档案、异地备份、DRaaS和甚至在某些情形下,作为一个主要存储层。

许多IT部门必须要存储、管理、保护和帮助处理的数据量,根据许多人的估计,将会在可预见的未来中每一年都翻番。鉴于数据中心,人员配备和预算方面非常现实的限制,要完全本地的处理这种数据的增长将会变得越来越难。

使用云存储

因为有着许多充满说服力的理由(请读:“为什么要用云存储?”),许多组织将在他们的数据存储需求增加时采用云存储。这个采纳不见得一定是完整的迁移到云端,而更可能是采用一个混合形式的存储架构。对于大多数组织(至少在接下来几年内)来说,最佳的组合将在包括一些本地存储基础架构的同时与最有意义的与云分层整合。

要构建混合云存储服务有几种方式。一种方式是简单的把一些如用户文件同步和共享之类的工作负载移到云上,同时将其他对性能更敏感的应用留在本地。这些应用中的一些可以使用云存储服务,例如Amazon Web服务的弹性块存储(EBS),他们新的弹性文件存储(EFS),或由IT管理的,云驻留文件存储,例如SoftNAS的产品。

最流行的云存储是基于对象的。而许多现代应用(也即那些可以同时适用于云或本地的应用)现在都支持基于HTTP的存储协议(基于REST的API)来直接访问云友好的对象存储。

为什么要用云存储?

IT部门要利用云存储有许多令人信服的动机。其中有:

  • 每GB的低成本
  • 几近无限的按需容量
  • 基于弹性订阅成本
  • 很少或者几乎没有前期的固定资产投入
  • 分布式访问
  • 区域分布式复制
  • 低营运成本(非本地管理)
  • 可能的云恢复(DRaaS)

对象存储产品可以在所有的云平台上使用,无论是私有云或是公有云。许多对象存储产品都可以被设定以混合的方式来分布式的运行,自然的横跨内部数据中心和公有云。Amazon Web 服务的S3是市场领先的对象存储API,紧跟其后的是OpenStack云构建的OpenStack Swift API。

云端存储和分布式对象存储的近亲是一系列的软件定义存储(SDS)产品,可以以装置和/或基于虚拟机的存储节点同时覆盖云和本地基础架构。取决于你想要构建的是哪种混合架构以及存储服务的必要等级,来自Maxta,Nexenta,Qumulo或Tarmin的存储产品可能就是你要的。

云天堂的大门

如果你的应用无法以你所希望的速度进入云达人的境界,并且你也还没准备好直接管理云基础架构的话,云网关可能是个好选择。云存储网关基本上看起来就像一个传统用于工作负载的阵列,但内在的功能却是一个大型的高性能本地缓存,面对着后台的云容量。云存储网关可以基于物理或虚拟设备,也可以在某些情况下,无缝替代传统的块和文件存储产品。

网关之间的差别可以表现在它们的本地缓存或分层算法的设计上。有些是基于最近的用户行为,有些是应用感知的,而有些甚至可以协调快照回到云中。大部分都有些内建的数据传输优化,例如重复数据删除和压缩功能,虽然这些功能的回报率各有不同而且可能与网络层的WAN优化有所重复。有些网关更进一步,有高级IO 日志和缓冲,IO优先级和非高峰期的传输调度的功能。

取决于网关存储的使用方式,这些差别将会显现出来。比如说,它可能是一个深容量备份目标,旨在很便宜的提供数百TB的对象存储(例如NetApp SteelStore)。抑或它可能是一个前线阵列用来代替ROBO部署的本地主存储(例如CTERA 网络)。在后者的情况下,IT可以享受多重的好处,由于远程主存储不但能在本地缓存,提高性能,还可以自动同步回云端,极为安全并有效的在任何地方都可以使用。

对于大型数据中心来说,老牌网关供应商如Nasuni和Panzura的目标是提供一个更高成本效益和极度可扩展的NAS产品,以单一全局命名空间来替代成堆的传统文件管理器。对于如此广泛分布的文件系统,其中一个需要考虑的关键点是,如何处理区域性分布,缓存,版本和/或文件锁定。

云端的阵列层

另一个混合方案的例子是微软的StorSimple,即一个主的块存储阵列和一个完整集成的云计算层。

现实世界的云存储

今天常见的云存储用例包括:

  • 用于冷热备份的容量存储
  • 按需访问的数据活动归档
  • 用于存储基于云的分析处理数据
  • Web和移动应用的主要数据
  • 分布式文件同步和共享
  • 视频和影响仓库,通常利用云的转码和处理服务
  • 本地主存储后面的云存储层

在不久的将来大多数传统存储厂商可能会直接在他们的传统阵列里建立云存储层。最近Taneja Group的研究表明,大多数企业希望在未来3-5年内增加云存储这样一个新的层级。同时EMC和NetApp也收购了公认的云存储网关产品(分别为 TwinStrata公司和Riverbed SteelStore)。

云存储适合你的选择吗?

在一头扎进云存储前,IT团队首先需要考虑他们真正想要完成的是什么。当架构一个混合方案时,以下是需要考虑的一些重要领域:

网络连接性和带宽。网络是数据中心和云之间影响性能、可用性和成本的关键资源。网络本质上仍然是不可靠的。当考虑到你有哪些以及多少数据可以在云里,评估如转发缓存大小和WAN优化,包括重复数据删除和压缩,这样的端到端功能。这些功能,专用网络设备可以提供或者直接内置在云存储网关产品中,但你可能不需要两者都用。对于较大的云数据复制和迁移的挑战,还可以考虑那些旨在缓解大数据流的产品如Attunity的Cloudbeam。

安全性。寻求和你现有的本地认证的整合。大多数云存储都提供可靠的在线和离线数据加密,但请检查这些秘钥匙如何被管理和保护的。有没有一些策略可以自动的加强安全配置,以及监管/法规的限制?

数据访问性。确定访问的广度。你的数据只在你的数据中心被提供访问还是你想要启用基于云的处理或者全球文件共享?移动和分布用户的数据在哪里被复制和加解密?

成本/数据扩张控制。云存储容量可以非常容易的上升到很大,但这意味着你长期的花费可能会是天价。寻求成本分配和数据扩展管理的功能。

性能。当用户和工作负载在任何时间和地点请求的时候,性能上都可以得到满足吗?终端用户的文件共享和你关键的销售点数据库的需求会完全不同。

迁移。你的混合方案需要支持多个公有云提供商吗?以防万一的话也许甚至要同时支持两个?

最后,在不久的将来,云存储会不可避免成为数据中心的一层。那么,问题恐怕不是是否,而是如何能最大的利用这一优点。在对全球扩展NAS可能的战略层做过认真考虑后,云存储网关是一种不错的让你可以进入到公有云存储的方式。


本文作者:谈翔

来源:51CTO

相关实践学习
1分钟 Serverless搭建高性能网盘
本场景将使用阿里云函数计算、文件存储NAS以及开源项目Kodbox,带大家1分钟Serverless搭建个人高性能网盘,网盘可长期使用。
相关文章
|
18天前
|
存储 移动开发 缓存
uniapp本地存储的几种方式
uniapp本地存储的几种方式
64 0
|
存储 Linux 图形学
Unity 基础 之 PlayerPrefs数据存储
PlayerPrefs 游戏存档俗称玩家偏好。 工作原理非常简单,以键值对的形式将数据保存在文件中,然后程序可以根据这个名称取出上次保存的数值。
655 0
|
2月前
|
存储 缓存
uniapp存储讲解
uniapp存储讲解
26 4
|
3月前
|
存储 开发框架 数据管理
UniApp中的数据存储与获取指南
UniApp中的数据存储与获取指南
280 0
|
6月前
|
存储
云端数据存储
云端数据存储
|
6月前
|
存储 缓存 JavaScript
缓存集成
缓存的概念 缓存就是数据交换的缓冲区(称作:Cache),当用户要获取数据的时候,会先从缓存中去查询获取数据,如果缓存中有就会直接返回给用户,如果缓存中没有,则会发请求从服务器重新查询数据,将数据返回给用户的同时将数据放入缓存,下次用户就会直接从缓存中获取数据。 缓存其实在很多场景中都有用到,比如: 场景 作用 操作系统磁盘缓存 减少磁盘机械操作 数据库缓存 减少文件系统的IO操作 应用程序缓存 减少对数据库的查询 Web服务器缓存 减少对应用服务器请求次数 浏览器缓存 减少与后台的交互次数 缓存的优点 ​ 1.减少数据传输,节省网络流量,加快响应速度,提升用户体验; ​ 2.减轻
21 0
|
8月前
|
存储 缓存 移动开发
uniapp本地存储详解
在开发uniapp应用时,我们常常需要使用本地存储来保存一些数据,比如用户登录信息、设置项等,使得应用能够在设备上保存和读取数据,以便提供更好的用户体验和离线功能支持,本文将简单介绍uniapp中的本地存储相关API使用方式。当我们调用对应方法时,uniapp会将数据以键值对的形式存储在本地存储中。具体实现中,uniapp会将键值对转换成字节流,并将字节流写入到设备的存储器中。这个过程涉及到计算机底层存储原理的数据存储和字节对齐。在读取数据时,会根据指定的键,从本地存储中读取相应的数据。
984 0
|
10月前
|
存储 前端开发
前后分离项目 —— 前端实现本地存储(数据可供其他页面使用)
前后分离项目 —— 前端实现本地存储(数据可供其他页面使用)
136 1
|
存储 JSON API
|
存储 移动开发