Table of Contents
कोर SQL अवधारणाओं हर डेटा इंजीनियर को पता होना चाहिए
डेटा इंजीनियरिंग साक्षात्कार SQL पर भारी जोर देते हैं क्योंकि यह डेटा निष्कर्षण, परिवर्तन और लोडिंग प्रक्रियाओं की रीढ़ है। साक्षात्कारकर्ता केवल अपने प्रश्नों को सही ढंग से लिखने की क्षमता का मूल्यांकन नहीं करते हैं बल्कि डेटाबेस को कैसे निष्पादित करता है, इसकी आपकी समझ भी करते हैं। निम्नलिखित अवधारणाओं में से मास्टर आपको सबसे आम तकनीकी चुनौतियों को संभालने में मदद करेगा।
WHERE के साथ SELECT और फ़िल्टरिंग
बयान डेटा को पुनः प्राप्त करने के लिए मूलभूत उपकरण है। हालांकि, डेटा इंजीनियर शायद ही कभी पूरी तालिकाओं को क्वेरी करते हैं। क्लॉज के साथ फ़िल्टर करना कुशलतापूर्वक डेटासेट को संकीर्ण करने के लिए आवश्यक है। जैसे ऑपरेटरों को समझें, ], , और ] काम, और के अंदर कार्यों का उपयोग करने के प्रदर्शन निहितार्थ के बारे में जागरूक होना चाहिए ]. उदाहरण के लिए, एक कार्य में एक स्तंभ लपेटना (उदाहरण के लिए, ]]]]]] अक्सर सूचकांक के बजाय अक्सर सूची में उपयोग करने की स्थिति का उपयोग करने की तरह की स्थिति का उपयोग करने की स्थिति को रोकता है।
जॉइन्स: द आर्ट ऑफ़ कॉम्बिनिंग टेबल्स
डेटा इंजीनियरिंग सामान्य स्कीमा के आसपास घूमती है, जो दैनिक आवश्यकता में शामिल होती है। ]INNER JOIN], LEFT JOIN], right JOIN]], ]]]]]], ], और CROSS JOIN] अभ्यास प्रश्न जो कई से अधिक मूल्यवान संबंधों को संभालने में शामिल होता है।
समूह और एकत्रीकरण के साथ HAVING
डेटा एकत्र करना डेटा इंजीनियरिंग के लिए कोर है। पांच मूलभूत कार्यों में मास्टर: , )], [[FLT: 11]], [[FLT: 1]]], [[FLT: 13]]]]. उन्हें [FLT: 14]] के साथ जोड़ा गया ताकि श्रेणियों के अनुसार डेटा को संक्षेप में प्रस्तुत किया जा सके। [FLT: 15] के साथ पंक्तियों को फ़िल्टर करने के बीच अंतर को समझें (Aggregation से पहले) और [FLT: 16]] के साथ फ़िल्टरिंग समूहों (Aggregation के बाद)। उदाहरण के लिए, 100 से अधिक बिक्री वाले उत्पादों को खोजने के लिए: [FLT: 17]]]।
Subqueries and Common Table Expressions (CTE)
सबक्वायरी एक दूसरे के अंदर घोंसला करने की अनुमति देते हैं, जो जटिल तर्क को सक्षम करते हैं। हालांकि, सीटीई (] का उपयोग अक्सर पठनीयता और पुन: प्रयोज्यता के लिए पसंद किया जाता है। डेटा इंजीनियरिंग में, सीटीई विशेष रूप से बड़े बदलावों को प्रबंधित करने योग्य चरणों में तोड़ने के लिए उपयोगी होते हैं। पुन: प्रयोज्य सीटीई वृक्ष-संरचनात्मक डेटा को पार करने के लिए एक और शक्तिशाली उपकरण हैं, जैसे कि संगठनात्मक चार्ट या बिल-ऑफ-सामग्री। सहसंबंधित और गैर-संबद्ध उप-संख्याओं दोनों लेखन का अभ्यास करें।
उन्नत विश्लेषण के लिए विंडो कार्य
विंडो फंक्शन्स इंटरमीडिएट-टू-एडवांस्ड SQL कौशल का एक हॉलमार्क हैं। वे टेबल पंक्तियों के एक सेट में गणना करते हैं जो वर्तमान पंक्ति से संबंधित हैं, बिना समूह के। प्रमुख कार्यों में [[FLT: 19]], [[FLT: 20]]], [[FLT: 21]]], [[FLT: 22]]], [[FLT: 23]], [[FLT: 24]]], और [FLT: 25]]]] शामिल हैं [[FLT: 26]]]]] क्लॉज और [FLT: 27]]] विंडो फंक्शन के भीतर क्लॉज महत्वपूर्ण है। उदाहरण के लिए, विंडो के लिए, चल रहे हैं।
डेटा इंजीनियरिंग साक्षात्कार के लिए उन्नत SQL पैटर्न
एक बार जब आपके पास मूलभूत हो, तो साक्षात्कारकर्ता आपको ऐसे पैटर्न लागू करने के लिए प्रेरित करेगा जो वास्तविक दुनिया के डेटा पाइपलाइन चुनौतियों को दर्शाते हैं। नीचे कई पैटर्न हैं जो अक्सर तकनीकी स्क्रीन में दिखाई देते हैं।
जटिल जुड़ना और बहु-ताल क्वेरी
रियल डेटा गोदामों में अक्सर तथ्य और आयाम तालिकाओं के साथ स्टार या स्नोफ्लेक स्कीमा शामिल होती है। अभ्यास तीन या अधिक तालिकाओं में कुशलतापूर्वक शामिल हो रहा है। का उपयोग करने के तरीके को समझें LEFT JOIN जब मैच गायब हो जाते हैं तो प्राथमिक तालिका से पंक्तियों को संरक्षित करने के लिए, और कैसे ]INNER JOIN] का उपयोग गैर-मैचिंग रिकॉर्ड को फ़िल्टर करने के लिए किया जा सकता है। आदेश में शामिल होने के लिए ध्यान दें - डेटाबेस ऑप्टिमाइज़र आमतौर पर इसे संभालता है, लेकिन एक तार्किक क्रम में स्पष्ट जुड़ना पठनीयता में मदद करता है। उदाहरण के लिए, एक विशिष्ट ई-कॉमर्स विश्लेषण: आदेश, ग्राहकों, लाइन उत्पादों और उत्पादों को जोड़ने के लिए।
भारी और सशर्त एकत्रीकरण के साथ सकल क्यूरीज़
सरल समूह से परे, डेटा इंजीनियरों को अक्सर सशर्त समुच्चय की आवश्यकता होती है। एक शर्त के आधार पर गणना के लिए एकत्रीकरण कार्यों के अंदर बयान का उपयोग करें: ]], और ] का उपयोग करके एक तकनीक अक्सर डेटा मार्ट निर्माण में उपयोग की जाती है।
Recursive CTEs for Hierarchical Data
कई डेटा इंजीनियरिंग कार्यों में वृक्ष संरचनाएं शामिल हैं: श्रेणी पदानुक्रम, उत्पाद विधानसभा, या सामाजिक नेटवर्क कनेक्शन। SQL के पुन:प्राप्त CTE आपको ऐसी संरचनाओं को चलाने देता है। एंकर सदस्य (शुरू बिंदु) और पुन:प्राप्त सदस्य (इस्चर जो CTE में वापस जुड़ जाता है)। उदाहरण के लिए, सभी कर्मचारियों को एक विशिष्ट प्रबंधक को रिपोर्टिंग (डायरेक्टली या अप्रत्यक्ष रूप से) ढूंढना। गहराई को सीमित करके या चक्र का पता लगाने के खंड का उपयोग करके अनंत छोरों को संभालने के लिए तैयार रहें।
पिवोटिंग और अनपिवोटिंग डेटा
डेटा इंजीनियरों को अक्सर रिपोर्टिंग के लिए कॉलमर प्रारूप में पंक्ति आधारित डेटा को बदलने की आवश्यकता होती है, या सामान्यीकरण के लिए इसके विपरीत। जबकि कुछ डेटाबेस में [[FLT: 35]] और [[FLT: 36]] ऑपरेटर हैं, आप हमेशा उसी तरह से [[FLT: 37]]] और [[FLT: 38]] का उपयोग कर प्राप्त कर सकते हैं। उदाहरण के लिए, मासिक बिक्री पंक्तियों को प्रत्येक महीने के लिए अलग-अलग कॉलम में परिवर्तित करने के लिए: [FLT: 39] दोनों दृष्टिकोणों को समझना लचीलापन प्रदर्शित करता है।
क्वेरी ऑप्टिमाइज़ेशन बेसिक्स
साक्षात्कारकर्ता उन उम्मीदवारों का सम्मान करते हैं जो प्रदर्शन के बारे में सोचते हैं। यह समझें कि निष्पादन योजनाएं कैसे पढ़ी जाती हैं (यदि आप हर नोड की व्याख्या नहीं कर सकते हैं) और [[FLT: 4LT] के बजाय "FLT: 2]]] के प्रभाव को नाटकीय रूप से जानते हैं। [FLT: 4LT]], [[FLT: 4]], [FLT: 4], [FLT: 4, 4, 4, 5, 6, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9
अपने SQL साक्षात्कार को Ace करने के लिए व्यावहारिक सुझाव
तकनीकी कौशल अकेले पर्याप्त नहीं है; आपको साक्षात्कार के दौरान स्पष्ट सोच और संचार का प्रदर्शन करना चाहिए। आपकी सफलता में मदद करने के लिए यहां एक्शनेबल रणनीतियां हैं।
मास्टर व्हाइटबोर्ड या साझा संपादक
अधिकांश डेटा इंजीनियरिंग साक्षात्कार में साझा वातावरण में लाइव कोडिंग शामिल है। हाथ से या ऑटो-पूर्ण के बिना एक सादे पाठ संपादक में लेखन प्रश्नों का अभ्यास करें। इंडेंटेशन, सुसंगत नामकरण और तार्किक प्रवाह पर ध्यान केंद्रित करें। Verbally अपने दृष्टिकोण से गुजरें: बेस टेबल के साथ शुरू करें, शामिल होने की स्थिति को समझाएं, फिल्टर का वर्णन करें, और फिर एकत्रीकरण या विंडो फ़ंक्शन दिखाएं। यदि आप एक वाक्यविन्यास गलती बनाते हैं, तो इसे जोर से देखें - साक्षात्कारकर्ता डीबगिंग प्रक्रिया का मूल्य लगाते हैं।
अपने डेटाबेस सिस्टम को समझें
विभिन्न डेटाबेस में विभिन्न SQL बोलियां हैं। यह चर्चा करने के लिए तैयार रहें कि आपके पास कौन-सा सिस्टम (s) है (PostgreSQL, MySQL, SQL Server, BigQuery, Redshift, Snowflake, आदि)। उदाहरण के लिए, PostgreSQL बनाम ]] में, या ]]] स्नोफ्लेक में क्लॉज। विशिष्टताओं को जानने से गहराई दिखाई देती है। यदि आप एक कंपनी पर साक्षात्कार कर रहे हैं जो एक विशिष्ट आधुनिक क्लाउड वेयरहाउस का उपयोग करती है, तो कार्यों के लिए अपने दस्तावेज़ों का अध्ययन करें , ]], [FLT]]]], [FLT-FLT-FLT-FLT-FLT-FLT-FLT-FLT-FLT-FLT-FLT-FLT-FLT-FLT-F-FLT-FLT-F-FLT-F-FLT-FLT-FLT-FLT-FLT-F-F-FLT-FLT-FLT-F-FLT-F
उत्तोलन अभ्यास संसाधन
नियमित रूप से प्लेटफॉर्म पर अभ्यास जैसे LeetCode, HackerRank, और StrataScratch] अमूल्य है। मध्यम और कठिन समस्याओं के माध्यम से काम करें, खुद को समय दें। उन समस्याओं पर ध्यान केंद्रित करें जिनकी आवश्यकता विंडो फंक्शन्स, रीकर्सिव CTEs, या एकाधिक जुड़ना है। इसके अलावा, शीर्ष सामुदायिक सदस्यों से वैकल्पिक दृष्टिकोण जानने के लिए समाधान पढ़ें। अनुकूलन सिद्धांत के लिए, Use The इंडेक्स, Luke]]]] एक उत्कृष्ट मुफ्त संसाधन है।
आम नुकसान से बचने के लिए
साक्षात्कार के दौरान, दौड़ने से बचें। अप्रयुक्त दोहराव को रोकने के लिए डबल-चेक में शामिल होने की स्थिति शामिल हो जाती है। यदि आप एक लिखते हैं और फिर क्लॉज में दाईं तालिका पर एक शर्त का उपयोग करते हैं, तो आप इसे प्रभावी ढंग से एक में बदल देते हैं - ऐसे फिल्टर के बजाय ]] क्लॉज का उपयोग करें। एक अन्य बार गलती आलियास सबक्वायरी या CTEs के लिए भूल जाती है। इसके अलावा, कुल में NULL मूल्यों के साथ सावधान रहें और संचालन में शामिल हों - वे भ्रामक परिणाम पैदा कर सकते हैं। अंत में, तो कृपया आदेश नहीं देखें: यदि समस्या एक विंडो के लिए शीर्ष-N के लिए पूछती है।
निष्कर्ष
Mastering SQL क्वेरी डेटा इंजीनियरों के लिए एक गैर-नक्राम्य आवश्यकता है। आपके SQL ज्ञान की गहराई अक्सर कुशल डेटा पाइपलाइनों को डिजाइन करने और जटिल परिवर्तनों को करने की आपकी क्षमता के साथ सीधे सहसंबंधित होती है। जुड़ना, एकत्रीकरण और विंडो कार्यों जैसे कोर अवधारणाओं की अपनी समझ को मजबूत करके और उन्नत पैटर्न जैसे कि आवर्ती CTEs और क्वेरी अनुकूलन का अभ्यास करके, आप सबसे अधिक मांग वाले साक्षात्कार प्रश्नों के लिए भी अच्छी तरह से तैयार होंगे। दैनिक अभ्यास, अध्ययन निष्पादन योजनाओं की तुलना में, और एक शिक्षार्थी की मानसिकता बनाए रखने के लिए प्रतिबद्ध हैं। संरचित तैयारी के साथ, आप आत्मविश्वास के साथ किसी भी डेटा इंजीनियरिंग साक्षात्कार में जा सकते हैं।