Apa itu Ekstensi Bahasa SQL Server?

Berlaku untuk: SQL Server 2019 (15.x) dan versi yang lebih baru

Ekstensi Bahasa adalah fitur SQL Server yang digunakan untuk mengeksekusi kode eksternal. Data relasional dapat digunakan dalam kode eksternal menggunakan kerangka kerja ekstensibilitas. Di runtime SQL Server 2019 (15.x) dan versi yang lebih baru, runtime Java, C#, Python, dan R didukung.

Catatan

Untuk menjalankan Python atau R di SQL Server, lihat dokumentasi Layanan Pembelajaran Mesin dengan Python dan R. Dengan SQL Server 2019 (15.x) dan versi yang lebih baru, Anda dapat menggunakan runtime Python dan R kustom dengan Ekstensi Bahasa. Untuk informasi selengkapnya, lihat Menginstal runtime kustom Python untuk SQL Server dan Menginstal runtime kustom R untuk SQL Server.

Apa yang dapat Anda lakukan dengan Ekstensi Bahasa

Ekstensi Bahasa menggunakan kerangka kerja ekstensibilitas untuk mengeksekusi kode eksternal. Eksekusi kode diisolasi dari proses mesin inti, tetapi sepenuhnya terintegrasi dengan eksekusi kueri SQL Server. Anda dapat menjalankan kode di sumber data, menghilangkan kebutuhan untuk menarik data di seluruh jaringan.

Bahasa eksternal didefinisikan dengan CREATE EXTERNAL LANGUAGE. Prosedur tersimpan sistem sp_execute_external_script digunakan sebagai antarmuka untuk menjalankan kode.

Ekstensi Bahasa memberikan beberapa keuntungan:

  • Keamanan data. Mendekatkan eksekusi bahasa eksternal ke sumber data menghindari pergerakan data yang tidak aman.

  • Kecepatan. Database dioptimalkan untuk operasi berbasis set.

  • Kemudahan penyebaran dan integrasi. SQL Server adalah titik pusat operasi untuk banyak tugas dan aplikasi manajemen data lainnya. Dengan menggunakan data dalam database, Anda memastikan bahwa data yang digunakan oleh ekstensi bahasa konsisten dan terbaru.

Integrasi Runtime Bahasa Umum asli memungkinkan Anda menerapkan beberapa fungsi SQL Server dengan bahasa .NET. Untuk diskusi tentang perbedaan antara ekstensi bahasa SQL CLR dan SQL, lihat Membandingkan Ekstensi Bahasa SQL Server dengan SQL CLR.