五个问答,告诉你阿里云对象存储如何助力钉钉战胜业务洪峰

“基于OSS在弹性扩容、跨省容灾、多租户管理以及传输加速方面的基础能力,钉钉在此次战役过程中,实现了一键切换写入区域,拆分业务到多个区域的功能,同时钉钉在跨区域的图片处理、文档预览的并发处理量上有了10倍速的提升。”——钉钉高级技术专家 金喜

大多时候,我们都无法从青萍之末,预测到暴风骤雨的到来,就如我们无法从一个病毒身上预测到整个疫情的到来一样。在新冠肺炎疫情这只灰犀牛在全球狂奔的当下,诸多线下业务受到了影响。为了积极迎接此次疫情的挑战,政府组织、企业、院校等纷纷开启了线上办公,视频会议、在线教育以及基于互联网的数据分析已然成为当下最重要的刚需。仅以钉钉为例,目前已经有1000万家企业组织、2亿上班族在钉钉平台上协同工作。

在这样如此巨大的业务流量和数据增量的压力下,钉钉积极应对,借助阿里云对象存储(以下简称“OSS”)成功实现了存储的快速扩容,保障了业务连续性,同时解决了多租户之间的数据隔离问题。我们将通过以下5个问题,向大家详解解读。

问题1.:为什么是OSS?
答: 更适合互联网业务的存储产品。
作为一个在线协同平台,钉钉在直播,钉盘,图片处理等方面需要使用到云存储。而作为在最初就将存储看作为一种服务的对象存储,在应对互联网数据存储的规模化、高增长方面可谓开创了一个全新的、具有划时代意义的解决方案。对象存储的兴起从被传统存储产品所忽视的互联网数据存储为切入点的对象存储是面向互联网、移动互联网(3G、4G、5G)而产生的,是为大量使用的网页、视频、图片、音频、文档访问等场景而设计的。在技术上,对象存储采用基于互联网的 HTTP/HTTPS 的 S3(Simple Storage Service)/OSS(Object Storage Service) 访问接口,其本质是通过互联网(或移动互联网)访问网络内容,为应用提供了全局、全网共享的数据池化管理,非常适合做为短视频、图片、音乐等互联网应用的底层平台。现在,对象存储已经拥有了面向海量数据存储、快速访问的能力,不但可以构建数据统一分析平台,还可以发挥数据挖掘的价值,让存储更智能。
进一步了解阿里云对象存储(OSS)

在各行各业不断拥抱互联网的当下,基础设施的云化需要一套新的技术体系,需要基于互联网技术来进行改造。在企业组织数字化转型的当下,在产业互联网蓬勃发展的当下,需要更加适合互联网场景的技术升级方案。从成立的第一天开始,阿里云就具有了独特的互联网基因,通过不断应对互联网时代的诸多挑战,从而在今天构建起来数字经济时代的底层范式和技术脉络。

问题2:存储作为一个有状态的产品,如何在已有海量数据的同时,快速扩容来保障钉钉的业务需求?
答: Region(地域)级资源快速调度能力。
通过将单个对象分离为 meta、data 两部分,并且将二者分离存储,OSS 实现了 Region 级别的快速资源调度能力。在用户有突发的带宽、Qps 需求而旧数据所在集群又无法满足时,可以按前缀、或按比例将一个桶的新写入数据在一个 Region 内不同集群,甚至不同AZ(可用区)间调度,从而快速满足用户的需求。
Meta、data 分离是否会影响用户的 ListObject 操作的效率,或者导致无法保证 ListObject 的强一致呢?答案是不会,OSS 会保证单个桶的对象的 meta 都集中在一个集群,从而保证 ListObject 的高性能和强一致。同时用户也不用担心单集群无法满足海量对象的 meta 存储需求,OSS 高效的 KV 索引层保证了 meta 处理能力的水位扩展能力(实际生产中已经有了单桶超过了1万亿对象)。
Region 级资源调度要解决的另一个问题是用户的访问模式问题。新写入可以快速在 Region 级调度,但是用户的访问有多少会跟随到新的集群,取决于用户的访问模式,访问新旧数据的比例特性。OSS 具有在集群、AZ(可用区)间细粒度迁移旧数据的能力(用户无任何感知),但是在存量数据量非常大的情况下,搬迁的耗时会比较久,这样可能就无法快速实现对用户读取带宽的调度。这时候就轮到OSS的运营大脑 OSSBrain 出马了,多维度的用户画像能力可以快速判断用户的访问特性,预测出有多少的读取会跟随写入的调整而变化,进而更好的实现资源调度。比如,战疫期间钉钉某业务需要快速支持数倍的访问带宽,通过 OSSBrain 分析,该业务读取的数据90%以上是30分钟以内写入的数据。根据该特性,OSS通过快速将新写入拆分到多个集群满足了该业务的带宽需求。

问题3:对于基础设施来说,灾备能力至关重要,钉钉如何基于OSS的容灾能力快速搭建跨越四省的容灾系统,如何保证业务的连续运行?

