افزونههای Python و R برای سرور SQL باید گفت طی دهه اخیر، دانش دادهها برای خیلی از برنامههای کاربردی سازمانی ضروری شده است. زبانهایی مانند Python و R عرصه دانشمندان دادهها را خالی کرده و بیشتر توسط مهندسان داده پشتیبانی میگردد. درحال حاضر افزونه های زبان Python و R رایجترین زبانهای علم دادهها هستند که برای ایجاد، آموزش و رتبه دهی مدلها استفاده میشوند. مدرنیزاسیون همچنین روند استفاده از این زبان ها را تسریع کرده است که با بهرهگیری از مزایای Cloud، مدلها و الگوریتمهای یادگیری ماشین را بطور In-Database فعال میکنند.
پشتیبانی افزونه های زبان Python و R
درSQL Server سال 2016 تا 2019 ما پشتیبانی زبان Python وR را اضافه نمودیم که اجرای ایمن برنامههای کاربردی Python و R را در ساختار Query سرور SQL فعال میکند. این امر به سناریوهای مانند اجرای متنهای پیشرفته و امور مربوط به آمادهسازی دادهها، ارتباط با APIهای خارجی به منظور دریافت دادهها و همچنین آموزش مدلهای یادگیری ماشین و رتبه دهی به مدل را امکان پذیر می کند. پیش از این ما افزونه Java را اعلام کردیم. امروز ما در حال اشتراک این مطلب هستیم که زبانهای Python و R را برای SQL Server و برای Windows و هم برای Linux در GitHub، را Open Source نمودهایم.
استفاده از Runtime برای سرور SQL
این افزونهها آخرین نمونههایی هستند که از معماری زبان برنامهنویسی و توسعه پذیری استفاده میکنند که امکان یکپارچهسازی با نوع جدیدی از افزونه زبان را ممکن میسازد. این معماری جدید به مشتریان این آزادی عمل را میدهد تا Runtime خود را وارد کرده و با استفاده از آن Runtime در SQL Server، برنامههای خود را اجرا کنند و در همین حین از امنیت و حفاظت موجود که زبان برنامهنویسی و توسعه پذیری SQL Server فراهم کرده بهره ببرند.
انتخاب Runtime و انعطاف در پراکندگی افزونه های زبان Python و R
انتخاب Runtime انعطافی ایجاد میکند تا پراکندگیهای گوناگونی از Python و R را انتخاب کنیم و همانطور که نسخههای جدیدتر Runtimeهای Python و R منتشر میشوند، این معماری بروزرسانی Runtimeهای Python و R را سادهتر انجام میدهد.
افزونه های زبان Python و R و استفاده برای سرور SQL
همانگونه که قبلا گفته شد ما برای پشتیبانی افزونه های Python و R را اضافه کردیم، حال که مشکل پشتیبانی وجود ندارد، ببینیم که Python و R کدام موارد استفاده را درون SQL Server فعال میکند. نزدیکتر کردن بارهای کاری Python و R به دادهها، احتمالات بسیاری را فراهم میکند:
- اسکریپتهای Python و R را راهاندازی کرده تا آمادگی دادهها و پردازش هدفمند آنها صورت گیرد.
- درون دیتابیس مدلهای یادگیری ماشین را آموزش میدهد.
- مدلها و اسکریپتهای خود را در دستورالعملهای ذخیرهای تولید پیادهسازی میکند.
- این امر در زمان لزوم بازیابی دادهها از SQL Server و انتقال آنها به لایه برنامه کاربردی به منظور انجام فرآیندهای تجاری از تاخیر و جابجایی غیرضروری دادهها جلوگیری میکند.
- Loginها و نقشهای Data Security Model دیتابیس به اسکریپتهای خارجی گسترش مییابند.
- از جعل هویت جلوگیری میشود
- نصب را از بدافزارها در امان نگه میدارد
چرا Open Source و افزونه های زبان Python و R
افزونه زبان Python و R از Extensibility Framework API برای SQL Server استفاده میکند تا با SQL Server ارتباط برقرار کند و تبادل دادهها را انجام دهد. این API بطور عمومی مستند شده است. API مورد نظر در ترکیب با کد Open Source افزونه زبان Python و R، یک نمونه پیادهسازی End to End از چگونگی ساخت یک افزونه زبان برنامهنویسی ارائه میدهد. این امر ساخت افزونههای اضافی زبان برنامهنویسی برای SQL Server را از سوی مجموعه سادهتر میکند. دوست دارید تا کدام افزونههای زبان را ببینید؟