写点什么

仇应俊谈阿里云 OTS

  • 2012-11-18
  • 本文字数:643 字

    阅读完需:约 2 分钟

11 月 9 号的阿里云开发者大会上。来自与阿里的仇应俊分享了阿里云 OTS(开放结构化数据服务的技术实践),他首先分享了 OTS 的产生背景:

  1. 用户规模和应用所处理的数据呈现爆炸式增长;
  2. 服务的高可用性要求;
  3. 应用的数据库表结构会随着业务的增长而改变;

随后他又举了一个实例来说明传统数据库的局限:

用户数到达 3500 万的应用,图片记录数达到 10 万,每秒新增 3000 条记录,总数据量近百 TB。在这样的场景下,对于单机数据库,在规模处理时无能为力,最多支撑 1TB。静态表的分区、扩容也容易出现问题。

OTS 采用飞天的内核实现调度与底层通讯,在其上有结构化数据处理的引擎,应对用户的并发请求,并通过简介的 API 来供开发者调用。他指出了 OTS 在处理这些问题时的原则:

  1. 规模可伸缩性;数据会被水平分割成很多分区,自动调配到数据节点进行处理,当原有的数据分区不能满足需求以后自动进行再次的调配;
  2. 高可用性;针对硬件比如交换机之类的故障将会自动被侦测到,失效机器上的数据分区会被转移到其他的节点上;通过热升级的方式保证高可用性;
  3. 自动应对表结构变化。OTS 的数据模型对于属性列没有限制,可以实现动态增加;

数据安全一直都是一个敏感的话题,针对 OTS 的数据,他们目前会在几个层面上做保证:

  1. 数据会统一存储在底层分布式的文件系统,分布式文件系统会保证每个数据有多份的拷贝,当拷贝丢失或者损害的时候,系统会自动检测到会恢复。
  2. 每个数据在 OTS 里面都是隔离的,这样保证用户的数据是本身是安全可靠。

目前阿里的“冰火鸟”以及“云·OS”的用户存储空间都使用的 OTS。

2012-11-18 03:192930
用户头像

发布了 89 篇内容, 共 33.0 次阅读, 收获喜欢 4 次。

关注

评论

发布
暂无评论
发现更多内容

聊聊 Kafka: Consumer 源码解析之 Consumer 如何加入 Consumer Group

老周聊架构

签约计划第二季

C++实现unique_ptr

行者孙

c++ DIY 签约计划第二季 unique_ptr

使用golang开发数据库周边工具

lixiaofeng

签约计划第二季

8千长文解决前端资源下载全场景问题

梁龙先森

签约计划第二季

聊聊 Kafka: Consumer 源码解析之 ConsumerNetworkClient

老周聊架构

签约计划第二季

数据大体系(四)——标签

圣迪

大数据 标签 标签体系 数据体系

Prometheus Exporter (二十五)HAProxy Exporter

耳东@Erdong

Prometheus 28天写作 exporter 12月日更 HAProxy

尝试

Nydia

C++ 三种智能指针的使用场景

行者孙

c++ smart pointer 签约计划第二季

每个前端都值得拥有自己的组件库,就像每个冬天都拥有春秋裤⛄️

速冻鱼

前端 组件库 签约计划第二季 12月日更

NCF 如何对接三方的功能(五)

MartyZane

支付 短信 签约计划第二季 NCF DDD框架

2021年最委屈的一件事

将军-技术演讲力教练

Dubbo 框架学习笔记三

风翱

dubbo 12月日更

NCF 实战应用合集全解析

MartyZane

实战 内容合集 签约计划第二季 NCF DDD框架

Maven 3 进行安装

HoneyMoose

关于分布式事务的思考

yuexin_tech

用 Go + Redis 实现分布式锁

万俊峰Kevin

微服务 高并发 分布式锁 go-zero Go 语言

Maven 如何打包 Spring Boot 项目

HoneyMoose

Maven 如何打包 Spring Boot 项目打包的发布 Jar 名字

HoneyMoose

C++构造那些事:三五O法则

行者孙

c++ 签约计划第二季

Python Qt GUI设计:QScrollBar类实现窗口水平或垂直滑动条效果(拓展篇—4)

不脱发的程序猿

Python qt GUI设计 Qt Company 滑动条效果

[Pulsar] Broker处理消息确认

Zike Yang

Apache Pulsar 12月日更

C++软件开发中的时间

行者孙

c++ 签约计划第二季 chrono datetime iso8601

【docker 总结】第一篇 - docker 简介和安装

Brave

Docker 12月日更

线程方法:sleep( )、wait()、join( )、yield( )的区别

JavaEdge

Confluence 如何在页面中显示目录

HoneyMoose

C++的explicit关键字

行者孙

c++ 签约计划第二季 explicit

NCF框架如何实现WebApi(四)

MartyZane

实战 签约计划第二季 NCF DDD框架 WebApi

Python Qt GUI设计:QMdiArea和QMdiSubWindow类实现多文档界面(拓展篇—3)

不脱发的程序猿

Python qt GUI设计 Qt Company 多文档界面

Go+ 上下文处理教程(5.3)

liuzhen007

28天写作 12月日更

20行Python scrapy 代码,去采集【蓝桥】训练营

梦想橡皮擦

12月日更

仇应俊谈阿里云OTS_服务革新_水羽哲_InfoQ精选文章