Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Redis

Next.js ऐप्स के लिए सर्वश्रेष्ठ डेटाबेस चुनना: सर्वरलेस-तैयार विकल्प

परिचय

Next.js सर्वर-साइड रेंडरिंग क्षमता के साथ डेवलपर्स को फुल-स्टैक एप्लिकेशन बनाने में सक्षम बनाता है। Vercel और Netlify उन्हें सर्वरलेस फंक्शन के साथ बैकएंड API लिखने में मदद करते हैं। तो अगला सवाल यह है कि Next.js ऐप्स के लिए आदर्श डेटाबेस क्या है। इस पोस्ट में, मैं उन डेटाबेस की समीक्षा करूंगा जो Next.js समुदाय में लोकप्रिय हैं। मैं इस पर टिप्पणी करूंगा कि वे सर्वरलेस मॉडल में कैसे फिट होते हैं। दो चीजें जांचनी हैं:

  • सर्वरलेस मूल्य निर्धारण: क्या कीमत पे-पर-यूज़ है? जब डेटाबेस उपयोग में नहीं है, तो क्या आपको अभी भी भुगतान करना होगा?
  • सर्वरलेस कनेक्शन: क्या HTTP-आधारित कनेक्शन के लिए समर्थन है? ताकि सर्वरलेस फंक्शन के साथ आम कनेक्शन समस्याएं न हों।

TLDR

मैंने PlanetScale, Supabase, Upstash, Fauna, DynamoDB और MongoDB Atlas की समीक्षा की है। प्रत्येक उत्पाद के फीचर सेट की तुलना करने के लिए नीचे दी गई तालिका देखें।

फीचर PlanetScale Supabase Upstash Fauna DynamoDB MongoDB Atlas
APIMySQLPostgreSQLRedisFaunaDynamoDBMongoDB
प्रकाररिलेशनलरिलेशनलKV स्टोरडॉक्यूमेंटडॉक्यूमेंटडॉक्यूमेंट
फ्री टियर🟢🟢🟢🟢🟢🟢
सर्वरलेस मूल्य निर्धारण🟡 (न्यूनतम $29)🟡 (न्यूनतम $25)🟢🟡 (न्यूनतम $22.5)🟢🟢
REST API🔴🟢🟢🟢🟢🟢
GraphQL API🔴🔴🔴🟢🔴🔴
ग्लोबल रेप्लिकेशन🔴🔴🟢🟢🟢🟡 (केवल डेडिकेटेड के लिए)
डेटाबेस ब्रांचिंग🟢🔴🔴🔴🔴🔴
रियलटाइम अपडेट🔴🟢🔴🔴🟢🟡 (Realm के माध्यम से)
कीमत रीड$1.5/10M$0.09/GB$0.2/100K$0.45/1M (4KB)$0.25/1M (2KB)$0.3/1M (4KB)
कीमत राइट$1.5/1M$0.09/GB$0.2/100K$2.25/1M (1KB)$1.25/1M (1KB)$1.25/1M (1KB)
कीमत स्टोरेज$1.25/GB$0.125/GB$0.25/GB$0.23/GB$0.25/GB$0.25/GB

PlanetScale

  • PlanetScale एक MySQL-संगत डेटाबेस-एज़-अ-सर्विस है।
  • यह पृष्ठभूमि में Vitess का उपयोग करता है। यह बहुत अच्छा है क्योंकि Vitess का उपयोग YouTube जैसे दिग्गज सक्रिय रूप से कर रहे हैं।
  • PlanetScale ने डेटाबेस ब्रांचिंग अवधारणा पेश की। आप शाखाएं बना सकते हैं और स्कीमा परिवर्तनों को अपने प्रोडक्शन डेटाबेस में मर्ज कर सकते हैं जैसे git। AFAIK, यह सुविधा PlanetScale के लिए अद्वितीय है।
  • इसमें प्रति माह 100M रीड के साथ एक फ्री टियर है।
  • पेड प्लान $29 से शुरू होते हैं। पेड प्लान के मुख्य मूल्य घटक हैं:
    • स्टोरेज/माह: पहले 25GB के बाद $1.25/GB
    • रीड/माह: पहले 500M के बाद $1.50 प्रति 10M
    • राइट/माह: पहले 50M के बाद $1.50 प्रति 1M
  • PlanetScale के पास HTTP/REST-आधारित API नहीं है।

