इस प्रोजेक्ट के बारे में

PgDog एक ओपन-सोर्स PostgreSQL प्रॉक्सी है जो Rust में लिखा गया है, जिसे कनेक्शन पूलिंग, रेप्लिका के बीच लोड बैलेंसिंग, और डेटाबेस के क्षैतिज शार्डिंग के माध्यम से PostgreSQL परिनियोजन को स्केल करने के लिए डिज़ाइन किया गया है। यह एक एप्लिकेशन-लेयर (OSI लेवल 7) प्रॉक्सी के रूप में कार्य करता है जो PostgreSQL प्रोटोकॉल को समझता है, जिससे रीड/राइट इंटेंट, शार्डिंग कुंजियों, या स्कीमा संदर्भ के आधार पर बुद्धिमान क्वेरी रूटिंग संभव होती है। मुख्य विशेषताओं में शामिल हैं: - उन्नत रिकवरी तंत्र के साथ ट्रांज़ैक्शन और सेशन पूलिंग, जिसमें परित्यक्त ट्रांज़ैक्शन का स्वचालित रोलबैक शामिल है। - राउंड-रॉबिन, रैंडम, या लीस्ट-एक्टिव रणनीतियों का उपयोग करके प्राइमरी और रेप्लिका नोड्स के बीच लोड बैलेंसिंग, रियल-टाइम हेल्थ चेक और फेलओवर सपोर्ट के साथ। - पार्टिशन फ़ंक्शन (HASH, LIST, RANGE) या स्कीमा-आधारित रूटिंग के माध्यम से शार्डिंग, इन-मेमोरी रिज़ल्ट असेंबली के साथ क्रॉस-शार्ड क्वेरी का समर्थन। - सीक्वेंस के बिना यूनिक ID जनरेशन, शार्ड कुंजी अपडेट, मल्टी-टपल इंसर्ट, और परमाणु क्रॉस-शार्ड राइट के लिए टू-फ़ेज़ कमिट का समर्थन। - लॉजिकल रेप्लिकेशन का उपयोग करके री-शार्डिंग क्षमताएं, जो ज़ीरो-डाउनटाइम डेटा पुनर्वितरण की अनुमति देती हैं। - प्रमाणीकरण लचीलापन: पासवर्ड-आधारित, AWS RDS IAM, Azure Workload Identity, और HashiCorp Vault (डायनामिक/स्टैटिक रोल)। - OpenMetrics, OTEL, या PgBouncer-स्टाइल एडमिन डेटाबेस के माध्यम से मॉनिटरिंग। परिनियोजन विकल्पों में Docker Compose, Kubernetes के लिए Helm चार्ट (EKS सहित), और AWS ECS के लिए Terraform मॉड्यूल शामिल हैं। कॉन्फ़िगरेशन TOML फ़ाइलों का उपयोग करता है (डेटाबेस और सेटिंग्स के लिए `pgdog.toml`, क्रेडेंशियल्स के लिए `users.toml`)। यह टूल कमोडिटी हार्डवेयर पर प्रदर्शन के लिए अनुकूलित है और इसमें री-शार्डिंग के दौरान स्कीमा और डेटा सिंक्रोनाइज़ेशन के लिए अंतर्निहित टूल शामिल हैं। दस्तावेज़ीकरण और सामुदायिक सहायता आधिकारिक साइट और Discord के माध्यम से उपलब्ध है। एंटरप्राइज़ संस्करण की विशेषताएं अलग से प्रलेखित हैं।