HeadlinesBriefing favicon HeadlinesBriefing.com

रिकर्सिव CTE: SQL ग्राफ ट्रैवर्सल गाइड

Towards Data Science •
×

जब डेवलपर्स को हाइरार्ची, रूट फाइंडिंग या सोशल नेटवर्क जैसे ग्राफ समस्याओं का सामना करते हैं, तो वे अक्सर Neo4j या NetworkX की ओर झुकते हैं। लेकिन हजारों नोड्स वाले ऑपरेशनल डेटा — सप्लाई चेन, ऑर्ग चार्ट, नेविगेशन पथ — के लिए एक रिलेशनल डेटाबेस अधिकांश कामों को हैंडल कर सकता है। कुंजी रिकर्सिव कॉमन टेबल एक्सप्रेशंस (CTE) हैं, यह 1999 में शुरू की गई SQL स्टैंडर्ड फीचर है जिसका आज तक उपयोग बहुत कम हो रहा है।

CTE एसटीएल स्टेटमेंट्स में टेम्पोररी रिजल्ट सेट्स होते हैं, जो लॉजिक को नामित सेक्शन्स में तोड़कर कांप्लेक्स क्वेरीज को रीडेबल बनाते हैं। रिकर्सिव CTE इसे आगे बढ़ाते हैं क्योंकि वे खुद को रिफरेंस करते हैं और नए डेटा के आने बंद होने तक रिटर्न पदानुक्रम तक रोज करते हैं।

यह आर्टिकल केवल स्टैंडर्ड SQL का उपयोग करके ग्राफ ट्रैवर्सल, पथफाइंडिंग और साइकल डिटेक्शन दिखाता है। उदाहरण Postgres, Oracle, MySQL या SQLite के साथ काम करते हैं, हालांकि सिंटैक्स में थोड़ा अंतर हो सकता है। बिलियन नोड वाले बड़े ग्राफ के लिए अभी भी स्पेशलाइज्ड टूल्स की आवश्यकता होती है, लेकिन अधिकांश बिजनेस ग्राफ प्रॉब्लम रिलेशनल डेटाबेस में रिकर्सिव CTE के माध्यम से आसानी से हल हो जाते हैं।

प्रमुख इंटिटीज़: कंपनियां: Neo4j, NetworkX, Postgres, Oracle, MySQL, SQLite