मेरी टिप्पणियां:

  • होम पेज पर कहा गया है: Github, Square, Slack आदि द्वारा विश्वसनीय। क्या ये कंपनियां PlanetScale या Vitess का उपयोग करती हैं? यदि ये कंपनियां PlanetScale का उपयोग करती हैं तो यह बहुत अच्छा है। अन्यथा, मुझे इस प्रकार की मार्केटिंग के बारे में अच्छा नहीं लगता। Vitess पर भरोसा और PlanetScale पर भरोसा अलग चीजें हैं।
  • PlanetScale को TCP-आधारित कनेक्शन (MySQL कनेक्शन) का उपयोग करने की आवश्यकता होती है। यह सर्वरलेस फंक्शन के लिए एक समस्या हो सकती है क्योंकि वे स्टेटलेस हैं। वे कहते हैं कि कनेक्शन की संख्या Vitess के लिए कोई समस्या नहीं है लेकिन फिर भी प्लान के लिए अधिकतम कनेक्शन लिमिट है।
  • HTTP/REST API की कमी Cloudflare Workers और Vercel Edge प्लेटफॉर्म से PlanetScale का उपयोग करना असंभव बनाती है क्योंकि वे TCP कनेक्शन की अनुमति नहीं देते हैं।
  • PlanetScale पेड प्लान $29 से शुरू होते हैं, इसलिए कीमत शून्य तक स्केल नहीं होती। यहां तक कि अगर आप DB का उपयोग नहीं कर रहे हैं, तो आपको प्रति DB कम से कम $29 का उपयोग करना होगा। मुझे लगता है कि यह सर्वरलेस की परिभाषा के साथ विरोधाभास है।
  • विस्तृत मूल्य निर्धारण
  • Next.js और Prisma के साथ PlanetScale का उपयोग करने का ट्यूटोरियल
  • वीडियो ट्यूटोरियल जो PlanetScale और Next.js का उपयोग करता है, फिर Vercel पर डिप्लॉय करता है
  • PlaneScale लॉन्च पर Hackernews टिप्पणियां

Supabase

  • Supabase डेवलपर टूल्स का एक संग्रह है जिसमें डेटाबेस, प्रमाणीकरण सेवा, स्टोरेज शामिल है। वे खुद को Open Source Firebase Alternative कहते हैं।
  • Supabase एक PostgreSQL डेटाबेस प्रदान करता है।
  • Firebase की तरह, Supabase डेवलपर्स को डेटाबेस पर परिवर्तनों को रियल-टाइम में सुनने में सक्षम बनाता है।
  • Supabase PostgREST का उपयोग करके एक RESTful API प्रदान करता है। यह विशेष रूप से उपयोगी है यदि आप सर्वरलेस फंक्शन में Supabase का उपयोग करने की योजना बना रहे हैं।
  • Supabase को इसके REST API के कारण Cloudflare Workers में उपयोग किया जा सकता है। इसे देखें।
  • Supabase फ्री टियर 500MB स्टोरेज और 2GB डेटा ट्रांसफर मासिक तक सीमित है।
  • PlanetScale के समान, Supabase के लिए पेड डेटाबेस की न्यूनतम लागत $25/माह है। PayG मूल्य निर्धारण का सारांश:
    • स्टोरेज: $0.125 प्रति GB-माह
    • डेटा ट्रांसफर: $0.09 प्रति GB

