对于互联网应用来讲它可能还不够,单个库不够,那么就用读写分离来做读获得就可以了。
其实读写分离碰到的问题也很多,首先读写分析在MySQL要解决读跟主库的数据同步的问题,一致性问题,延时问题,这些都要解决。特别是延时问题,但是知道MySQL主备还是单线写入,而主库是多并发写入。所以今天在方向上,我们在思考如何能让这个事情解决掉,而上应用感知不到这些麻烦的事情。
我们希望这还是一个数据库,首先在存储扩展上可以天然应用云上平台的共享存储,叫分布式云存储。可以讲数据盘扩到100T。存储和计算分离后,计算可以平行扩展。还可以让所有节点、数据在度曲的时候,数据隔离性是一致的。由于它的写节点,它不再存在读的压力,所以写节点的能力至少有一倍的提升。
这样的话,其实对于一般的中小企业来讲,如果拥有这样一个数据库,它至少可以熬过三年,有三年的时间让它喘息。这里的技术架构的扩展是基于先保证SQL接入优先的。因为大家知道要换一种架构,应用全部改一遍,这是非常麻烦的一件事儿。
当云变成基础设施的,我们数据挖掘能力会越来越强,以后的数据会以人为中心,数据会越来越大。其实对中小企业来讲,进入DT时代还很长很长,包括今天你有这样的数据量你怎么办?所以今天我们思考的是说怎么把你的数据先存现在。所以未来的数据模型,应该是说数据的技术点是希望基于分布式,压缩的,低成本的存储。
设备会帮你自动聚合掉80%的数据
这里其实有一个简单的示意图我们可以看到,未来虽然有这么大的数据量,但是80%的数据不会传输超过一公里。这是什么意思?所有的设备里它会帮你自动计算掉,聚合掉80%的数据。
所以未来嵌入式数据库是一个方向。嵌入式数据库一定是为未来所有设备产生的实时数据,帮它完成80%的数据计算,剩余的数据存到它的云上来。到云上来有一个高并发的能力,因为未来互联网的场景是几百万的端需要数据并发的传到上面来,所以对数据库来讲,并发的写入能力要非常的好。数据库有一个叫连接数的限制,经常在双十一的时候连接数被打爆,然后连接数就挂了,这是要克服的一个点。
还有压缩,还有存储,这些数据存下来以后怎么用?既然大数据炒的很热,它是未来,但是在大数据之前还有一个轻计算,这是大部分企业需要的。有些企业现在来讲只需要一个简单的包,需要一个简单的聚合,排名一些多维的数据。所以从数据库来讲,我们在方向上有一个至少PB级的存储能力,10倍压缩能力,多节点事务一致性,OLTP-OLAP,有机整合1份数据,2种计算。
3.业务的变化
当互联网真的成为基础设施的时候,大家应用搬上来的时候,业务就会发生变化。其实这个变化现在已经可以看到。
举个简单的例子,跨境的全球的物流慢慢的已经出来了。今年阿里巴巴一大战略是国际化,我们希望更多的企业从国内走到国外,从国外把东西运进来。举个跨境物流的例子,中国的系统我们希望在美国也可以看到数据,怎么办?当然它可以直接调中国的系统,但是这个体验非常差,怎么来解决?
解决的办法,就是数据最终一致性,慢慢的做同步,但会延迟看到。这肯定不是我们想要的,当然这也是现在的权宜之计。以前所有企业的数据,大家觉得数据的重要性从来没有像今天这样重视过,都想构建一个数据的容灾,但是成本很大。但是在大家心里都有一个谎言,就是成本太大了,容灾就不用做了。其实你想不想做?其实都想做。因为对一个企业来讲,它最后留下来的就是这些东西,最后没了,就真的没了。
这些东西在云上,有了云的基础设施以后,这就完全可以非常轻松的做到了。阿里云其实在中国有六个数据中心,在2017年应该会超过十个,你可以随意一个点做容灾,对你来说要购买的资源就是两个数据库,不用再建设那些基础设施,非常方便。
最后还有混合云。在上云的过程中不会所有的业务都一下子搬上来,这对技术人员挑战就非常大,所以他们会选择一部分数据上来,一部分应用上来来借用云的资源做弹性。这个时候就会有,从你自己企业里到云上数据交付的过程。因为云上的业务和你家里的业务还需要交付的。所以真正的未来,远一点的话应该有一个全球性云端,不用再让开发者纠结数据要同步,数据一致性有问题,任何东西都可以写进来,这是我们真正的追求的梦想,真的让企业,开发者只需要关注数据存取更安全,和数据的的获取和插入就达到目的了。