11 月 9 号的阿里云开发者大会上。来自与阿里的仇应俊分享了阿里云 OTS(开放结构化数据服务的技术实践),他首先分享了 OTS 的产生背景:
- 用户规模和应用所处理的数据呈现爆炸式增长;
- 服务的高可用性要求;
- 应用的数据库表结构会随着业务的增长而改变;
随后他又举了一个实例来说明传统数据库的局限:
用户数到达 3500 万的应用,图片记录数达到 10 万,每秒新增 3000 条记录,总数据量近百 TB。在这样的场景下,对于单机数据库,在规模处理时无能为力,最多支撑 1TB。静态表的分区、扩容也容易出现问题。
OTS 采用飞天的内核实现调度与底层通讯,在其上有结构化数据处理的引擎,应对用户的并发请求,并通过简介的 API 来供开发者调用。他指出了 OTS 在处理这些问题时的原则:
- 规模可伸缩性;数据会被水平分割成很多分区,自动调配到数据节点进行处理,当原有的数据分区不能满足需求以后自动进行再次的调配;
- 高可用性;针对硬件比如交换机之类的故障将会自动被侦测到,失效机器上的数据分区会被转移到其他的节点上;通过热升级的方式保证高可用性;
- 自动应对表结构变化。OTS 的数据模型对于属性列没有限制,可以实现动态增加;
数据安全一直都是一个敏感的话题,针对 OTS 的数据,他们目前会在几个层面上做保证:
- 数据会统一存储在底层分布式的文件系统,分布式文件系统会保证每个数据有多份的拷贝,当拷贝丢失或者损害的时候,系统会自动检测到会恢复。
- 每个数据在 OTS 里面都是隔离的,这样保证用户的数据是本身是安全可靠。
目前阿里的“冰火鸟”以及“云·OS”的用户存储空间都使用的 OTS。
评论