मेरी टिप्पणियां:

  • Supabase डेटाबेस, प्रमाणीकरण सेवा, ऑब्जेक्ट स्टोरेज और सर्वरलेस फंक्शन भी आ रहे हैं। मुझे चिंता है कि एक स्टार्टअप के लिए कई सेवाओं को उच्च गुणवत्ता के साथ प्रदान करना और Google द्वारा समर्थित Firebase के साथ प्रतिस्पर्धा करना कठिन हो सकता है। मुझे आशा है कि वे सफल होंगे।
  • PlanetScale की तरह, मुझे लगता है कि उनका मूल्य निर्धारण सही सर्वरलेस नहीं है। उनके पेड प्लान में एक निश्चित मासिक लागत की आवश्यकता होती है इसलिए यह कभी शून्य तक स्केल नहीं होता।
  • विस्तृत मूल्य निर्धारण
  • Next.js के साथ शुरुआत करें
  • वीडियो: Supabase Crash Course
  • वीडियो ट्यूटोरियल: Next.js के साथ Supabase

Upstash Redis

  • Upstash प्रति अनुरोध मूल्य निर्धारण के साथ सर्विस के रूप में Redis प्रदान करता है।
  • यह Redis और REST API दोनों प्रदान करता है। इसलिए आप इसे सर्वरलेस और एज (Cloudflare Workers) फंक्शन दोनों के साथ उपयोग कर सकते हैं।
  • Upstash के क्षेत्रीय और ग्लोबल विकल्प हैं। ग्लोबल डेटाबेस डेटा को कई क्षेत्रों में रेप्लिकेट करता है।
  • इसमें अधिकतम 10,000 कमांड प्रति दिन के साथ एक फ्री टियर है। इसका पे-एज़-यू-गो मूल्य निर्धारण इस प्रकार है:
    • कमांड: $0.2 प्रति 100K कमांड
    • स्टोरेज: $0.25 प्रति GB

मेरी टिप्पणियां:

  • हम (Upstash) और RedisLabs दोनों मानते हैं कि Redis क्लासिक Redis उपयोग के मामलों (कैशिंग, KV-स्टोर) के अलावा कई उपयोग के मामलों के लिए पर्याप्त शक्तिशाली है। लेकिन फिर भी मैं कई डेवलपर्स को प्राथमिक डेटा स्टोर के रूप में SQL डेटाबेस पसंद करते हुए देखता हूं। यदि आपको जटिल क्वेरी क्षमताओं की आवश्यकता है, तो Redis आपकी पहली पसंद नहीं हो सकता है।
  • विस्तृत मूल्य निर्धारण
  • Next.js और Redis के साथ शुरुआत करें
  • Next.js एज फंक्शन के साथ शुरुआत करें
  • वीडियो: Next.js के साथ सर्वरलेस Redis का उपयोग करना

Fauna

  • Fauna एक क्लाउड सर्विस के रूप में विश्व स्तर पर रेप्लिकेटेड स्ट्रॉन्गली कंसिस्टेंट डेटाबेस प्रदान करता है।
  • यह Fauna API के अलावा GraphQL API प्रदान करता है।
  • इसके कनेक्शन HTTP-आधारित हैं इसलिए आप कनेक्शन संबंधी किसी भी समस्या के बिना सर्वरलेस फंक्शन में Fauna का उपयोग कर सकते हैं।
  • इसका सबसे बेसिक प्लान (Individual) $22.5/माह से शुरू होता है।
  • Fauna मूल्य निर्धारण:
    • रीड: $0.45/मिलियन यूनिट (4KB)
    • राइट: $2.25/मिलियन यूनिट (1KB)
    • स्टोरेज: $0.23/GB

मेरी टिप्पणियां:

  • ग्लोबल स्ट्रॉन्ग कंसिस्टेंसी अतिरिक्त प्रदर्शन लागत के साथ आती है। अन्य वैकल्पिक डेटाबेस की तुलना में राइट की लेटेंसी अधिक होती है।
  • यदि आप GraphQL का उपयोग करेंगे तो यह बहुत अच्छा है लेकिन अन्यथा FQL सीखना और उपयोग करना मेरे लिए कठिन था।
  • Fauna मूल्य निर्धारण की अपनी इकाइयां (TRO, TWO, TCO) और कई आयाम हैं। मूल्य निर्धारण समझने के लिए आपको लेख पढ़ने की आवश्यकता है।
  • मूल्य निर्धारण पेज
  • Next.js के साथ Fauna का उपयोग करना
  • वीडियो: Next.js के साथ Fauna का उपयोग करना

