चयन के रूप में बाहरी तालिका बनाएँ (CETAS)
यह इकाई CREATE EXTERNAL TABLE AS SELECT (CETAS) कमांड और इससे मिलने वाले लाभों पर करीब से नज़र डालती है।
CETAS Azure ब्लॉब संग्रहण, Azure डेटा लेक संग्रहण, S3-संगत ऑब्जेक्ट संग्रहण और बाहरी डेटाबेस का समर्थन करता है। CETAS CSV या लकड़ी की छत फ़ाइलों के रूप में फ़ाइल स्वरूपों को निर्यात करने का भी समर्थन करता है।
CETAS की सबसे शक्तिशाली क्षमता अन्य SELECT संचालन के साथ संयोजन करना है, जैसे OPENROWSET या अन्य बाहरी तालिकाओं के साथ संयोजन। यह संयोजन सीईटीएएस को विभिन्न और लचीले तरीकों से उपयोग करने की अनुमति देता है।
CETAS के लिए मामलों का उपयोग करें
सीईटीएएस के लिए कई अलग-अलग उपयोग के मामले हैं, लेकिन तीन प्रमुख हैं:
- रिपोर्टिंग
- डेटा टियरिंग या ऑफ़लोडिंग
- डेटा निर्यात हब
रिपोर्टिंग
CETAS के लिए सबसे स्पष्ट उपयोग मामला PolyBase और SQL सर्वर लचीलेपन की सभी क्षमताओं का उपयोग करके रिपोर्टिंग को सरल बनाने के लिए है। आप किसी भी समर्थित डेटा स्रोत, तालिका या फ़ाइल से कनेक्ट कर सकते हैं और परिणामों में फेरबदल करने और निर्यात करने के लिए T-SQL का उपयोग कर सकते हैं. उदाहरण के लिए, रिपोर्टिंग उपकरण SQL सर्वर से कनेक्ट करने के बजाय, आप सभी आवश्यक क्वेरीज़ निष्पादित करने के लिए CETAS का उपयोग कर सकते हैं, परिणाम को एक लकड़ी की छत फ़ाइल के रूप में निर्यात करें, और रिपोर्टिंग उपकरण को निर्यात किए गए डेटा पर इंगित करें।
डेटा टियरिंग या ऑफ़लोडिंग
एक अन्य सामान्य परिदृश्य संग्रह या केवल-पढ़ने के लिए डेटा SQL सर्वर तालिकाओं से दूरस्थ संग्रहण करने के लिए निर्यात कर रहा है, लेकिन अभी भी यह सामान्य रूप से बाहरी तालिकाओं के माध्यम से क्वेरी कर रहा है। इस तरह, आप SQL सर्वर पर केवल सक्रिय डेटा रख सकते हैं, संसाधनों की बचत कर सकते हैं, लेकिन फिर भी जब भी आवश्यकता हो, पारदर्शी तरीके से डेटा तक पहुँच सकते हैं। एप्लिकेशन के दृष्टिकोण से, यह एक नियमित एसक्यूएल सर्वर तालिका तक पहुंचने जैसा है।
उदाहरण के लिए, कल्पना करें कि आपकी order तालिका में पिछले वर्षों का ऐतिहासिक डेटा है जो बदलता नहीं है, लेकिन आपको अभी भी इसे पूरी तरह से सुलभ होने की आवश्यकता है। CETAS सभी order तालिका डेटा को किसी अन्य स्थान पर निर्यात करने में मदद कर सकता है, डेटाबेस आकार और आवश्यक रखरखाव समय को कम कर सकता है। बाहरी तालिका के साथ, निर्यात किया गया डेटा एक नियमित तालिका की तरह व्यवहार करता है।
डेटा निर्यात हब
SQL Server 2025 को डेटा हब के रूप में उपयोग करके, आप CETAS को Oracle, Teradata, ODBC या SQL सर्वर के अन्य संस्करणों जैसे अन्य डेटा स्रोतों से कनेक्ट करने सहित सभी मौजूदा PolyBase क्षमताओं के साथ संयोजित कर सकते हैं.
CETAS आवश्यकताएँ
SQL सर्वर 2025 में CETAS का उपयोग करने के लिए, आपको का उपयोग करके गुण ALLOW POLYBASE EXPORT को सक्षम करने की आवश्यकता है sp_configure। विवरण के लिए, अगला अभ्यास देखें।
CETAS अनुमतियाँ
CETAS का उपयोग करने के लिए, आपको अनुमति के तीन अलग-अलग स्तरों की आवश्यकता है:
डेटा स्रोत तक पहुँचने और पढ़ने की अनुमति. यदि डेटा SQL सर्वर के बाहर स्थित है, तो किसी नेटवर्क साझा या किसी अन्य डेटाबेस सर्वर पर, SQL सर्वर सेवा खाते को डेटा स्रोत तक पहुँचने की अनुमति होना आवश्यक है।
CETAS आदेश का उपयोग करने के लिए SQL Server 2025 पर अनुमति। डेटाबेस उपयोगकर्ता के लिए CETAS आदेश निष्पादित करने के लिए, उन्हें बल्क ऑपरेशन को प्रशासितकी आवश्यकता होती है, किसी भी बाहरी डेटा स्रोतको बदलते हैं, और किसी भी बाहरी फ़ाइल स्वरूप अनुमतियों को बदल हैं।
CETAS परिणाम लिखने के लिए गंतव्य पर अनुमति लिखें. गंतव्य, लकड़ी की छत, या CSV फ़ाइल में लिखने में सक्षम होने के लिए, उपयोगकर्ता को गंतव्य पर लिखने की अनुमति की आवश्यकता होती है। उदाहरण के लिए, Azure ब्लॉब संग्रहण या Azure डेटा लेक संग्रहण पर लिखने के लिए, उपयोगकर्ता को उन गंतव्यों पर LIST, READ, CREATEऔर WRITE अनुमतियाँ चाहिए.
CETAS के लिए अनुमतियों के बारे में अधिक जानकारी के लिए, देखें के रूप में बाहरी तालिका बनाएँ चयन करें (CETAS) अनुमतियाँ.
CETAS समर्थित प्रारूप
CETAS इनपुट के रूप में SELECT कमांड का उपयोग करके डेटा की एक स्ट्रीम प्राप्त करता है, और परिणामों को CSV या लकड़ी की छत प्रारूप में निर्यात करता है। इनपुट OPENROWSET परिणामों सहित SELECT कमांड के समान स्वरूपों का समर्थन करता है।
इनपुट आपकी SQL Server आवृत्ति पर स्थानीय रूप से चलने वाली तालिका, OPENROWSET कार्रवाई के माध्यम से पहुँच प्राप्त नेटवर्क फ़ाइल, अन्य डेटाबेस सिस्टम में कोई तालिका, या Azure ब्लॉब संग्रहण, Azure Data Lake संग्रहण या S3-संगत ऑब्जेक्ट संग्रहण पर संग्रहीत डेल्टा फ़ाइल हो सकती है.
- समर्थित स्वरूपों की पूरी सूची के लिए, बाह्य फ़ाइल स्वरूप बनाएँ देखें.
- समर्थित डेटा स्रोतों की पूरी सूची के लिए, बाह्य डेटा स्रोत बनाएँदेखें.
- OPENROWSET का उपयोग करके दूरस्थ फ़ाइलों तक पहुँचने के बारे में जानने के लिए, OPENROWSET देखें.
CETAS T-SQL संरचना
CETAS को बेहतर ढंग से समझने के लिए, आप समग्र T-SQL सिंटैक्स को तोड़ सकते हैं। CETAS T-SQL संरचना एक नीचे-ऊपर तर्क दृष्टिकोण का अनुसरण करती है। कथन के अंत में शुरू करना आसान है, और फिर T-SQL कथन के शीर्ष पर अपना काम करें।
- CETAS संरचना के निचले भाग में एक SELECT कथन होता है जिसका उपयोग आप यह परिभाषित करने के लिए करते हैं कि कौन सा डेटा निर्यात करना है।
- बीच में, ऐसे वैकल्पिक पैरामीटर हैं जिनका उपयोग आप उस डेटा को अस्वीकार करने के लिए कर सकते हैं जिसे आप निर्यात नहीं करना चाहते हैं।
- CETAS कथन के शीर्ष पर, बाहरी तालिका बनाएं घोषित करने के बाद, आप गंतव्य स्थान, फ़ाइल नाम और फ़ाइल स्वरूप के बारे में जानकारी जोड़ते हैं।
यह संरचना CETAS को SQL सर्वर के बाहर, SQL सर्वर के भीतर, या किसी अन्य समर्थित डेटाबेस से डेटा क्वेरी करने के लिए किसी भी SELECT कथन के साथ संयोजित करने की अनुमति देती है। SQL सर्वर 2025 स्वचालित रूप से फ़ाइल नाम बनाता है और अनुकूलन के लिए परिणामों को कई फ़ाइलों में विभाजित करता है। उदाहरण के लिए, लकड़ी की छत के रूप में निर्यात की गई तालिका निर्यात किए गए डेटा आकार के आधार पर कई फाइलें उत्पन्न कर सकती है। चयन कथन बाहरी तालिका स्तंभ परिभाषा और प्रकार को परिभाषित करता है.
SQL सर्वर से लकड़ी की छत के रूप में एक तालिका निर्यात करें
निम्न उदाहरण SQL सर्वर से कोई तालिका लकड़ी की छत के रूप में निर्यात करने के लिए CETAS का उपयोग करता है:
CREATE EXTERNAL TABLE ext_sales
WITH (
LOCATION = '/cetas',
DATA_SOURCE = s3_eds,
FILE_FORMAT = ParquetFileFormat
) AS
SELECT *
FROM AdventureWorks2025.[Sales].[SalesOrderDetail];
एक डेल्टा फ़ाइल पढ़ें और लकड़ी की छत के रूप में निर्यात करें
निम्न उदाहरण डेल्टा फ़ाइल को पढ़ने और लकड़ी की छत के रूप में निर्यात करने के लिए CETAS का उपयोग करता है:
CREATE EXTERNAL TABLE Delta_to_Parquet
WITH (
LOCATION = N'/backup/sales',
DATA_SOURCE = s3_parquet,
FILE_FORMAT = ParquetFileFormat
) AS
SELECT *
FROM OPENROWSET(BULK N'/delta/sales_fy22/',
FORMAT = 'DELTA',
DATA_SOURCE = 's3_delta') AS [r];
अगले अभ्यास में, आप CETAS का उपयोग निम्न के लिए करते हैं:
- लकड़ी की छत के रूप में एक तालिका निर्यात करें।
- ठंडे डेटा को डेटाबेस से स्टोरेज में ले जाएं।
- संग्रहीत डेटा तक पहुँचने के लिए कोई बाह्य तालिका बनाएँ.
- क्वेरी कार्यनीतियों के रूप में दृश्यों, वाइल्डकार्ड खोज, फ़ोल्डर निष्कासन और मेटाडेटा का उपयोग करें.