redo log、undo log、binlog 和两阶段提交
全系列最难的几道之一:崩溃恰好发生在那一瞬间,数据还对得上吗?
प्रॉम्प्ट कॉपी करें, फिर कोई एक मॉडल चुनें। वह जवाब थमाने के बजाय इंटरव्यू लेने वाले की तरह दृश्य दर दृश्य आपसे पूछेगा।
जिस फ़ोन में ऐप लगा है, वहाँ सिस्टम सीधे ऐप खोल देगा। WeChat के अंदर बाहरी ऐप नहीं खुलते — पहले ब्राउज़र में खोलें।
कॉपी किए हुए पाठ के आख़िर में वही उत्तर-कुंजी है जिससे मॉडल आपको आँकता है। पहले खुद न पढ़ें — खुद तक पहुँचना ही असली बात है।
三种日志各归谁、各记什么,是第一层。这一份的主战场在第三幕:把提交的过程拆成几个时间点,逐个问「崩在这里,重启之后是什么状态」。
这也是「为什么非要两阶段提交」唯一说得清楚的方式 —— 少了它,主库和从库会在哪一种崩溃下对不上,要你举出来。
第四幕问那几个刷盘参数:各自调松一档能快多少、代价是最多丢多少。默认按 MySQL / InnoDB 讲。
यह सवाल किस चीज़ पर टिका है
यह पाठ रिपॉज़िटरी में (उस फ़ाइल के अंत में कुंजी है — खोलते ही दिख जाएगी)
यह वाला कर चुके हैं?
साइन इन करके दर्ज करें कि यह अभ्यास कर लिया — अगली बार दिखेगा कि किस दिन किया था।
जिन्होंने यह किया, उनके नोट
इसे कैसे इस्तेमाल करें
यह सेट पढ़ाता नहीं, कुरेदता है। यह नक़ली इंटरव्यू है: जवाब न बचना सामान्य नतीजा है, और अटक जाने पर न यह आपको बचाएगा, न आपका वाक्य पूरा करेगा। अगर विषय समझना है, इंटरव्यू की रिहर्सल नहीं, तो «कंप्यूटर सिस्टम», «डेटाबेस» या «एल्गोरिदम» देखिए — वहाँ का रवैया राह दिखाने का है।
एक रटा-रटाया सवाल चालीस मिनट कैसे भरता है: पाँच परतों की सीढ़ी
- परत 1 · परिभाषा — हर शब्द का मतलब क्या है और फ़र्क़ क्या हैं। जवाब नहीं: आपने कभी पढ़ा ही नहीं।
- परत 2 · तंत्र — यह फ़र्क़ असल में किस ढाँचे के किस क़दम से पैदा होता है। जवाब नहीं: आपने सिर्फ़ निष्कर्ष रटा है।
- परत 3 · आँकड़े — कितना फ़र्क़? कितने माइक्रोसेकंड, कितने गुना, कितने I/O। जवाब नहीं: आपने कभी हाथ नहीं लगाया।
- परत 4 · चुनाव — किसी ठोस स्थिति में क्या चुनेंगे, क़ीमत क्या है, और वह चुनाव कब ग़लत होता है। जवाब नहीं: आप इसे लगा नहीं सकते।
- परत 5 · सीमाएँ — अभी जो कहा, वह किन हालात में टिकता नहीं। जवाब नहीं: सब रटा है, पर समझा नहीं।
कसौटी: परत 4 तक पहुँचना इंटरव्यू पास करने लायक़ है, परत 5 तक पहुँचना सच में समझना है, और जो परत 1 पर रुक जाए वह सब रटा हुआ दर्ज होता है।
छह अंक — पहला और आख़िरी सिर्फ़ इसी सीरीज़ में हैं
- पहले अंक में वह न टोकता है, न टिप्पणी करता है, न इशारा देता है: आप एक ही साँस में अपना मौजूदा जवाब सुना देते हैं और वही आधार-रिकॉर्डिंग बन जाता है। यह चुप्पी जानबूझकर है — वह सुन रहा है, बस अभी सुधार नहीं रहा।
- बीच के चार अंक सीढ़ी से नीचे उतरते हैं; असली मैदान तीसरा अंक है — तंत्र और आँकड़े।
- आख़िरी अंक साठ सेकंड की घड़ी लगाकर सब दोबारा कहलवाता है और आपके शुरुआती जवाब के साथ रखकर मिलाता है — क्योंकि इंटरव्यू में सौंपना «मैं समझता हूँ» नहीं होता, वह एक ऐसा वाक्य होता है जो आप बोलकर दिखा सकें।
शुरू कैसे करें
- एक चुनिए, खोलिए, प्रॉम्प्ट कॉपी कीजिए।
- उसे बिलकुल नई बातचीत में चिपकाइए, कुछ मत कहिए, पहले सवाल का इंतज़ार कीजिए।
- फिर इंटरव्यू की तरह जवाब दीजिए: अपना रटा हुआ जवाब एक ही साँस में सुना दीजिए। ख़राब रहे तो कोई बात नहीं — आख़िर में तुलना इसी से होनी है।
- इसके बाद कुरेदना शुरू होगा। जवाब न बचना सामान्य नतीजा है: यह पढ़ने की सामग्री नहीं, नक़ली इंटरव्यू है।
बीच में कभी भी बोले जा सकने वाले पाँच आदेश
跳过अभी अगले अंक पर चलो提示जवाब नहीं, एक इशारा दो直说吧पूरा जवाब सीधे बता दो重讲सीधे आख़िरी अंक पर जाओ, साठ सेकंड वाला जवाब दोबारा रिकॉर्ड करो और शुरुआती से मिलाओ复盘सीधे समापन पर जाओ और समीक्षा कार्ड निकालो
तीन फंदे
- जो पाठ आप कॉपी करते हैं उसके अंत में जाँचने वाली कुंजी लगी है — उसे पहले मत पढ़िए। उसमें एक ख़ाना «रटने के निशान» का है: ठीक वही वाक्य जो आपके मुँह से निकलने की सबसे ज़्यादा संभावना है। पढ़ लिया तो अभ्यास के लिए कुछ बचता ही नहीं।
- जहाँ संख्या चाहिए वहाँ विशेषण मत दीजिए। «बहुत तेज़», «ख़र्च नाम मात्र का» — वह वहीं रोककर आँकड़ा माँगेगा। जिस निष्कर्ष का परिमाण न बता सकें, वह रटा हुआ दर्ज होता है।
- आख़िरी दो समूह भाषा से बँधे हैं: Java लिखते हैं तो Java वाला, Go लिखते हैं तो Go वाला। ये एक-दूसरे का अनुवाद नहीं हैं — दोनों के सवाल अलग चुने गए हैं — इसलिए दोनों करने की ज़रूरत नहीं।
अगले हफ़्ते बैकएंड का इंटरव्यू है? प्रोसेस बनाम थ्रेड, TCP बनाम UDP, B+ ट्री क्यों, आइसोलेशन लेवल, कैश के तीन तरह से टूटने के ढंग, और आइडेम्पोटेंसी — ये छह सबसे ज़्यादा पूछे जाते हैं और आपस में लगभग नहीं टकराते। इंटरव्यू में पिट चुके हैं और कमज़ोरियाँ ढूँढनी हैं? पहले «URL डालने से पेज दिखने तक» कीजिए — यह सारी कमज़ोर कड़ियाँ एक साथ खोल देती है, फिर उसी हिसाब से आगे चुनिए।
नोट लिखने के लिए साइन इन।