转载

场景化存储解决方案-XSTORE

场景化存储解决方案-XSTORE

“ OSS,对象存储,Simple Storage Service 等解决的是——面向业务场景的存储问题。”

xSTORE,解决的就是面向业务场景的存储问题。


不用再考虑 IDC、硬件、网络、如何存,也不用想跨域、容量节省等等一系列复杂问题,只需要考虑你的应用或产品的业务逻辑,剩下的xSTORE搞定。

整个产品生命周期,从弱小到强大,不需要切换技术架构;而且, AWS S3 标准兼容也无需更多的学习成本。

安全、可靠与高性能

一般来说,在对象存储领域提到“安全”或“可靠”会有一个概念叫“几个9”的问题,或者叫SLA,“9”的数量越多,说明安全性或可靠性越好。

下面是我们的SLA指标:

类型

数持久性

可用性

首字节响应

标准

99.99...9%(11个9)

99.95%

P99<=100ms

低频

99.99...9%(11个9)

99.90%

P95 <=100ms

智能

99.9999%(11个9)

99.90%

P95 <=100ms

值得注意的是,我们在技术架构上我们将会最大限度的分散风险,即使任何一个IDC出现致命故障时,亦不影响正常服务(读+写)。

场景化存储解决方案-XSTORE

由上述架构可以看到,xstore基本组成有“API service”、“Meta 集群”和“Datum 集群”三个部分;

“API service” 提供 AWS S3 接口兼容支持,是完全无状态的,它承担用户流量的入口和出口,当然也是数据存储“落地”的逻辑实现。

当上传一个 Object 时,会被切分为若干个小 Block 存储到 Datum 集群中,而这个分片在哪里的信息,就称之为元数据,这些数据将被存储在 “Meta集群” 中。

场景化存储解决方案-XSTORE

在实际业务场景中,元数据将是海量且必须可被实时访问的,因此,我们使用 Cassandra 来作为核心元数据存储,完全无中心的对等设计、可平滑完成横向拓展、支持多DC策略等等特性,可以使得我们在任一节点或任一数据中心出现问题时,依旧可以正常服务。

“Datum 集群” 则存储实际数据,这是一个要求大量存储数据空间的角色;考虑到场景与成本的平衡,我们采用了两种选型:

  • Cassandra 多副本,定位为标准存储等级的存储类型,多副本、多DC策略,也就是任一数据中心出现问题也可正常提供服务;

  • HBase 1.4 副本,定位低频存储等级的存储类型,使用纠删码技术,节约资源,可配置远端replication功能,进行异地双活备份,注意这里是可配的,也就是可以基于成本考虑,放弃多DC保障,仅使用一个数据中心。

而 “区域/Region” 是xstore的最小服务单元,每个区域互相独立,业务可以选择距离自己主要用户群最近的的xstore区域,从而降低网络开销,提高访问性能,提升用户体验。

目前,我们公共区域已经支持华北地区(北京)和华东地区(上海)。

除此之外,360是一家安全公司,在硬核安全等方面专业水准不需多说,不但有N个团队的现实版“韩商言”,也有多维立体的安全大脑这样的AI神器加持;这些都将提供不同维度的全方位安全与可靠性保障。

兼容、通用与易用性

首先,“S3标准”是什么?

S3, Simple Storage Service ,最初由 AWS 实现,主要是希望屏蔽掉后端复杂的各类系统,提升业务开发效率,它并不是一种理论标准,而是而是一种事实标准,更多时候我们会叫它—— 对象存储。

它有简单的 Web 服务界面,可用于存储和检索 Web 上任何位置、任意数量的数据,应用程序开发人员可以使用它存储数据资产,包括图片、视频、音乐和文档;技术上,提供一个 RESTful API 以编程方式实现与该服务的交互。

场景化存储解决方案-XSTORE