MongoDB Atlas

  • Atlas एक मैनेज्ड सर्विस के रूप में MongoDB है जिसमें सर्वरलेस, शेयर्ड और डेडिकेटेड प्लान हैं।
  • डेटा (REST) API हाल ही में घोषित किया गया है। यह आपको HTTP का उपयोग करके अपने डेटाबेस तक पहुंचने की अनुमति देता है।
  • MongoDB Atlas की कुछ सीमाओं के साथ एक सर्वरलेस प्लान है। इस प्लान का मूल्य निर्धारण प्रति ऑपरेशन है इसलिए यह सर्वरलेस उत्पाद से अपेक्षित रूप से शून्य तक स्केल होता है।
  • मल्टी-रीजन रेप्लिकेशन केवल डेडिकेटेड प्लान के साथ उपलब्ध है।
  • सर्वरलेस मूल्य निर्धारण:
    • रीड: $0.30 प्रति मिलियन यूनिट (4KB)
    • राइट: $1.25 प्रति मिलियन यूनिट (1KB)
    • स्टोरेज: $0.25/GB-माह

मेरी टिप्पणियां:

  • सर्वरलेस प्लान और डेटा API हमें बताता है कि MongoDB Atlas सर्वरलेस स्पेस को नजरअंदाज नहीं करता है। लेकिन दोनों समाधान पूर्वावलोकन चरण में हैं और सर्वरलेस एप्लिकेशन के लिए आदर्श डेटा समाधान बनने के लिए कुछ सुधारों की आवश्यकता है।
  • मूल्य निर्धारण पेज
  • Next.js ऐप में MongoDB को इंटीग्रेट कैसे करें
  • वीडियो: अपने NextJS ऐप में MongoDB इंटीग्रेट करना

DynamoDB

  • की-वैल्यू और डॉक्यूमेंट डेटा मॉडल के साथ फुली मैनेज्ड NoSQL डेटाबेस।
  • कनेक्शन HTTP-आधारित हैं इसलिए यह सर्वरलेस एप्लिकेशन के लिए उपयुक्त है।
  • मूल्य निर्धारण डेटा ट्रांसफर लागत के अलावा प्रति ऑपरेशन है। इसलिए यह शून्य तक स्केल होता है।
  • डिफ़ॉल्ट रूप से, रीड अंततः सुसंगत हैं। आप स्ट्रॉन्गली कंसिस्टेंट रीड का भी अनुरोध कर सकते हैं लेकिन इसकी कुछ सीमाएं हैं।
  • आप अतिरिक्त लागत के साथ मल्टी-रीजन रेप्लिकेशन सक्षम कर सकते हैं।
  • मूल्य निर्धारण:
    • रीड: $0.25 प्रति मिलियन रीड रिक्वेस्ट यूनिट (2KB)
    • राइट: $1.25 प्रति मिलियन रीड रिक्वेस्ट यूनिट (1KB)
    • डेटा ट्रांसफर (आउट): $0.09 प्रति GB
    • स्टोरेज: $0.25 प्रति GB-माह

मेरी टिप्पणियां:

  • मेरे लिए, DynamoDB API Redis या MongoDB जितना सहज नहीं है।
  • एक वेंडर लॉक-इन समस्या है। DynamoDB केवल AWS पर है और आप कोड बदले बिना अपने एप्लिकेशन को किसी अन्य प्रदाता पर नहीं ले जा सकते।
  • मूल्य निर्धारण पेज
  • उदाहरण ऐप: DynamoDB के साथ Next.js
  • वीडियो कोर्स: DynamoDB के साथ Next.js

निष्कर्ष

