无服务器时代,SQLServer如何应对?
1. 了解无服务器时代
随着云计算技术的飞速发展,无服务器时代如今已经到来。那么什么是无服务器时代呢?
无服务器架构并不意味着没有服务器,而是要求开发者将应用程序分解为离散功能单元,每个单元都可以包含容器、云函数、逻辑应用等部分。这些单元部署在云上。进行应用开发的人员依靠云提供商所提供的基础设施和管理服务,来构建应用。
在无服务器架构中,各应用功能模块以事件驱动方式运行,在需要时才会被自动调用。每一功能单元只会负责一种单独的功能,而无需关注集成和管理等问题。无服务器应用的最大好处在于,可以自由地缩放、具有免部署的能力,并可针对个人需求进行付费。这样,就可以大大提高应用的可靠性和可扩展性。
2. 无服务器时代下SQLServer的挑战
SQLServer面对着无服务器时代的问题,在哪里?
随着微软在云计算市场上的崛起,它的重点产品SQLServer开始进入云时代。微软 SQLServer 的云服务 Azure SQL Database(SQLDB)已经是企业市场的主力军之一。不过,跟据开发者的使用情况,SQLServer面对着以下问题:
2.1 限制在AzureSQLDatabase同质化
尽管AzureSQLDatabase是微软强有力的云数据库服务,但对于企业级应用而言,同质化率过高的问题仍然需要考虑,这意味着在企业级应用为个性化的应用逻辑特别制定数据库组合或者参数调整都无法实现。
2.2 对企业数据库管理的力度下降
云时代为了提高云数据库管理的效率,大多数云数据库的运营商采用了自动管理的方式。 AzureSQLDatabase的自动管理有一套与传统数据库管理不同的管理方式。例如,为了增强硬件资源利用率,管理服务器采取了自动调整内存和 CPU 百分比的策略。但是,这样的自动化资源分配往往是运营商而非用户控制,使用者无法通过配置文件、 Profiler 或相关工具来进行详解调整。
3. 无服务器时代下SQLServer的应对方案
既然知道了SQL Server在无服务器时代面对的问题所在,那么SQL Server面对这些问题应该采取什么应对方案呢?
3.1 异构数据库整合
首先,为了解决同质化的问题,SQL Server应该提供可以和互相不同数据库(如NoSQL数据库)集成的工具,专业使用者可以根据需要选择合适的工具进行集成使用。
3.2 最佳实践推荐
其次,SQL Server应该推出最佳实践推荐,根据个人的需要和偏好进行调整。例如Microsoft SQLServer Query Store可以提供数据库级别的性能监视功能,通过收集和保存查询历史记录,为SQLServer查询性能调优提供可靠的数据。此外Microsoft官网提供了很多有关SQLServer最佳实践的知识。
总结
SQLServer面临无服务器时代的挑战,但我们也有解决的方案,要提高自己在无服务器时代下SQL Server的竞争力,我们需要从以下两个方面考虑:异构数据库整合和最佳实践推荐!