परिचय
आज के सॉफ्टवेयर डेवलपमेंट की दुनिया में, NoSQL डेटाबेस टेक्नोलॉजी स्टैक का एक अहम हिस्सा बन गए हैं। MongoDB, एक प्रमुख डॉक्यूमेंट-ओरिएंटेड DBMS के रूप में, डेवलपर्स को अनस्ट्रक्चर्ड डेटा के साथ काम करने के लिए शक्तिशाली टूल्स प्रदान करता है। PyMongo, MongoDB का आधिकारिक Python ड्राइवर है, जो Python एप्लिकेशन और MongoDB के बीच पूर्ण एकीकरण सुनिश्चित करता है।
PyMongo क्या है
PyMongo, MongoDB के साथ इंटरैक्ट करने के लिए Python की आधिकारिक लाइब्रेरी है। यह एक हाई-परफॉर्मेंस ड्राइवर है जो MongoDB की सभी क्षमताओं तक सीधी पहुंच प्रदान करता है, जिसमें ट्रांजैक्शन, चेंज स्ट्रीम और टेम्पररी कलेक्शन जैसी आधुनिक सुविधाएं शामिल हैं।
PyMongo की मुख्य विशेषताएं
संगतता और वर्जन सपोर्ट
- MongoDB वर्जन 3.6, 4.0, 4.2, 4.4, 5.0, 6.0 और 7.0 के लिए सपोर्ट
- Python 3.7+ के साथ संगतता
- नियमित अपडेट और सुरक्षा पैच
फंक्शनल क्षमताएं
- BSON (Binary JSON) फॉर्मेट का पूर्ण सपोर्ट
- बड़ी फाइलों को स्टोर करने के लिए GridFS का बिल्ट-इन सपोर्ट
- फेल होने पर ऑटोमैटिक रीकनेक्ट
- SSL/TLS एन्क्रिप्शन सपोर्ट
- परफॉर्मेंस मॉनिटरिंग और प्रोफाइलिंग
आर्किटेक्चरल लाभ
- Thread-safe ऑपरेशन
- कनेक्शन पूल
- क्लस्टर टोपोलॉजी का ऑटोमैटिक डिटेक्शन
- रेप्लिका और शार्डिंग सपोर्ट
PyMongo की इंस्टॉलेशन और सेटअप
बेसिक इंस्टॉलेशन
pip install pymongo
अतिरिक्त सुविधाओं के साथ इंस्टॉलेशन
# एन्क्रिप्शन के लिए
pip install pymongo[encryption]
# Kerberos के लिए
pip install pymongo[gssapi]
# एसिंक्रोनस काम के लिए
pip install motor
इंस्टॉलेशन की जांच
import pymongo
print(pymongo.version)
MongoDB से कनेक्शन
कनेक्ट करने के मुख्य तरीके
लोकल कनेक्शन
from pymongo import MongoClient
# सरल कनेक्शन
client = MongoClient()
# या
client = MongoClient('localhost', 27017)
# या
client = MongoClient('mongodb://localhost:27017/')
ऑथेंटिकेशन के साथ कनेक्शन
client = MongoClient('mongodb://username:password@localhost:27017/')
MongoDB Atlas से कनेक्शन
client = MongoClient('mongodb+srv://username:password@cluster.mongodb.net/')
SSL के साथ कनेक्शन
client = MongoClient('mongodb://localhost:27017/',
ssl=True,
ssl_cert_reqs=ssl.CERT_NONE)
कनेक्शन पैरामीटर
client = MongoClient(
host='localhost',
port=27017,
maxPoolSize=50,
minPoolSize=10,
maxIdleTimeMS=30000,
connectTimeoutMS=5000,
socketTimeoutMS=5000,
serverSelectionTimeoutMS=5000,
retryWrites=True,
retryReads=True
)
PyMongo के मुख्य कंपोनेंट
डेटाबेस के साथ काम करना
# डेटाबेस प्राप्त करना
db = client['mydatabase']
# या
db = client.mydatabase
# सभी डेटाबेस की सूची
databases = client.list_database_names()
# डेटाबेस हटाना
client.drop_database('mydatabase')
# डेटाबेस का स्टैट्स प्राप्त करना
stats = db.command('dbstats')
कलेक्शन के साथ काम करना
# कलेक्शन प्राप्त करना
collection = db['mycollection']
# या
collection = db.mycollection
# ऑप्शन के साथ कलेक्शन बनाना
db.create_collection('m पुस्तकालय में भी
Kotlin में JSON प्रसंस्करण: लाइब्रेरीज़ और कोड उदाहरण
C++ में डिपेंडेंसी इंजेक्शन कंटेनर: डिपेंडेंसी इंजेक्शन के लिए Fruit लाइब्रेरी
ASP.NET Core C# (.NET) पूर्ण गाइड: उदाहरण और ट्यूटोरियल
Rust में कार्य अनुसूचक: एक विश्वसनीय job scheduler का निर्माण
Go (Golang) पर ईमेल भेजना: लाइब्रेरी और कोड उदाहरण