18、提升 Azure SQL 性能与利用多模型能力的综合指南

提升 Azure SQL 性能与利用多模型能力的综合指南

1. 原生编译存储过程

原生编译存储过程是将 T - SQL 存储过程编译为机器代码,而非像常规存储过程那样由查询执行引擎解释执行。它与 Azure SQL 中的内存中 OLTP 表配合使用,能为应用程序中对性能要求极高的频繁执行查询提供极快的响应时间。
- 性能优势 :使用原生编译存储过程的性能优势会随着处理的行数和逻辑量的增加而提升。在执行聚合操作、对大量行进行嵌套循环连接、多语句的选择、插入、更新和删除操作,或复杂的过程逻辑(如条件语句和循环)时效果最佳。
- 执行流程
- 当使用传统解释型 Transact - SQL 语句访问内存中 OLTP 表时,查询处理流程与基于磁盘的表非常相似,只是行数据是从内存引擎而非传统缓冲池中检索。
- 当使用原生编译存储过程时,过程分为两部分。首先,解析器、代数器和优化器为存储过程中的所有查询创建优化的查询执行计划,然后将存储过程编译为本地代码并存储在 .dll 文件中。当调用存储过程时,内存中 OLTP 运行时定位存储过程的 DLL 入口点,执行 DLL 中的机器代码,并将结果返回给客户端。
- 创建示例

create or alter procedure cache.[Test]
with native_compilation, schemabinding
as
begin atomic with (transaction isolation level = snapsho
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值