क्या ये SQL अवधारणाएं शुरुआती, मध्यवर्ती या उन्नत डेवलपर्स के लिए हैं? [बन्द है]


16

मैं हाल ही में SQL सीख रहा हूं और MySQL / Postgres और जल्द ही Oracle DB के साथ अभ्यास कर रहा हूं। मैंने डेटाबेस के 'रोड मैप' के अध्ययन के लिए वेब भी खोजा है, लेकिन दुर्भाग्य से एक नहीं मिल सका।

मैं समझना चाहता हूं कि शुरुआत से लेकर मध्यवर्ती और उन्नत तक के पैमाने पर विशेष डेटाबेस अवधारणाएं कहां और क्यों गिरती हैं। मैं अधिकांश भाग के लिए रिलेशनल डेटाबेस के बारे में सोच रहा हूं।

कृपया बताएं कि शुरुआत के एक प्रगति में नीचे सूचीबद्ध कौशल को कैसे रखा जाए -> मध्यवर्ती -> डेवलपर किस स्तर के लिए उन्नत है, यह आप जानते हैं:

  • जहां क्लॉस होता है
  • सिंटैक्स अपडेट करें
  • में शामिल
  • चेतावनी और बयान बनाएँ
  • अस्थायी टेबल
  • कर्सर
  • इंडेक्स
  • विदेशी कुंजी
  • प्रतिबन्ध
  • लेन-देन
  • सबक्वेरी
  • pivots
  • अलग-अलग कार्य
  • रूपरेखा
  • OLAP और OLTP
  • ट्रिगर
  • निष्पादन की योजना
  • निष्पादन के संकेत
  • प्रदर्शन काउंटर
  • मानकीकरण

जवाबों:


20

मैं कहूंगा कि एसक्यूएल के संबंध में जानने के लिए दो तरह की चीजें हैं (यह वास्तव में कई तकनीकों का सच है), विशिष्ट तकनीकी चीजें हैं जैसे कि जोड़, उपश्रेणी, यूनियनों, आदि जिन्हें आप समझते हैं या नहीं, और फिर चीजें हैं डेटाबेस डिजाइन और डेटा मॉडलिंग की तरह जिसमें कला में एक कौशल है, कला की तरह। आप उन नरम चीजों के साथ समय के साथ बेहतर हो जाते हैं, लेकिन कभी भी उन्हें "नहीं" जानते हैं क्योंकि उनके साथ कोई "वे इस तरह से काम नहीं करते हैं"।

उस ने कहा, यहाँ एक सामान्य लेआउट है जिसके साथ मैं जाऊँगा, और जहाँ मैं गलत हो सकता हूँ दूसरों से टिप्पणी / विचारों के लिए बिल्कुल खुला हूँ।

शुरुआती

  • जहां खंड (में, बीच, आदि)
  • सिंटैक्स अपडेट करें
  • इनर बनाम लेफ्ट बनाम राइट राइट समझ और उपयोग में शामिल हों
  • संरचनाओं को बदलने और बनाने के लिए सिंटैक्स
  • टेम्‍प टेबल और उनका उपयोग
  • कर्सर
  • मूल विचार क्या अनुक्रमित हैं, हालांकि वे कैसे काम करते हैं
  • यह समझने के लिए कि विदेशी कुंजियाँ क्या हैं और उनके आस-पास कैसे काम करना है (कैस्केडिंग डिलीट करना आदि)
  • लेन-देन की मूल बातें समझता है
  • बाधाओं को समझता है

मध्यम

  • अनुक्रमित कैसे काम करते हैं, गुच्छेदार, गैर-संकुल, आदि के बीच अंतर, पृष्ठ क्या है और वे कैसे लेआउट हैं
  • सबक्वेरीज़ की समझ, और उनका इस्तेमाल जॉइन और व्हेयर में सोच सकते हैं
  • pivots
  • प्रासंगिक होने पर स्वयं एक तालिका से जुड़ने के माध्यम से सोच सकते हैं
  • कुल कार्यों के साथ समूह के माध्यम से जटिल डेटा रिपोर्ट उत्पन्न कर सकते हैं
  • बस एक लॉग पढ़ने की तरह एक निगरानी / डिबगिंग क्षमता में बुनियादी रूपरेखा कर सकते हैं
  • OLAP और OLTP के बीच अंतर को समझता है और कब / कहाँ OLAP संरचनाओं का उपयोग करना है
  • जानता है कि ट्रिगर का उपयोग कैसे करना है और उनका उपयोग नहीं करना है
  • लेनदेन को समझता है और स्टैक अप विफलताओं को संभालने के लिए उन्हें परत कर सकता है

