एक रोबोस्ट मॉडर्न-डे एप्लिकेशन के बैकएंड पर डेटा संग्रहीत करने का एक माध्यम होता है जैसे कि नोड एप्लिकेशन जो गैर-रिलेशनल (जैसे पोस्टग्रेसक्यूएल, मोंगोडीबी) और रिलेशनल (जैसे MySQL, Oracle) दोनों के साथ काम करने में सक्षम है।
MongoDB एक गैर-संबंधपरक डेटाबेस है जिसका उपयोग करना अपेक्षाकृत आसान और शक्तिशाली है, और यदि आप एक Node.js डेवलपर हैं जो इसके लाभों को सीखना चाहते हैं और अपने नोड एप्लिकेशन के साथ एक सुरक्षित एकीकरण बनाने के साथ शुरुआत कैसे करें, तो यह आपके लिए मार्गदर्शक है!
इस लेख में, हम सीखेंगे कि MongoDB से कैसे एकीकृत/कनेक्ट करें; Node.js के साथ एक बहुत लोकप्रिय गैर-संबंधपरक डेटाबेस और देखें कि हम इसे Node अनुप्रयोगों के भीतर कैसे उपयोग कर सकते हैं।
नोट: आगे बढ़ने के लिए, आपको Node.js इंस्टॉल करना होगा। आप इसका सबसे लंबा स्थिर संस्करण (एलटीएस) डाउनलोड कर सकते हैं और अपनी स्थानीय मशीन पर इंस्टॉल कर सकते हैं आधिकारिक डाउनलोड पृष्ठ.
MongoDB पर संक्षिप्त जानकारी
MongoDB सबसे लोकप्रिय और सबसे उन्नत दस्तावेज़-आधारित डेटाबेस है, जहां सभी डेटा को बाइनरी JSON (जावास्क्रिप्ट ऑब्जेक्ट नोटेशन) में संग्रहीत किया जाता है जिसे BSON के रूप में जाना जाता है। एक BSON एक है दस्तावेज़, पूर्वनिर्धारित डेटा स्कीमा की कोई आवश्यकता नहीं है। यह किसी एप्लिकेशन द्वारा बार-बार एक्सेस किए जाने वाले डेटा को एक ही स्थान पर संग्रहीत करने की अनुमति देता है और डेटाबेस को पढ़ने को आसान और तेज़ बनाता है।
संबंधपरक तालिकाओं के विपरीत, संग्रह स्व-निहित होते हैं, इससे उनके साथ काम करना अधिक आसान हो जाता है। जब MongoDB संग्रह पर एक नया दस्तावेज़ बनाया जाता है, तो उसे उस संग्रह के लिए अद्वितीय बनाने के लिए एक आईडी सौंपी जाती है, और दस्तावेज़ के अंदर, कई फ़ील्ड परिभाषित किए जा सकते हैं; जहां मान सरणियों, स्ट्रिंग्स, पूर्णांकों, ऑब्जेक्ट्स आदि से लेकर डेटा प्रकारों का एक प्रकार हो सकता है।
डेटा में हेरफेर करने के लिए, क्वेरी एपीआई डेटाबेस में बुनियादी क्रिएट, रीड, अपडेट और डिलीट (सीआरयूडी) ऑपरेशन करने के लिए उपयोगी है। अनुकूलन सुनिश्चित करने और सामान्य प्रश्नों को अत्यंत तेज़ बनाने के लिए द्वितीयक अनुक्रमणिकाएँ भी बनाई जा सकती हैं। भू-स्थानिक क्वेरीज़ भी समर्थित हैं, जो किसी विशिष्ट भौगोलिक स्थान में दस्तावेज़ ढूंढना संभव बनाती हैं।
MongoDB के साथ शुरुआत करना
इससे पहले कि हम नोड एप्लिकेशन से MongoDB से जुड़ना शुरू करें, साइन अप करने के लिए आधिकारिक MongoDB वेबसाइट पर जाएं Try Free
बटन (यदि आपके पास पहले से कोई खाता नहीं है):
अपना खाता बनाने के बाद, क्लिक करने के लिए आगे बढ़ें Build a Database
बटन, और डेटाबेस बनाने के लिए क्लिक करें:
इसके बाद, एक साझा क्लस्टर बनाएं (यह हमेशा के लिए मुफ़्त है!) और इसे अपनी पसंद का नाम दें।
साझा क्लस्टर सीमित सैंडबॉक्स में प्रयोग के लिए आदर्श है। आप किसी भी समय उत्पादन क्लस्टर में अपग्रेड कर सकते हैं।
जब आप सफलतापूर्वक एक क्लस्टर बना लें, तो क्लिक करें Connect
क्लस्टर से कनेक्ट करने के लिए बटन:
अब आपको MongoDB से जुड़ने के चार अलग-अलग तरीके दिखाए गए हैं, लेकिन चूंकि हम एक नोड एप्लिकेशन से जुड़ना चाहते हैं, तो आइए चुनें Connect your application
विकल्प:
फिर आपको एक कनेक्शन विधि चुनने के लिए कहा जाएगा। यहां, अपने ड्राइवर के रूप में Node.js का चयन करना सुनिश्चित करें, और एक उपयुक्त संस्करण चुनें (मैं इस लेख को लिखते समय 4.1 या बाद के संस्करण का उपयोग कर रहा हूं)।
हमें एक कनेक्शन स्ट्रिंग भी दिखाई जाती है जो हमारे MongoDB क्लस्टर को नोड एप्लिकेशन से जोड़ने के लिए उपयोगी है:
अब, हमें MongoDB डेटाबेस से कनेक्ट करने के लिए एक Node.js एप्लिकेशन बनाने की आवश्यकता है।
नोड एप्लिकेशन का निर्माण
इस प्रोजेक्ट के लिए अपनी पसंदीदा निर्देशिका में, एक नया फ़ोल्डर बनाएं:
$ mkdir integrating-mongodb-node
तो भागो npm init
टर्मिनल में, एक नोड एप्लिकेशन को आरंभ करने के लिए package.json
फ़ाइल जो हमारे लिए एप्लिकेशन निर्भरता को ट्रैक करना संभव बनाती है:
$ npm init
package name: (codes) integrating-mongodb-node
version: (1.0.0)
description: learning how to connect mongodb to a node app
entry point: (server.js)
test command:
git repository:
keywords:
author:
Is this OK? (yes) yes
सर्वोत्तम प्रथाओं, उद्योग-स्वीकृत मानकों और शामिल चीट शीट के साथ, Git सीखने के लिए व्यावहारिक मार्गदर्शिका देखें। Googling Git कमांड को रोकें और वास्तव में सीखना यह!
अब जबकि हमने सफलतापूर्वक आरंभीकरण कर लिया है package.json
, आइए दो पैकेज स्थापित करने के लिए आगे बढ़ें जो हमारे सर्वर के निर्माण में सहायक होंगे। पहला है Express.js, जो नोड अनुप्रयोगों के तेज़ और आसान विकास के लिए एक वेब ढांचा है:
$ yarn add express -D
दूसरा पैकेज जो हम इंस्टॉल करेंगे वह मोंगोस पैकेज है, जो हमें नोड ऐप में हमारे डेटाबेस के लिए उचित स्कीमा बनाने में मदद करेगा:
$ yarn add mongoose -D
आवश्यक विकास निर्भरताएँ अब सफलतापूर्वक स्थापित होने के साथ, अब हम अपने MongoDB डेटाबेस को अपने नोड एप्लिकेशन से जोड़ने के लिए कोड लिख सकते हैं।
उस निर्देशिका में जिसे हमने अभी प्रोजेक्ट के लिए बनाया है, एक बनाएं server.js
पट्टिका
$ touch server.js
इसके बाद, हम नोड एप्लिकेशन के लिए मूल सेटअप को परिभाषित करते हैं server.js
, एक सरल एक्सप्रेस सर्वर बनाकर।
const express = require("express");
const mongoose = require("mongoose");
const app = express();
const port = 8000;
app.listen(port, () => {
console.log(`Server started at port ${port}`);
});
हम टर्मिनल में निम्नलिखित कोड चलाकर पुष्टि कर सकते हैं कि हमारा सर्वर उसी तरह चल रहा है जैसा उसे चलना चाहिए।
$ node server.js
जिसका परिणाम होना चाहिए:
Server started at port 8000
अब, आप नोड ऐप को डेटाबेस से कनेक्ट करने के लिए URI (यूनिफ़ॉर्म रिसोर्स आइडेनफायर) को कॉपी करने के लिए अपने MongoDB डैशबोर्ड पर वापस जा सकते हैं।
I server.js
समान संसाधन पहचानकर्ता को संग्रहीत करने के लिए एक वैरिएबल बनाएं और यूआरआई को बदलें आपके MongoDB खाते के पासवर्ड के साथ।
const express = require("express");
const mongoose = require("mongoose");
const app = express();
const uri =
"mongodb+srv://UcheAzubuko:@stackabusecluster.fgavg5s.mongodb.net/?retryWrites=true&w=majority";
const port = 8000;
app.listen(port, () => {
console.log(`Server started at port ${port}`);
});
इसके बाद, हम MongoDB से जुड़ने में सक्षम बनाने के लिए एक एसिंक्रोनस फ़ंक्शन बनाते हैं, क्योंकि हम नहीं जानते कि डेटाबेस से कनेक्ट होने से पहले फ़ंक्शन को पूरा होने में कितना समय लग सकता है:
const express = require("express");
const mongoose = require("mongoose");
const app = express();
const uri =
"mongodb+srv://UcheAzubuko:@stackabusecluster.fgavg5s.mongodb.net/?retryWrites=true&w=majority";
async function connect() {
try {
await mongoose.connect(uri);
console.log("Connected to MongoDB");
} catch (error) {
console.log(error);
}
}
connect();
const port = 8000;
app.listen(port, () => {
console.log(`Server started at port ${port}`);
});
हमने एक एसिंक्रोनस फ़ंक्शन बनाया है जो लॉग करता है Connected to MongoDB
जब MongoDB और नोड ऐप के बीच कनेक्शन सफलतापूर्वक स्थापित हो जाए तो संदेश भेजें, और यदि कोई त्रुटि होती है तो उसे लॉग करें।
अब, हमें सर्वर को पुनरारंभ करना चाहिए:
$ node server.js
और एक सफलतापूर्वक संदेश प्राप्त करें जो हमें सूचित करता है कि MongoDB डेटाबेस और नोड एप्लिकेशन के बीच एक सुरक्षित कनेक्शन अब स्थापित हो गया है:
Server started at port 8000
Connected to MongoDB
इस बिंदु पर, जब आप अपने प्रोजेक्ट क्लस्टर के लिए अपने डैशबोर्ड पर वापस जाते हैं, तो अब आपको वह जानकारी दिखाई देगी जो दर्शाती है कि हाल ही में डेटाबेस से कोई कनेक्शन हुआ है:
ठीक है दोस्तों, बस इतना ही! हमने Node.js एप्लिकेशन के भीतर MongoDB डेटाबेस को सफलतापूर्वक एकीकृत कर लिया है।
निष्कर्ष
इस लेख में, हमने सीखा है कि Node.js एप्लिकेशन और MongoDB डेटाबेस के बीच एक सुरक्षित कनेक्शन कैसे बनाया जाए। अब, जब आपको MongoDB का उपयोग करके एप्लिकेशन बनाने की आवश्यकता हो तो आप आसानी से ऐसा कर सकते हैं; पारिस्थितिकी तंत्र में एक बहुत लोकप्रिय गैर-संबंधपरक डेटाबेस।
यह मत भूलो कि MongoDB दस्तावेज़ीकरण MongoDB के बारे में जानने के लिए, और एक्सप्रेस एप्लिकेशन बनाने के बारे में अधिक जानने के लिए, संपर्क करें एक्सप्रेस दस्तावेज़ीकरण भी है.
यदि आप ट्यूटोरियल का अनुसरण करते समय अटक जाते हैं, तो बेझिझक इस पर विचार करें परियोजना के लिए GitHub रेपो अपना रास्ता खोजने के लिए.