SQL সার্ভার 2017 আনুষ্ঠানিকভাবে অক্টোবর 2017 এ প্রকাশিত হয়েছে। SQL সার্ভার 2017-এর প্রথম অংশগুলি 2016 এর শেষ থেকে প্রকাশিত হয়েছে, 2017 এর শেষ পর্যন্ত এটির 10টি রিলিজ রয়েছে।
SQL সার্ভার 2017 সংস্করণটি প্রাথমিকভাবে Linux-এর সাথে সংযুক্ত, SQL-এর ক্ষমতা Linux-এ নিয়ে আসে৷ সংক্ষেপে, আপনি Linux-ভিত্তিক ডকার কন্টেইনারগুলিতে SQL সার্ভার 2017 ব্যবহার করে Linux-এ SQL সার্ভার 2017 ইনস্টল করতে পারেন। SQL সার্ভার 2017 আপনাকে ডেভেলপমেন্ট ল্যাঙ্গুয়েজ বেছে নিতে, এটিকে অন-প্রিমিস বা ক্লাউড-ভিত্তিক ডেভেলপ করতে দেয়।
এই সংস্করণে, SQL সার্ভার 2017 এছাড়াও ডেটাবেস ইঞ্জিন, ইন্টিগ্রেশন পরিষেবা, মাস্টার ডেটা পরিষেবা, বিশ্লেষণ পরিষেবা, ইত্যাদির মতো প্রতিটি অংশে কর্মক্ষমতা, মাপযোগ্যতা এবং বৈশিষ্ট্যগুলিকে উন্নত করে৷ আমরা খন্ড খন্ড করে দেখব।
SQL সার্ভার 2017-এর নতুন বৈশিষ্ট্য
- ডাটাবেস ইঞ্জিনে নতুন বৈশিষ্ট্য
- পরিচয়_ক্যাশে
- উন্নত অভিযোজিত ক্যোয়ারী প্রক্রিয়াকরণ
- স্বয়ংক্রিয় টিউনিং
- গ্রাফ ডিবি-তে নতুন বৈশিষ্ট্য
- গ্রাফ ডিবি কি?
- সর্বদা উপলব্ধ (ক্রস-ডেটা অ্যাক্সেস)
- ডিটিএ-তে উন্নতি
- নতুন স্ট্রিং ফাংশন
- অনুবাদ করুন
- CONCATE_WS
- TRIM
- STRING_AGG
- এসকিউএল 2017-এর SSRS (রিপোর্টিং পরিষেবা) এ নতুন কী আছে
- এসকিউএল 2017-এ SSIS (ইন্টিগ্রেটেড সার্ভিসেস) এ নতুন কি আছে
- এসকিউএল 2017-এ অ্যানালাইসিস সার্ভিসে (SSAS) নতুন কী আছে?
- মেশিন লার্নিং
- লিনাক্স সমর্থন
ডাটাবেস ইঞ্জিনে নতুন বৈশিষ্ট্য
identity_cache
৷
এই বিকল্পটি আপনাকে ID কলামের মানের বিচ্যুতি এড়াতে সাহায্য করে, যদি সার্ভারটি হঠাৎ বন্ধ হয়ে যায় বা একটি ব্যর্থতা সঞ্চালন করে, অথবা এমনকি একটি সেকেন্ডারি সার্ভারে স্যুইচ করে। এটি ডাটাবেস কনফিগারেশন সেটিংস সক্ষম করতে ALTER ডেটাবেস স্কোপড কনফিগারেশন কমান্ডের সাথে ব্যবহার করা হয়। সিনট্যাক্স নিম্নরূপ:
ALTER DATABASE SCOPED CONFIGURATION { { [ FOR SECONDARY] SET } } | CLEAR PROCEDURE_CACHE | SET < set_options > [;] < set_options > ::= { MAXDOP = { | PRIMARY } | LEGACY_CARDINALITY_ESTIMATION = { ON | OFF | PRIMARY } | PARAMETER_SNIFFING = { ON | OFF | PRIMARY } | QUERY_OPTIMIZER_HOTFIXES = { ON | OFF | PRIMARY } | IDENTITY_CACHE = { ON | OFF } }
উন্নত অভিযোজিত ক্যোয়ারী প্রক্রিয়াকরণ
আপনি যদি কোয়েরি কর্মক্ষমতা উন্নত করতে চান, এই নতুন বৈশিষ্ট্যটি উল্লেখযোগ্যভাবে সাহায্য করবে৷ এটি SQL সার্ভার এবং Azure SQL ডেটাবেসে সমর্থিত।
এসকিউএল কোয়েরি চালানোর সময় এটি স্বাভাবিক অপ্টিমাইজেশন প্রক্রিয়া:
- প্রথম, ক্যোয়ারী অপ্টিমাইজার এইমাত্র তৈরি করা ক্যোয়ারীটির জন্য সমস্ত সম্ভাব্য কোয়েরি এক্সিকিউশন প্ল্যান গণনা করবে।
- এরপর, এটি সেরা / দ্রুততম পরিকল্পনা দেখাবে৷ ৷
- অবশেষে, ক্যোয়ারীটি কার্যকর করার জন্য আনুমানিক সেরা পরিকল্পনাটি বেছে নেওয়া হবে এবং তারপরে কার্যকরী প্রক্রিয়া শুরু হবে৷
উপরের প্রক্রিয়াটির নিম্নলিখিত অসুবিধা রয়েছে:
- যদি ভুল পরিকল্পনার অনুমান সর্বোত্তম হয়, তাহলে তা কর্মক্ষমতাকে প্রভাবিত করবে।
- যদি সর্বোত্তম পরিকল্পনা বাস্তবায়নের জন্য অপর্যাপ্ত মেমরি বরাদ্দ করা হয়, একটি মেমরি ওভারফ্লো ত্রুটি ঘটবে৷
এসকিউএল সার্ভার 2017 এই অসুবিধাগুলি কাটিয়ে উঠতে যে বৈশিষ্ট্যগুলি অন্তর্ভুক্ত করেছে তা এখানে রয়েছে:
ব্যাচ মোড মেমরি অনুদান প্রতিক্রিয়া (ব্যাচ মোডের জন্য মেমরি বরাদ্দের বিষয়ে প্রতিক্রিয়া):এই প্রতিক্রিয়া পরিকল্পনাটি কার্যকর করার জন্য প্রয়োজনীয় মেমরির পুনঃগণনা করবে এবং ক্যাশে থেকে এটির জন্য মেমরি বরাদ্দ করবে। পি>
ব্যাচ মোড অভিযোজিত যোগদান (ব্যাচ মোডে অভিযোজিত যোগদান):যোগদানের 2 প্রকার রয়েছে:হ্যাশ এবং নেস্টেড লুপ। যখন এক্সিকিউশন প্ল্যান এন্ট্রিটি প্রথমবার প্রবেশ করানো হয় এবং স্ক্যান করা হয়, তখন এটি নির্ধারণ করে যে সর্বোত্তম গতিতে আউটপুট পেতে কোন যোগদানের ধরন প্রয়োগ করতে হবে।
ইন্টারলিভড এক্সিকিউশন:সর্বোত্তম প্ল্যানটি কার্যকর করার সময়, শুধুমাত্র নিখুঁত উপাদানগুলি গণনা করার জন্য মাল্টি-স্ট্যামেন্ট টেবিল মূল্যবান ফাংশনগুলির সম্মুখীন হলে এই বৈশিষ্ট্যটি "পজ" করবে। এই টেবিলের উপাদান, এবং তারপর অপ্টিমাইজ করা চালিয়ে যান।
স্বয়ংক্রিয় টিউনিং
এই বৈশিষ্ট্যটি ক্যোয়ারী পারফরম্যান্সে সমস্যাগুলি পরীক্ষা করে, সেগুলিকে চিহ্নিত করে এবং প্রস্তাবিত সমাধানগুলির সাথে সমাধান করে৷ এই বৈশিষ্ট্যে উপলব্ধ স্বয়ংক্রিয় টিউনিং কৌশলগুলি হল:
স্বয়ংক্রিয় সংশোধন (পরিকল্পনা):এই কৌশলটি SQL 2017 ডেটাবেসে উপলব্ধ, এটি প্রদত্ত ক্যোয়ারী প্ল্যানে কর্মক্ষমতা সমস্যাগুলি খুঁজে পাবে, তারপর প্রস্তাবিত সমাধানগুলির সাথে সেগুলি ঠিক করবে৷ পি>
অটোমেটিক ম্যানেজমেন্ট (ইনডেক্স):এই কৌশলটি SQL 2017 Azure DB-তে অন্তর্ভুক্ত করা হয়েছে, এটি অ-মানক সূচক মুছে এবং সঠিক যোগ করে সূচকের ক্রম চিহ্নিত করবে এবং সংশোধন করবে সূচক।
গ্রাফ ডিবি-তে নতুন বৈশিষ্ট্য
গ্রাফ ডিবি কী?
মূলত, গ্রাফ ডিবি হল নোড এবং প্রান্তগুলির একটি সেট, প্রান্তটি নোডগুলির মধ্যে সম্পর্ককে প্রতিনিধিত্ব করে, নোডগুলি সত্তা, একটি প্রান্ত অনেক নোডের সাথে সংযুক্ত হতে পারে৷ গ্রাফ ডিবি একটি রিলেশনাল ডাটাবেসের মতো কাজ করে এবং আপনি নিম্নলিখিত ক্ষেত্রে এটি ব্যবহার করতে পারেন:
- যখন একটি শ্রেণীবিন্যাস বিন্যাসে একটি ডাটাবেস থাকে এবং একটি নোডের জন্য একাধিক পিতামাতা সংরক্ষণ করতে চান৷
- যখন আপনাকে লিঙ্ক এবং ডেটা সম্পর্কগুলি পরীক্ষা ও বিশ্লেষণ করতে হবে।
- যখন অনেক সম্পর্ক থাকে (সম্পর্ক)।
এখানে, MATCH কীওয়ার্ডটি গ্রাফ টেবিলকে প্রশ্ন করতে এবং ডেটা সাজানোর জন্য ব্যবহার করা হয়, একটি একক প্রশ্নের সাহায্যে, ব্যবহারকারী গ্রাফ এবং রিলেশনাল ডেটাতে প্রশ্ন করতে পারে৷
সর্বদা উপলব্ধ (ক্রস-ডেটা অ্যাক্সেস)
এই বৈশিষ্ট্যটির সাহায্যে, এখন বিভিন্ন SQL দৃষ্টান্তের মধ্যে ডেটাবেস ক্রস-এক্সচেঞ্জ করা সম্ভব (একটি SQL দৃষ্টান্ত যা অন্যান্য উদাহরণের সাথে সংযোগ করতে পারে)। বিতরণকৃত ডাটাবেসের বিনিময়।
DTA-তে উন্নতি
SQL 2017-এ, ডেটাবেস টিউনিং অ্যাডভাইজার (DTA) এর কর্মক্ষমতার উন্নতি হয়েছে। বিশেষ করে, DTA-এর বিকল্পগুলি যোগ করা হয়েছে।
আপনি যদি না জানেন যে DTA কী, তাহলে:
DTA হল একটি ডাটাবেস টুল যা ক্যোয়ারী প্রসেসিং (প্রসেসড) করে এবং তারপরে ডাটাবেস স্ট্রাকচার পরিবর্তন করে আপনাকে কর্মক্ষমতা উন্নত করতে সাহায্য করার উপায় অফার করে। ডেটা (যেমন সূচক, লক)। DTA নিম্নলিখিত দুটি উপায়ে ব্যবহার করা যেতে পারে:
- GUI (ইন্টারফেস) ব্যবহার করা
- কমান্ড ইউটিলিটি ব্যবহার করুন
নতুন স্ট্রিং ফাংশন
SQL 2017 ব্যবহারকারীদের কিছু নতুন স্ট্রিং ফাংশন দেয় যেমন TRANSLATE, CONCAT_WS, STRING_AGG, TRIM . আসুন একে একে প্রতিটি ফাংশন অন্বেষণ করি।
অনুবাদ করুন
মূলত এই ফাংশনটি একটি অক্ষর নেয় স্ট্রিং ইনপুট ডেটা হিসাবে এবং তারপরে এই অক্ষরগুলিকে কিছু নতুন অক্ষরে রূপান্তরিত করে, নীচের সিনট্যাক্সটি দেখুন:
TRANSLATE (inputString, characters, translations)
উপরের সিনট্যাক্সে 'অক্ষর'-এর দৈর্ঘ্য অবশ্যই 'অনুবাদ'-এর মতোই হতে হবে, অন্যথায় ফাংশনটি একটি ত্রুটির মান প্রদান করবে৷ উদাহরণস্বরূপ:
TRANSLATE ( '6 * {10 + 10} / [6-4]' , '[] {}' , '() ()' )
উপরোক্ত উদাহরণ দ্বারা প্রত্যাবর্তিত ফলাফল হবে 6 * (10 + 10) / (6-4)। আমরা দেখতে পাচ্ছি যে কোঁকড়া বন্ধনী এবং বন্ধনীগুলি বৃত্তাকার বন্ধনীতে রূপান্তরিত হয়েছে।
এই ফাংশনের REPLACE ফাংশনের মতো একই পদ্ধতি রয়েছে, কিন্তু সহজ ব্যবহার হল REPLACE ফাংশনটি প্রতিস্থাপন করা৷ উদাহরণস্বরূপ, যদি আমরা উপরের মত ফলাফলটি ফেরত দিতে চাই তবে ব্যবহার করুন REPLACE ফাংশন, তারপর আমাদের নিম্নলিখিত ফাংশন লিখতে হবে, এটি প্রথম নজরে দেখতে সহজ হবে না:
SELECT REPLACE (REPLACE (REPLACE (REPLACE ( '6 * {10 + 10} / [6-4]' , '{' , '(' ), '}' , ')' ), '[' , '(' ), ']' , ')' );
CONCATE_WS
এই ফাংশনের কাজটি কেবলমাত্র নির্দিষ্ট ডিলিমিটারের সাথে সমস্ত ইনপুট আর্গুমেন্টকে সংযুক্ত করা। অনুগ্রহ করে নীচের সিনট্যাক্সটি পড়ুন:
CONCAT_WS (separator, argument1, argument1 [, argumentN] .)
এই ফাংশনটি বিভাজকগুলির সাহায্যে সমস্ত আর্গুমেন্টকে একত্রিত করে একক স্ট্রিং তৈরি করে, তাই আউটপুট তৈরি করতে কমপক্ষে 2টি আর্গুমেন্টের প্রয়োজন হয়, অন্যথায় ফলাফলটি ত্রুটির বিষয়ে ফিরে আসে৷ উদাহরণ:
SELECTCONCAT_WS (',','গণনা সংখ্যা','এক','দুই','তিন','চার')আসকাউন্টার;
উপরের কমান্ড দ্বারা প্রত্যাবর্তিত ফলাফল হবে:এক, দুই, তিন, চার
আপনি এনক্রিপ্ট করা স্ট্রিংয়ের পরিবর্তে ডাটাবেস কলামের নামও ব্যবহার করতে পারেন৷
TRIM
অবশেষে, এই ফাংশনটি SQL 2017-এও উপস্থিত হয়েছে। এটি মূলত C#-এর ট্রিম ফাংশনের মতো কাজ করে, অর্থাৎ স্ট্রিংয়ের শুরুতে এবং শেষে সমস্ত অতিরিক্ত স্পেস সরিয়ে দেয়। সিনট্যাক্স নিম্নরূপ:
SELECT TRIM ( 'trim me' ) AS result;
উপরের কমান্ড দ্বারা প্রত্যাবর্তিত ফলাফলটি হবে:আমাকে ছাঁটাই
এই ফাংশনটি স্ট্রিং এর মাঝখানে স্পেস মুছে ফেলবে না।
STRING_AGG
এই ফাংশনটি স্ট্রিংয়ের শেষে বিভাজক যোগ না করে বিভাজকগুলির সাহায্যে স্ট্রিংয়ের মানগুলিকে সংযুক্ত করে৷ ইনপুট ডেটা VARCHAR, NVARCHAR হতে পারে, আপনি ঐচ্ছিকভাবে করতে পারেন WITHIN GROUP ক্লজ ব্যবহার করে ফলাফলের প্রদর্শনের ক্রম নির্দিষ্ট করুন।
নীচের সিনট্যাক্স দেখুন:
STRING_AGG (expression, separator) []
:: =
WITHIN GROUP ( ORDER BY [ ASC | DESC ])
অনুগ্রহ করে নিম্নলিখিত উদাহরণটি পড়ুন:
SELECT city,
STRING_AGG (name, ';' ) WITHIN GROUP ( ORDER BY name ASC ) AS names
FROM Students GROUP BY city;
উপরের উদাহরণে, সমস্ত নাম একটি সেমিকোলন (;) দ্বারা জোড়া এবং পৃথক করা হয়েছে৷ GROUP WITHIN ধারাটি আমাদেরকে ক্রমানুসারে সাজাতে সাহায্য করে৷ প্রত্যাবর্তিত ফলাফল হিসাবে প্রদর্শিত হবে৷ অনুসরণ করে:
৷
এসকিউএল 2017-এর SSRS (রিপোর্টিং পরিষেবা) এ নতুন কী আছে
- এখন থেকে, এসকিউএল সার্ভার সেটিংসে এসএসআরএস সেট আপ করা আর উপলব্ধ নেই, আপনাকে এটি ডাউনলোড স্টোর থেকে [এখানে] ডাউনলোড করতে হবে।
- এখন থেকে, ক্যোয়ারী ডিজাইনার DAX সমর্থন করবে৷ SSAS (বিশ্লেষণ পরিষেবাগুলি) প্রতিরোধ করতে নেটিভ DAX প্রশ্নগুলি তৈরি করা যেতে পারে৷ এই বৈশিষ্ট্যটি SQL টুলস এবং রিপোর্ট নির্মাতাদের সর্বশেষ আপডেটে প্রদর্শিত হবে৷
- OpenAPIcommands RESTful API দ্বারা সমর্থিত, এবং এখন RESTful API SSRS দ্বারা সমর্থিত৷
- এখন থেকে, আপনি আপনার মন্তব্যে আরও ফাইল সংযুক্ত করতে পারবেন।
- আপনি প্রতিবেদনে মন্তব্যও যোগ করতে পারেন।
- রিপোর্টিং পরিষেবা পোর্টালটি উল্লেখযোগ্যভাবে আপগ্রেড করা হয়েছে (এই বৈশিষ্ট্যটি SQL 2016 এ উপলব্ধ)।
এসকিউএল 2017-এ SSIS (ইন্টিগ্রেটেড সার্ভিসেস) এ নতুন কী আছে
এখন থেকে আপনি Linux-এ SSIS করতে পারবেন, ভলিউম বাড়াতে পারবেন এবং সরাসরি Linux-এ ডেটা এক্সট্র্যাক্ট ও কনভার্ট করতে পারবেন।
স্কেলিং বৈশিষ্ট্যটি অনেকগুলি উচ্চ-পারফরম্যান্স মেশিন সহ জটিল সমন্বিত সিস্টেমকে অনুমতি দেয়৷ স্কেলিং বৈশিষ্ট্যটি স্কেল আউট মাস্টার এবং স্কেল আউট কর্মীদের সাহায্যে সমস্ত ক্রিয়াকলাপ সম্পাদন করতে পারে৷
এসকিউএল 2017-এ বিশ্লেষণ পরিষেবাগুলিতে (SSAS) নতুন কী আছে?
- Get Data-এর নতুন ইন্টারফেস SQL 2017-এ MS Excel, power BI-এর মতোই প্রকাশ করা হয়েছে। ডেটা ট্রান্সফরমেশন এবং ডেটা ম্যাশআপ বৈশিষ্ট্য ছাড়াও আপনি ক্যোয়ারী জেনারেটর এবং M এক্সপ্রেশন ব্যবহার করে তা করতে পারেন। li>
- SSAS-এর জন্য ট্যাবুলার মোড - SQL 2012 সালে প্রবর্তিত একটি সাম্রাজ্য, এখন SQL 2017-এ উল্লেখযোগ্যভাবে আপগ্রেড করা হয়েছে।
- SQL 2017 নতুন এনকোডিং ইঙ্গিত দেয়, যা বড় মেমরিতে টেবিল ডেটা অপ্টিমাইজ করতে ব্যবহৃত হয়৷
- PIVOT-এর জন্য কর্মক্ষমতা উন্নত করুন।
মেশিন লার্নিং
আমরা সবাই জানি যে SQL 2016 বর্তমানে R পরিষেবাগুলিকে সমর্থন করে, এবং এখন থেকে, এই পরিষেবাটির নাম পরিবর্তন করে SQL সার্ভার মেশিন লার্নিং পরিষেবা দেওয়া হবে৷ এই পরিবর্তনের সুবিধা হল আপনি করতে পারেন৷ SQL সার্ভারে R বা Python কমান্ডের সিস্টেম সহজেই ব্যবহার করুন।
এই নতুন বৈশিষ্ট্যের সাথে, Python সঞ্চিত পদ্ধতিতে চলতে পারে। এমনকি আপনি SQL সার্ভারের মাধ্যমে দূরবর্তীভাবে কমান্ড চালাতে পারেন, যা পাইথন ডেভেলপারদের জন্য সত্যিই দরকারী। যাইহোক, এই বৈশিষ্ট্যটি বর্তমানে নেই এখনও লিনাক্সে সমর্থিত, অনুগ্রহ করে পরবর্তী আপগ্রেডের জন্য অপেক্ষা করুন।
আরও দক্ষ এবং সর্বোত্তম উপায়ে মেশিন লার্নিং ব্যবহার করতে, SQL নিম্নলিখিত সমাধানগুলি ব্যবহার করে:
- রিভোস্কেলেপি একটি নতুন ধরনের লাইব্রেরি যা উচ্চ-কর্মক্ষমতা অ্যালগরিদম, গণনা এবং দূরবর্তী পরিস্থিতির ভিত্তি হিসেবে কাজ করে। মূলত revoscalepy হল RevoScaleR প্ল্যাটফর্মের উপর ভিত্তি করে (একটি R পরিষেবা প্যাক)।
- microsoftml একটি Microsoft R সার্ভার ক্লাস্টার যা মেশিন ল্যাঙ্গুয়েজ অ্যালগরিদমকে সমর্থন করে, মাইক্রোসফ্ট অভ্যন্তরীণভাবে মেশিন লার্নিংয়ের জন্য এই লাইব্রেরিটি তৈরি করেছে৷ কিন্তু বছরের পর বছর ধরে, এটি উন্নত হয়েছে এবং এখন মাইক্রোসফ্ট বৃহৎ নথির রূপান্তরের পাশাপাশি দ্রুত ডেটা স্থানান্তর সমর্থন করে৷
লিনাক্স সমর্থন
মূলত, "লিনাক্স এবং উইন্ডোজে এসকিউএল 2017" নাম থেকে আমরা জানতে পারি যে এই আপগ্রেডের মূল উদ্দেশ্য হল লিনাক্স প্ল্যাটফর্মে পণ্য প্রকাশকে সমর্থন করা। এখানে রয়েছে "লিনাক্সে এসকিউএল" এর কিছু মূল বৈশিষ্ট্য:
- মূল ডেটাবেস সংরক্ষণ করার ক্ষমতা
- IPV6 সমর্থন করুন
- NFS সমর্থন
- লিনাক্সে AD যাচাই করুন
- এনক্রিপশন সমর্থন
- লিনাক্সে SSIS ইনস্টল করতে পারেন
- MSSQL-conf কমান্ড টুল উপলব্ধ
- ইন্সটলেশন প্রক্রিয়াকে নিরবিচ্ছিন্ন এবং উদারীকরণ করুন
- ভিজ্যুয়াল স্টুডিও কোরের জন্য এসকিউএল (ভিএস কোর লিনাক্সে উপলব্ধ)
- ক্রস প্ল্যাটফর্ম স্ক্রিপ্ট জেনারেটর
সারাংশ
SQL সার্ভার সম্পর্কে আরও অনেক কিছু বলার এবং শেখার আছে, আমরা পরবর্তী বিভাগে এই যাত্রা চালিয়ে যাব। মন্তব্য এবং প্রশ্ন জিজ্ঞাসা করতে দ্বিধা করবেন না!
আরো দেখুন:
- উইন্ডোজে লিনাক্স সফ্টওয়্যার চালানোর ৭ উপায়
- উইন্ডোজ এবং লিনাক্সের মধ্যে ৮টি প্রধান পার্থক্য
- MS SQL সার্ভারে ডাটাবেস লগ ইন করার উপায়
- এমএস এসকিউএল সার্ভারে কীভাবে পরিষেবাগুলি শুরু এবং বন্ধ করবেন