उन्नत PostgreSQL: अनुक्रमण, विभाजन और प्रतिकृति · पाठ

लॉजिकल डिकोडिंग और Change Data Capture

PostgreSQL से पंक्ति-स्तरीय परिवर्तनों को CDC डेटा पाइपलाइन और इवेंट-चालित प्रणालियों के लिए स्ट्रीम करने हेतु लॉजिकल डिकोडिंग का उपयोग करें।

पाठ 4, कुल 4 में से13 चरण

लॉजिकल डिकोडिंग और Change Data Capture, CoddyKit पर उन्नत PostgreSQL: अनुक्रमण, विभाजन और प्रतिकृति का एक निःशुल्क पाठ है। यह 4 में से 4वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह उन्नत PostgreSQL: अनुक्रमण, विभाजन और प्रतिकृति सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। उन्नत PostgreSQL: अनुक्रमण, विभाजन और प्रतिकृति पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

Logical Decoding क्या है

Logical decoding write-ahead log को पढ़े जा सकने वाले logical row changes की stream में बदलता है। यही logical replication और बाहरी Change Data Capture (CDC) दोनों का आधार है।

आउटपुट प्लगइन

Plugin change stream का format तय करता है। अंतर्निहित pgoutput logical replication को संचालित करता है; test_decoding मनुष्यों के लिए पढ़े जा सकने वाला text निकालता है; Debezium जैसे टूल अपने format का उपयोग करते हैं।

पूर्वापेक्षा: wal_level

Logical decoding के लिए wal_level = logical आवश्यक है। इसे बदलने के लिए restart करना पड़ता है।

-- postgresql.conf
wal_level = logical

Logical Slot बनाना

Logical replication slot यह ट्रैक करता है कि consumer ने कितना पढ़ा है और उसके लिए आवश्यक WAL को हटने से रोकता है।

SELECT pg_create_logical_replication_slot(
  'cdc_slot', 'test_decoding');

परिवर्तनों को देखना

pg_logical_slot_peek_changes slot को आगे बढ़ाए बिना लंबित परिवर्तन दिखाता है, जो निरीक्षण के लिए उपयोगी है।

SELECT * FROM pg_logical_slot_peek_changes(
  'cdc_slot', NULL, NULL);

परिवर्तनों का उपभोग करना

pg_logical_slot_get_changes slot को पढ़ता और आगे बढ़ाता है, इसलिए वे परिवर्तन दोबारा लौटाए नहीं जाएँगे।

SELECT * FROM pg_logical_slot_get_changes(
  'cdc_slot', NULL, NULL);

परिवर्तन के आउटपुट का उदाहरण

test_decoding के साथ INSERT ऐसे पढ़े जा सकने वाले text के रूप में दिखाई देता है जो table और नए column values का वर्णन करता है और BEGIN तथा COMMIT markers के बीच होता है।

BEGIN 712
table public.users: INSERT: id[int]:1 name[text]:'Ada'
COMMIT 712

Slots WAL को रोके रखते हैं

निष्क्रिय slot WAL को हमेशा बनाए रखता है, जिससे डिस्क भर सकती है। अप्रयुक्त slots की निगरानी करें और उन्हें हटाएँ।

SELECT slot_name, active FROM pg_replication_slots;
SELECT pg_drop_replication_slot('cdc_slot');

CDC पाइपलाइन

बाहरी CDC connectors slot से Kafka, search indexes या data warehouses जैसी प्रणालियों में stream करते हैं, जिससे downstream updates लगभग वास्तविक समय में संभव होते हैं।

कम-से-कम एक बार डिलीवरी

Consumers को अंतिम पुष्ट LSN ट्रैक करना चाहिए और crash के बाद संभावित पुनः-डिलीवरी को संभालना चाहिए। Downstream writes को idempotent बनाने के लिए design करें।

CDC के लिए Replica Identity

Updates और deletes में पूरा before image capture करने के लिए, उपयोगी primary key के बिना वाली टेबलों पर REPLICA IDENTITY FULL सेट करें।

ALTER TABLE orders REPLICA IDENTITY FULL;

त्वरित जाँच

Logical replication slots की निगरानी क्यों करनी चाहिए?

पुनरावृत्ति

आपने logical decoding सीखा: wal_level=logical सेट करना, output plugin के साथ logical slot बनाना, परिवर्तनों को देखना या उनका उपभोग करना, और उन्हें CDC pipelines में भेजना। Slots की निगरानी करें, idempotent consumers को design करें और पूरे change images के लिए replica identity सेट करें।

शुरुआत निःशुल्क

एआई शिक्षक के साथ उन्नत PostgreSQL: अनुक्रमण, विभाजन और प्रतिकृति सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
11
पाठ
44

अक्सर पूछे जाने वाले प्रश्न

क्या “लॉजिकल डिकोडिंग और Change Data Capture” पाठ निःशुल्क है?

हाँ—“लॉजिकल डिकोडिंग और Change Data Capture” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और उन्नत PostgreSQL: अनुक्रमण, विभाजन और प्रतिकृति पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। उन्नत PostgreSQL: अनुक्रमण, विभाजन और प्रतिकृति पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“लॉजिकल डिकोडिंग और Change Data Capture” में मैं क्या सीखूँगा?

PostgreSQL से पंक्ति-स्तरीय परिवर्तनों को CDC डेटा पाइपलाइन और इवेंट-चालित प्रणालियों के लिए स्ट्रीम करने हेतु लॉजिकल डिकोडिंग का उपयोग करें। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ उन्नत PostgreSQL: अनुक्रमण, विभाजन और प्रतिकृति का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या उन्नत PostgreSQL: अनुक्रमण, विभाजन और प्रतिकृति शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर उन्नत PostgreSQL: अनुक्रमण, विभाजन और प्रतिकृति शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 4वाँ पाठ है।

“लॉजिकल डिकोडिंग और Change Data Capture” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस उन्नत PostgreSQL: अनुक्रमण, विभाजन और प्रतिकृति पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर उन्नत PostgreSQL: अनुक्रमण, विभाजन और प्रतिकृति पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. कैस्केडिंग प्रतिकृति
  2. मल्टी-मास्टर प्रतिकृति (BDR)
  3. प्रतिकृति स्लॉट और WAL प्रबंधन
  4. लॉजिकल डिकोडिंग और Change Data Capture
← उन्नत PostgreSQL: अनुक्रमण, विभाजन और प्रतिकृति पर वापस जाएँ