答:基于OSS 的跨区域复制和镜像回源实现Region级容灾。
基于 OSS 的跨区域复制功能,用户可以快速搭建具备Region级容灾能力的云存储服务。下图是一个基于OSS搭建的三数据中心示例。用户在主数据中心写入,使用OSS的跨区域复制功能将数据持续同步到备数据中心。配合OSS的镜像回源功能,3个数据中心都可以支持读取操作。当然,在实际部署中需要对架构做适当的调整,保证不对对象做覆盖操作,或者可以接受对象的最终一致。

image.png

战疫期间,由于资源需求大涨,钉钉共使用了OSS 张家口、深圳、上海、成都四个区域的服务,保证了任意一个区域故障其他区域仍然可以承接全部的业务需求。

问题4: 作为一个天生共享型的云服务,OSS在服务钉钉的同时也服务着国内众多的游戏、直播、教育类客户,战疫期间众多客户的资源需求都有大幅上涨,如何保证让众多用户在共享OSS海量资源池的同时不互相影响?

答:持续在线的租户隔离能力。
OSS天生是一个共享型的服务,数十万的客户共享OSS的海量资源池,做好租户之间的资源隔离就显得尤为重要。得益于OSS持续在线的带宽、Qps、CPU的QoS能力,战疫期间直播、教育类客户暴涨的访问压力未造成任何一起互相影响的线上问题。下图是某个大带宽客户的读取带宽监控图,从图中可以看出OSS持续将客户的带宽控制在了约定的带宽值。

image.png

问题5: 在疫情期间,各企业多地办公甚至跨洋办公成为日常,那么钉钉是如何保证文档的快速分享与预览的?

答:OSS的传输加速功能。
OSS传输加速功能是OSS利用全球分布的云机房,将全球各地用户对钉钉的存储空间(Bucket)的访问,经过智能路由解析至就近的接入点,使用优化后的网络及协议,来访问Bucket从而实现加速的目的。

image.png
OSS传输加速的对于钉钉在上传、下载文件都可以起到加速的效果,特别是对于上传大文件(GB、TB)文件,这种加速方式是首选。

正是基于以上五点,OSS在战役期间,为包括钉钉在内的众多用户提供了稳定、安全的基础设施服务。以云计算为代表的数字化服务在此次疫情中发挥了重要作用。随着产业互联网、5G、AI时代的到来,以钉钉为代表的在线协同办公将驶入发展的快车道,这是行业发展的必然趋势。不久之后,当疫情退去,钉钉们依然会成为企业高效协同运作的助推器,而云计算,将成为这个助推器的重要燃料。

原文链接
本文为云栖社区原创内容,未经允许不得转载。

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

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

相关文章

知乎高赞:一行代码凭什么躺普通程序员的10年工资?

笔者这两天闲逛知乎,看到了这个帖子:匿名答题,发表于2014年,此外没有留下任何多余信息。2年躺赚200万,相当于普通程序员10年的工资。没想到Pyhon这么强大,怪不得有人说“除了不会生孩子,Python什…

第九弹 - 脚本模式与参数视图

MaxCompute(原ODPS)是阿里云自主研发的具有业界领先水平的分布式大数据处理平台, 尤其在集团内部得到广泛应用,支撑了多个BU的核心业务。 MaxCompute除了持续优化性能外,也致力于提升SQL语言的用户体验和表达能力,提高…

Vue3---安装Element-Plus组件库