然后,S3 的优势是什么?

  • 使用简单,通过Web的控制台可以轻松访问S3,还提供完整的 REST API 和各种语言SDK,易于集成第三方技术;

  • 安全, S3 支持签名权限控制,通过安全通道进行数据传输,并支持自动保护上传的数据;

  • 可扩展,扩容方便,可根据需求扩容/缩容,用户无感知。

之后,还有什么比较有意思的用法么?

Fuse,本地目录;可以将某个bucket挂载到一个目录上,向操作本地目录一样操作这个bucket对它进行上传下载;使用goofys(是一个golang实现的软件),可以将s3协议转换为POSIX语义规范的可以通过fuse挂载为文件系统,这样就可以把它当作一个无限的本地目录用了。

场景化存储解决方案-XSTORE

最后,支持功能的详情对比。

功能

说明

AWS

阿里云

xstore

存储桶操作

存储桶操作

创建、查询、删除

创建、查询、删除

创建、查询、删除

存储类型

多种存储类型:

S3 标准

S3 智能分层

S3 标准–IA

S3 单区–IA

S3 Glacier

标准存储

低频访问存储

归档存储

xstore标准存储

xstore低频访问存储

xstore智能分层

对象操作

对象的基本操作

上传

查询

下载

分享

复制

删除

自定义headers

上传

查询

下载

分享

复制

删除

自定义headers

预览内容

上传

查询

下载

分享

复制

删除

自定义headers

日志管理

将存储桶的详细访问日志以文件形式存储在指定存储桶。

支持

支持

支持

跨域访问

提供 HTML5 标准中的跨域访问设置,帮助实现跨域访问。

支持

支持

支持

访问控制

请求时检查相应的 ACL 以验证请求者是否拥有所需的访问权限。

支持

支持

支持

多种管理工具

实用工具,可方便用户进行数据管理或数据迁移,详情请参见

aws-cli 命令行管理工具;

fuse工具,第三方插件。

阿里自研工具

aws-cli 兼容aws的命令行工具;

fuse 工具,第三方插件。

多种 API 和 SDK

API:提供丰富的 API 接口,包括功能接口的使用方法和参数,提供请求示例、响应示例以及错误码介绍 提供多种开发语言SDK。

AWS 标准SDK

自研SDK

兼容常用 AWS API。兼容 AWS SDK

聊聊成本

xstore 不用考量基础设施的事情,只考虑哪个区域距离业务的主要用户群比较近,从而获得更好的体验就好。

xstore在产品层面提供三种数据存储类型,用户可以根据业务需要使用如下存储类型中的一种任何一种:

  • xstore 标准 :提供高可靠性、高可用、高性能的对象存储服务,适用于实时、热点数据访问的业务场景。

  • xstore 低频 :提供较高的持久性、较高的吞吐量以及较低访问延迟对象存储服务,适用于访问频次较低(平均每月1到2次访问频率)的业务场景;

  • xstore 智能 :在保障服务质量的前提下,自动将数据移至成本较优的访问层,适用于访问频率未知或不可预测,但需要长期保存的数据。

写在最后

xstore是我们的基础技术项目名和私有云项目名,若您私有云需求可以联系我们qilin@360.cn

当然,也可以让一切简单一点,直接使用我们的公有云产品 —— 智汇云  https://zyun.360.cn/

奇麟大数据 ,360大数据分舵,专注于大数据领域的技术、实践、运维、产品和数据使用方面的分享和交流

想要了解 大数据 方面知识的初学者,深入技术的研发或运维大神,寻找技术解决方案的传统企业主均可食用

点击阅读原文,关注 奇麟大数据

往期精彩回顾

2019年度精选文章

Go实现Raft第二篇:选举

为什么我们要从MySQL迁移到TiDB?

场景化存储解决方案-XSTORE
场景化存储解决方案-XSTORE

360技术公众号

技术干货|一手资讯|精彩活动

扫码关注我们

原文  http://mp.weixin.qq.com/s?__biz=MzUxMTcwOTM4Mg==&mid=2247486554&idx=1&sn=9d456983d60c266ebc85064db7994dc1
正文到此结束
Loading...