उन्नत

  • एक निष्पादन योजना को पढ़ सकते हैं, और यह समझ सकते हैं कि क्वेरी के विभिन्न भाग कैसे प्रभाव डालते हैं
  • निष्पादन के संकेतों के बिना निष्पादन के साथ प्रश्नों को ट्यून कर सकते हैं (समानतावाद संकेत, सूचकांक संकेत, लूप संकेत, एट अल)
  • वास्तविक दुनिया भार के तहत निष्पादन के आंकड़ों की पहचान करने और समझने के लिए निशान का प्रोफ़ाइल और उपयोग कर सकते हैं
  • जानता है कि डिस्क पर डेटा संरचनाएं क्या हैं
  • प्रदर्शन काउंटर का उपयोग कर सकते हैं और समझ सकते हैं कि डेटाबेस लोड और व्यवहार उनकी निगरानी से क्या है
  • जानता है कि एक ओएलएपी क्यूब को कैसे डिजाइन किया जाए और एक के साथ उन्नत डेटा खनन किया जाए
  • जानता है कि ट्रिगर्स का उपयोग कैसे करें और कम से कम जोखिम के साथ उन्हें सुरक्षित रूप से कैसे उपयोग करें
  • जानता है कि परतों के साथ भी वितरित लेनदेन का उपयोग कैसे करें

यह सब मैं अपने सिर के ऊपर से उतर सकता हूं। कृपया उन टिप्पणियों का उल्लेख छोड़ दें जिनका मैं चूक गया था या यदि मैंने कुछ गलत जगह पर रखा है। हेह लगाने के लिए उन्नत तकनीकों की एक विशाल सूची जानने के लिए मैं पर्याप्त उन्नत नहीं हूं


यह दिलचस्प है कि हमारी दो सूचियाँ अगल-बगल में देखें
क्रिस पिटमैन

11

यहाँ उम्मीदवारों का साक्षात्कार करते समय मेरे द्वारा उपयोग किया जाने वाला पैमाना है। यह स्पष्ट रूप से मेरी अपनी निजी राय है, तराजू आसानी से भिन्न हो सकते हैं:

सबसे पहले, मैं डेटाबेस कौशल की तलाश कर रहा हूं, विशेष रूप से "एसक्यूएल" नहीं।

शुरुआती:

  • बेसिक SQL सिंटैक्स जानता है
  • कई तालिकाओं में डेटा का चयन और फ़िल्टर कर सकते हैं
  • भीतरी / बाहरी / क्रॉस जॉइन्ट्स को समझता है
  • सामान्यीकरण, अनुक्रमण, लेनदेन, लॉकिंग की अस्पष्ट समझ

इंटरमीडिएट:

  • SQL के लिए प्रक्रियात्मक और घोषित शैलियों के बीच अंतर को समझता है
  • कम से कम एक DBs SQL एक्सटेंशन (PSQL, TSQL, आदि) के साथ अनुभव
  • समझता है, और तीसरे सामान्य रूप में एक डेटाबेस डिजाइन कर सकता है
  • समझता है और अनुक्रमण को लागू कर सकता है
  • लेनदेन को समझता है, और उन्हें एक ही डेटाबेस में उपयोग कर सकता है
  • जानता है कि कब और कैसे एक निष्पादन योजना का विश्लेषण करना है

उन्नत:

  • समझता है कि किसी डेटाबेस को कब और कैसे अलग करना है
  • एक डेटाबेस और एकीकृत सिस्टम में वितरित लेनदेन को सेटअप करने का तरीका समझता है
  • उच्च उपलब्धता, डेटा रिकवरी, आदि के लिए एक डेटाबेस सेट कर सकते हैं
  • प्रत्येक DB इंजन के आंतरिक कामकाज की गहरी अनदेखी (कम से कम दो)
  • डेटा वेयरहाउसिंग और रिपोर्टिंग के लिए महत्वपूर्ण प्रदर्शन के लिए अतिरिक्त अंक
  • NoSQL के वेरिएंट के लिए महत्वपूर्ण प्रदर्शन के लिए अतिरिक्त अंक, और कब क्या उपयोग करना है के लिए मापदंड का एक तर्कसंगत सेट

मजेदार, आपकी सूची मेरी जैसी ही है; हालांकि मैंने निष्पादन योजनाओं को एक कदम ऊपर रखा है, अन्यथा हमारे पास मूल रूप से समान है। मैंने लगभग सामान्य रूप से 3rd इंटरमीडिएट में डाल दिया, लेकिन मुझे वास्तव में लगता है कि डेटा मॉडलिंग को शुरुआती / मध्यवर्ती / उन्नत करने के लिए नहीं किया जा सकता है, यह बस एक कलात्मक प्रतिभा का बहुत अधिक ग्रे है। तीसरा सामान्य कैसे करना है यह जानना एक कौशल है, यह जानना कि कला कब है। हालांकि यह कैसे प्रासंगिक है और मैंने इसे लगभग हेम के लिए मध्यवर्ती रूप में अच्छी तरह से रखा है
जिमी हॉफ
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.