तो Next.js के लिए सबसे अच्छा डेटाबेस क्या है? अपेक्षा के अनुरूप, कोई एकल उत्तर नहीं है। लेकिन आइए कुछ सशर्त उत्तर दें:

  • यदि आपको रिलेशनल DB चाहिए 👉🏻 Supabase या PlanetScale
  • यदि आपको डेटाबेस ब्रांचिंग चाहिए 👉🏻 PlanetScale
  • यदि आपको रियल-टाइम अपडेट चाहिए 👉🏻 Supabase या MongoDB Atlas
  • यदि आपको ग्लोबल लो लेटेंसी चाहिए 👉🏻 Upstash या DynamoDB
  • यदि आपको ग्लोबल स्ट्रॉन्ग कंसिस्टेंसी चाहिए 👉🏻 Fauna
  • यदि आपको लो लेटेंसी की-वैल्यू स्टोर चाहिए 👉🏻 Upstash
  • यदि आप PostgreSQL पसंद करते हैं 👉🏻 Supabase
  • यदि आप MySQL पसंद करते हैं 👉🏻 PlanetScale
  • यदि आप Redis पसंद करते हैं 👉🏻 Upstash
  • यदि आप Mongo पसंद करते हैं 👉🏻 MongoDB Atlas
  • यदि आपको GraphQL चाहिए 👉🏻 Fauna

मैं निष्पक्ष और सही रहने की कोशिश की है। अगर आपको लगता है कि कुछ ऐसा है जिसे मुझे ठीक करने की आवश्यकता है, तो कृपया मेरी ट्विटर पर टिप्पणी छोड़ें।

  1. 2022 के शीर्ष 15 एप्पल टीवी गेम 2022 के शीर्ष 15 एप्पल टीवी गेम

    क्या आप जानते हैं कि एप्पल टीवी केवल फिल्में और टीवी शो देखने के लिए नहीं है? हां, यह हुलु, नेटफ्लिक्स और अमेज़न प्राइम जैसी स्ट्रीमिंग सेवाओं से जुड़ता है लेकिन इसके अलावा आप अपने आईफोन की सामग्री को अपने एप्पल टीवी पर कास्ट भी कर सकते हैं और उस पर iOS गेम भी खेल सकते हैं। सभी एप्पल टीवी में एक बिल

  1. 2022 के शीर्ष 10 Oculus VR गेम्स: इमर्सिव अनुभव और रोमांचक रोमांच 2022 के शीर्ष 10 Oculus VR गेम्स: इमर्सिव अनुभव और रोमांचक रोमांच

    Oculus एक ऐसा VR हेडसेट है जो वास्तविकताओं को पुनर्परिभाषित करने में सक्षम है जबकि आपको डिजिटल मनोरंजन की दुनिया से जोड़ता है। Oculus के लिए शीर्ष VR गेम इस मनोरंजन की दुनिया में गोता लगाने का एक तरीका है। इसके अलावा, बहुत सारे सर्वश्रेष्ठ मुफ्त Oculus Go गेम हैं जो आपको अपने पैरों से उखाड़ फेंकते ह

  1. PC के लिए शीर्ष 9 निन्टेंडो DS एमुलेटर - उच्च प्रदर्शन, सुरक्षित और मुफ्त PC के लिए शीर्ष 9 निन्टेंडो DS एमुलेटर - उच्च प्रदर्शन, सुरक्षित और मुफ्त

    आइए उन अच्छे पुराने दिनों में वापस चलें जब निन्टेंडो अभी भी जबरदस्त था, और हैंडहेल्ड चलते-फिरते समय बिताने का सबसे अच्छा तरीका थे। निन्टेंडो DS निन्टेंडो का एक लोकप्रिय गेमिंग डिवाइस था जिसने न्यू सुपर मारियो ब्रदर्स, द लीजेंड ऑफ जेल्डा, और पोकेमॉन रेड जैसे कुछ शानदार गेम को जन्म दिया। निन्टेंडो DS