我刚刚在Azure中创建了一个新的SQL Server数据库,然后使用Azure门户中的链接在Visual Studio 2015中打开它。我不得不将我的IP添加到防火墙中,但除此之外,过程进行得很顺利。
然而,当我尝试通过SQL server对象资源管理器与数据库服务器交互时,速度非常慢。展开数据库中的任何文件夹(例如Tables
文件夹)都需要10到30秒。该数据库是全新的,因此它唯一拥有的东西是Azure在实例化新数据库时创建的任何东西。
这是我创建并尝试在Visual Studio中查看的第二个Azure DB,两者都有相同的问题。对于第一个,我想我可能在设置过程中做错了什么,但这次我确保按照规定做每件事。
从Visual Studio中对数据库运行实际查询(右键单击数据库、New Query ...
、select * from INFORMATION_SCHEMA.TABLES;
)非常快,因此我与Azure的连接似乎没有问题。
为什么速度如此缓慢?我能做些什么让它更快?
我在Windows 10上使用Visual Studio 2015 Update 1(14.0.24720.00
)(完全修补),在创建数据库的过程中,我选中了使用最新版本的复选框。
更详细地说,当前SSDT的机制是组合最小数量的查询,以最大限度地减少与SQL服务器/数据库的往返操作数量,因此每个查询执行时间更长。在执行查询时,它会影响SQL Server对象资源管理器的交互性。
为了增强,SSDT团队正在修改Azure SQLDB的设计,以提供更快的交互体验,同时保持基于模型的数据库开发的优势。
披露:我在SQL数据工具团队担任PM
@eric kang在他的评论中给出了使用"服务器资源管理器"而不是"SQL Server对象资源管理器"的好建议-这对基本数据查询更好,因为它实际上可以在实时中使用