使用DBaaS,在云中有很多选择,比如开源的DBaaS是重要的力量之一。而开源的DBaaS无法提供与基于开源软件和商业化服务来构建解决方案时,有更好的的可移植性。但就像许多开源技术一样,这需要时间的沉淀。下面就一起来了解下,目前DBaaS在云上所呈现的几种形态。有开源的,云原生的,共享源许可证模式的。
无差异的开源DBaaS解决方案
如果企业使用MySQL或PostgreSQL的开源数据库,现在大多数的云提供商都有DBaaS的选项。这些选项都提供与最新的开源软件以及类似功能的兼容性。但会有许多细微的差异,如用于配置数据库的API;以及如何实现确切的高可用性;以及如何监控数据库等等。
差异化/增强型开源DBaaS解决方案
云供应商通过构建专有的“开源兼容产品”从而引入了更多差异化,与原始的开源版本相比,它们为用户提供了更多功能。
比如Amazon Aurora,阿里云的MySQL HybridDB就是很好的例子。这些数据库倾向于提供的功能之一就是更好的性能。
专有的云原生数据库
有许多针对云设计的原生数据库技术,它们没有开源。例如DynamoDB,CosmosDB,Google Cloud Spanner,BigQuery和Snowflake。
共享源(Shared Source DBaaS)DBaaS
在过去的几年中,许多开源数据库供应商通过更改许可证以保护自己免受竞争云巨头的竞争,比如MongoDB将其服务器许可证更改为非开源服务器端公共许可证(SSPL),MongoDB Atlas在云端取得了快速发展。当然还有许多其他开源数据库公司已将其关键组件的许可证更改为某种形式的“共享源许可证”,甚至是专有许可证,比如Redis Labs,Confluent和Elastic都使用了这一策略。与MongoDB不同,他们没有为整个产品更改许可证,因此功能有所减少,但它们仍面临云端的竞争。
开源DBaaS创新需要时间
Linux花费了很多时间成为领先的服务器操作系统,Apache和Nginx花费了很多时间来领导Web服务器市场,MySQL和PostgreSQL成为了应用程序开发的主要关系数据库。相信随着DBaaS的发展,真正可用于任何公有或私有云的开源解决方案也将使DBaaS更加成熟。