在物联网、大数据的时代,急剧膨胀的数据越来越成为所有应用的一个分量越来越重的组件。(云)应用成为了给移动设备输送数据的用户界面。这些应用依赖于复杂的地理或社交设计。需要具备极强的伸缩性和超高的性能。需要易用的 API。时刻都不能停止。
这些新的复杂的数据类型、核心的 API 设计以及对伸缩能力的需求导致了一类全新的数据存储的出现。NOSQL 你应该听说过了吧?不过,云端的数据存储即服务还没有像应用即服务那样流行。其原因主要是因为数据存储的运营要比应用栈的托管难多了。
此外,静态数据问题以及把数据交给云服务商托管引发的信任问题也很棘手。不过这个问题也在发生变化。Rackspace 有 MySQL 服务、Redis to Go 以及 ObjectRocket。Amazon 提供了 RDS 和 Dynamo。还有像 Cloudant (NoSQL 云数据库)和 Clustrix 这样服务细分市场的玩家。
除非你的公司像 Facebook 或苹果那么大,否则的话采用数据存储及服务的方案是具有真正价值的。首先,开发者可以即时获得许多关键的功能。从而可忘掉其他东西,将关注点放到 API 交互上。
在这种模式中,开发者就是 DBA,过去的那种专门 DBA 角色已经过时了。开发者无需担心碎片化、索引重建以及数据文件空间之类的事情,把它们交给磁盘、RAID、Ubuntu 内核版本等处理就好了,那一堆的问题全都移交给了提供商。