Natively Compiled Scalar User-Defined Function(Udf) Nedir ve Nasıl Kullanılır?

Memory Optimized tablolar için SQL Server 2016 sürümünde Scalar User-Defined Function oluşturabiliyoruz. In Memory OLTP ve Memory Optimized Tablolar için “In Memory OLTP Nedir? Ve Nasıl Kullanılır?” isimli makalemi okumanızı öneririm.

 

Natively Compiled Scalar User-Defined Function’da fonksiyoniçindeki TSQL kodları daha iyi performans sağlayabilmek için native koda dönüştürülür.

 

Önceki makalemizde Memory Optimized Tablo’ların, Disk Based Tablolara göre performans olarak 5-30 kat daha iyi olduğunu söylemiştik. Memory Optimized Tabloları Natively Compiled Stored Procedure’le ve Natively Compiled Scalar User-Defined Function ile birlikte kullandığımızda bu fark daha da artıyor. Hızını görmek için test yapmanızı öneririm. Makalenin devamında gerekli kodu paylaşacağım.

 

Natively Compiled Stored Procedure Nedir ve Nasıl Kullanılır?” isimli makaleyi de okumak isteyebilirsiniz.

 

 

Aşağıdaki şekilde kullanabilirsiniz.

 

 

USE [Test]
GO

CREATE FUNCTION [dbo].[NativelyCompiledFunctionOrnek](@Deger int) RETURNS BIGINT WITH NATIVE_COMPILATION, SCHEMABINDING
AS
BEGIN ATOMIC WITH (TRANSACTION ISOLATION LEVEL = SNAPSHOT, LANGUAGE = N'English')

DECLARE @sonuc BIGINT=0;
WHILE @Deger < 50000
BEGIN
SET @sonuc+=@Deger;
SET @Deger=@Deger+1;
END
RETURN @sonuc;
END

--Aşağıdaki şekilde çalıştırabilirsiniz
--DECLARE @sonuc BIGINT;
--SELECT @sonuc=dbo.NativelyCompiledFunctionOrnek (0)
--Select @sonuc;

 

Bir cevap yazın

Your email address will not be published. Required fields are marked *.

*
*

Lütfen captcha kodunu giriniz *

Lütfen Resimdeki Kodu Boşluğa Giriniz.
You may use these <abbr title="HyperText Markup Language">HTML</abbr> tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>