*** 全局安装Element-Plus 1. npm安装 npm install element-plus --save 2. 在main.js中引入以下内容 import { createApp } from vue import ElementPlus from element-plus import element-plus/dist/index.css import App from ./App.vue const app createApp(App…

在家“隔离”这1个月,阿里云视频云这些工程师都经历了什么?

战"疫”当前,没有谁会置身事外。从1月底开始,一场全民疫情阻击战拉开帷幕,企业停工、学校停课、商场停业,城市街道分外冷清,相反的是,无法出门的数亿网民却在互联网上掀起了一阵不小的流量热潮。距离2…

CSDN的常用文本设置(字体大小红色)

<font face"黑体" color#FF0000 size4> **在这里放入需要修改颜色的语句**</font>在这里放入需要修改颜色的语句

让安全威胁无所遁形,全方位掌握攻击“前世今生”的黑科技来了

作者 | 伍杏玲出品 | CSDN&#xff08;ID:CSDNnews&#xff09;据启明星辰发布的《2019~2020网络安全态势观察报告》显示&#xff0c;在过去一年多时间里&#xff0c;勒索攻击由 2014 年的广泛无目的的传播阶段到2017 年 WannaCry 带来的大规模自动化传播阶段&#xff0c;如今已…

Vue3---vue组件库

1.vue-form-making 基于 vue 和 element-ui 实现的表单设计器&#xff0c;使用了最新的前端技术栈&#xff0c;内置了 i18n 国际化解决方案&#xff0c;可以让表单开发简单而高效。 项目地址&#xff1a;https://gitee.com/gavinzhulei/vue-form-making 2.viewUI ViewUI 是…

docker mysql 日志在哪里_docker容器启动后日志在哪里

docker容器启动后日志在哪里&#xff1f; docker启动后日志会在以下位置 /var/lib/docker/containers/容器ID/容器ID-json.log 也可以使用以下命令查看日志&#xff1a; docker logs 容器ID使用docker-compose可以通过配置把日志记录到本地文件中 实战&#xff0c;演示以mys…

数据价值挖掘利器!阿里云实时数仓AnalyticDB PG

目的 随着数字经济时代的到来&#xff0c;越来越多的应用依赖数据分析来挖掘数据的价值。作为大数据存储、在线分析的重要基础系统&#xff0c;分析型数据库&#xff08;OLAP&#xff09;为数据价值的在线化提供重要的技术平台。 阿里巴巴OLAP团队经过调研发现&#xff0c;现…

美国AI博士指出:60天掌握Python全栈需要...

我见过市面上很多的 Python 讲解教程和书籍&#xff0c;他们大都这样讲 Python 的&#xff1a;先从 Python 的发展历史开始&#xff0c;介绍 Python 的基本语法规则&#xff0c;Python 的 list, dict, tuple 等数据结构&#xff0c;然后再介绍字符串处理和正则表达式&#xff0…

别琢磨了,企业高效灵活运作的秘密拿走:企业邮箱5折起!分享会场抽取苹果手机和猫超卡!

办了公司没个官方邮箱怎么行&#xff1f;还在用私人邮箱联系业务吗&#xff1f; - 不专业&#xff01; 业务多了维护客户人脉关系怎么整&#xff1f;还在靠数名片管客户&#xff1f;- 太费劲&#xff01; 公司大了管理维护难&#xff1f;还指望能靠人力运营&#x…

Vue3---安装axios

1. 安装axios npm install axios 2.配合vue-axios使用 npm install vue-axios --save 3.在main.js中引入 import axios from axios; import VueAxios from vue-axios 4. 注册使用 createApp(App).use(VueAxios,axios).mount(#app)

docker 配置nginx镜像出现 403 Forbidden的问题

&#xff08;1&#xff09;docker 配置nginx镜像的时候&#xff0c;将映射文件配置到当前宿主机上,启动nginx镜像&#xff0c;&#xff0c;通过域名访问&#xff0c;出现 403 查看nginx error.log日志&#xff0c;发现出现 &#xff08;2&#xff09;nginx镜像文件的配置: 启…

一套 SQL 搞定数据仓库?Flink有了新尝试

数据仓库是公司数据发展到一定规模后必然需要提供的一种基础服务&#xff0c;也是“数据智能”建设的基础环节。迅速获取数据反馈不仅有利于改善产品及用户体验&#xff0c;更有利于公司的科学决策&#xff0c;因此获取数据的实时性尤为重要。 目前企业的数仓建设大多是离线一套…

17 年安全界老兵,专注打造容器安全能行吗?

作者 | 伍杏玲出品 | CSDN&#xff08;ID:CSDNnews&#xff09;容器作为云原生的代表技术&#xff0c;很多人认为是容器技术掀起云原生的变革&#xff1a;2004 年&#xff0c;谷歌开始使用容器技术&#xff0c;并在2006年发布进程容器&#xff0c;将容器虚拟化基础设施引入 Lin…

“开源”vs“商业”,差别到底有多大?这篇测试一目了然

近些年来在数据分析领域&#xff0c;涌现出很多开源的技术方案&#xff0c;例如Presto、Spark、Impala等。面对多种选择&#xff0c;客户往往会比较困惑、无从下手。此外&#xff0c;MySQL生态非常火热&#xff0c;但对于数据分析类场景&#xff0c;使用此类关系型数据库是否合…

docker: Error response from daemon: driver failed programming external connectivity

docker: Error response from daemon: driver failed programming external connectivity 解决方案 &#xff08;重新启动docker&#xff09; systemctl restart docker

Vue3项目 --- Mock.js模拟数据测试

1. npm 安装Mock.js npm install mockjs 2. Main.js中引入Mock import Mock from mockjs require(./mock) createApp(App).use(Mock).mount(#app) 3. 在src目录下新建一个 mock目录并创建index.js文件&#xff0c;用来配置mock // 配置 mock 文件 // 首先引入Mock const Mo…

该买哪家二手手机呢?程序员爬取京东告诉你!

作者 | AJ Gordon责编 | 李雪敬出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09;当你手头有一件闲置的物品时&#xff0c;最好的办法不是放在家里积灰&#xff0c;而是拿到二手网站上进行拍卖&#xff0c;例如淘宝的闲鱼&#xff0c;京东的拍拍等等。有这方面经验的…

docker启动elasticsearch——ERROR: Elasticsearch did not exit normally - check the logs at xxx

报错信息&#xff1a; ERROR: Elasticsearch did not exit normally - check the logs at /usr/share/elasticsearch/logs/docker-cluster.log解决办法&#xff1a; 在运行命令中添加 -e “discovery.typesingle-node” docker run \ -d \ --name es-temp \ -e "discove…