2015-03-24 11 views
88

मोंगोडीबी पर फायरबेस का उपयोग करने का क्या फायदा है?मोंगोडीबी बनाम फायरबेस

मुझे पता है कि फायरबेस अपने स्वयं के एपीआई के साथ क्लाउड बेस सेवा है, लेकिन मुझे लगता है कि मोंगो मुझे लंबे समय तक अधिक नियंत्रण दे सकता है।

+6

यह राय-आधारित है। और ... मोंगोडीबी से फायरबेस तक माइग्रेट करने के बारे में पहले से ही एक सवाल है, जो कि मोंगो डीबी के ऊपर फायरबेस कैसे बैठता है (देखें [यहां] (http://stackoverflow.com/questions/16043822/migrating-from-mongodb-to-firebase))। निश्चित नहीं है कि मैं इसे एक सटीक डुप्लिकेट के रूप में गिनता हूं, लेकिन यह निश्चित रूप से समान है। –

+27

@ डेविड यह राय आधारित नहीं है। ओपी * नहीं * पूछ रहा है जो बेहतर है (जो राय आधारित होगा) लेकिन मोंगो डीबी पर एफबी के लाभ (यदि कोई है) पूछ रहा है। राय रखने के लिए हमें दोनों के लाभ और दोनों के दोषों को खींचने की जरूरत है और न्यायाधीश को कौन सा तकनीकी पसंद किया जा सकता है –

+0

मैं इसे पढ़ने के लिए @itsclarke की अनुशंसा करता हूं: https://crisp.chat/blog/why-you-should-never -यूज-फायरबेस-रीयलटाइम-डेटाबेस/ –

उत्तर

17

फायरबेस को रीयल-टाइम अपडेट के लिए डिज़ाइन किया गया है। यह आसानी से कोणीय के साथ एकीकृत करता है। दोनों नोएसक्यूएल डेटाबेस हैं। मोंगोडीबी सॉकेट.ओ एकीकरण के माध्यम से कोणीय के साथ भी ऐसा कर सकता है। Meteor.js भी वास्तविक समय अपडेट के लिए एक खुले सॉकेट कनेक्शन के साथ MongoDB का उपयोग करता है।

MongoDB स्थानीय रूप से चलाया जा सकता है, या कई अलग-अलग क्लाउड आधारित प्रदाताओं पर होस्ट किया जा सकता है। फायरबेस, मेरी राय में छोटे ऐप्स के लिए बहुत बढ़िया है, उठने और दौड़ने के लिए बहुत तेज़ है। मोंगो डीबी अधिक मजबूत बड़े ऐप्स के लिए आदर्श है, वास्तविक समय एकीकरण संभव है लेकिन इसमें थोड़ा और काम लगता है।

76
  • फायरबेस पिछड़ा कनेक्टिविटी वाला वास्तविक समय इंजन है। अर्थात। आप एक क्रॉस-प्लेटफ़ॉर्म ऐप बना सकते हैं जहां ग्राहक विशिष्ट डेटा और सर्वर पर ईवेंट की सदस्यता लेते हैं, सक्रिय रूप से ग्राहकों को
  • डेटा लेयर आपके लिए होस्ट किया जाता है। ध्यान दें कि यह अत्यधिक स्केलेबल है। यह एक अच्छा किकस्टाटर समाधान है। लेख प्रबंधन
  • भू-फायर सहित। रीयलटाइम भू समन्वय समाधान।
  • Firebase का स्पष्ट कमियां हैं:
    • आप इसके लिए जैसे ही आप बढ़ रही
    • यदि आपने dataLayer की मेजबानी नहीं कर सकते हैं (यदि डेटा के मालिक के लिए महत्वपूर्ण है या आप कुछ अलग सबनेट के लिए एक एप्लिकेशन का विकास शुरू भुगतान किया है)

संपादित करें: यहाँ एक अच्छा article कैसे Node.js + MongoDB के साथ अपने अनुप्रयोग में Firebase को बदलने के लिए है।इससे पता चलता है कि कितना काम आप अपने दम पर ऐसा करने के लिए है, और बताते हैं, IMHO, क्यों एक स्टार्टअप (छोटे एप्लिकेशन) (यदि ग्राहकों को रीयल-टाइम अपडेट आवश्यक हैं) Firebase के साथ शुरू और (MongoDB के साथ आगे बढ़ना किसी भी मामले स्वयं में होना चाहिए -written समाधान) यदि परियोजना विकसित हो रहा

संपादित 2 रखता है:

  • : Google Firebase द्वारा अधिग्रहीत किए जाने के बाद अब इसकी बुनियादी सुविधाओं के शीर्ष जो आप अपने दम पर निर्माण करने के लिए संघर्ष होगा पर विभिन्न सुविधाएं प्रदान करता है विकास के लिए

    • Cloud Messaging: उद्धार और प्लेटफ़ॉर्म पर संदेश प्राप्त मज़बूती से
    • File Storage: (आईओएस सहित)
    • Hosting आसान फ़ाइल भंडारण: Firebase के सर्वर से स्टैटिक फ़ाइलें देने
    • Crash Reporting (फ्री योजना में शामिल): नहीं एक पूर्ण लॉगिंग सेवा है, लेकिन महत्वपूर्ण मदद
  • विकास के लिए

    • Remote Config: ए/बी परीक्षण के लिए उपयुक्त
    • Dynamic Links: तेज़ी से अपने ऐप्लिकेशन कस्टमाइज़ अपने अनुप्रयोग
    • Notifications अंदर सही जगह पर भेजें: सही समय
पर उपयोगकर्ताओं के साथ सहभागिता
24

सेब और संतरे। Firebase एक बैकएंड-के रूप में एक सेवा युक्त पहचान प्रबंधन, रियल टाइम डेटा दृश्यों और एक दस्तावेज़ डेटाबेस है। यह बादल में चलता है।

MongoDB दूसरी तरफ एक अमीर क्वेरी भाषा साथ एक पूर्ण विकसित डेटाबेस है। सिद्धांत रूप में यह आपकी मशीन पर चलता है, लेकिन क्लाउड प्रदाता हैं।

यदि आप डेटाबेस घटक की तलाश में हैं तो केवल मोंगोडीबी अधिक परिपक्व और फीचर समृद्ध है।

17

मैं अंगुलर के लिए फायरबेस की लाइब्रेरी एंगुलरफायर के संदर्भ में इस प्रश्न का उत्तर दूंगा।

  1. टीएल; डॉ: महाशक्तियां। :-) बाध्यकारी

  2. AngularFire के तीन तरह डेटा। कोणीय दृश्य और $ गुंजाइश को बांधता है, यानी, स्थानीय उपयोगकर्ता में स्वचालित रूप से अपडेट किए जाने वाले आपके उपयोगकर्ता क्या करते हैं, और जब आपकी जावास्क्रिप्ट स्थानीय चर अद्यतन करता है तो दृश्य स्वचालित रूप से अपडेट होता है। फायरबेस के साथ क्लाउड डेटाबेस स्वचालित रूप से अद्यतन भी करता है। आपको $ http.get या $ http.put अनुरोध लिखने की आवश्यकता नहीं है, डेटा बस अपडेट हो जाता है।

  3. पांच-तरफा डेटा बाइंडिंग, और सात-तरफा, नौ-तरफा इत्यादि। मैंने एंगुलरफायर का उपयोग करके एक टिक-टैक-टो गेम बनाया। दो खिलाड़ी दो $ स्कोप्स और क्लाउड डेटाबेस अपडेट करने के दो विचारों के साथ एक साथ खेल सकते हैं। आप तीन या अधिक खिलाड़ियों के साथ एक गेम बना सकते हैं, सभी एक फायरबेस डाटाबेस साझा कर सकते हैं।

  4. एंगुलरफायर की ओएथ 2 लाइब्रेरी फेसबुक, गिटहब, Google, ट्विटर, टोकन और पासवर्ड के साथ प्राधिकरण को आसान बनाता है।

  5. डबल सुरक्षा। आप प्राधिकरण की आवश्यकता के लिए अपने कोणीय मार्गों को स्थापित कर सकते हैं, और डेटा को पढ़ने और लिखने के बारे में फ़ायरबेस में नियम स्थापित कर सकते हैं।

  6. कोई वापस अंत नहीं है। आपको नोड और एक्सप्रेस के साथ सर्वर बनाने की आवश्यकता नहीं है। अपने सर्वर चल रहा है बहुत काम, सुरक्षा के बारे में जानते हुए भी की आवश्यकता होती है हो सकता है, आदि, की आवश्यकता होती है

  7. फास्ट है कि किसी को कुछ करना है, तो सर्वर नीचे चला जाता है। यदि आपका सर्वर सैन फ्रांसिस्को में है और ग्राहक सैन जोस में है, ठीक है। लेकिन आपके सर्वर से कनेक्ट बैंगलोर में एक ग्राहक के लिए धीमा हो जाएगा। फायरबेस को हर जगह तेजी से कनेक्शन के लिए दुनिया भर में तैनात किया जाता है।

+0

फ़ायरलोप क्या है?, क्या यह फायरबेस के साथ एक आराम एपीआई लिखने का एक तरीका है? – ashishSober

+0

असल में मुझे लगता है कि एंजुलरफायर अद्भुत है, क्या आप इसे ले जा सकते हैं और इसे अपने डेटाबेस सिस्टम के साथ उपयोग करने के लिए पास कर सकते हैं ?, इस मामले में मोंगो के साथ, तो यह आश्चर्यजनक होगा कि आप तीन डेटा-मार्ग बाध्यकारी का उपयोग कर सकते हैं और तत्काल अपने मूल्यों को अद्यतन करने में सक्षम होने के लिए भी – Kross

12

फायरबेस का उपयोग करने के बाद मुझे काफी कुछ मिल गया है।

आप बड़े, वास्तविक समय क्षुधा के लिए इसका इस्तेमाल करने का इरादा है, यह सबसे अच्छा विकल्प नहीं है। इसमें खराब त्रुटि प्रबंधन प्रणाली और सीमाओं सहित समस्याओं की अपनी विस्तृत श्रृंखला है। आप फायरबेस और इसके कंकों को समझने की कोशिश कर रहे महत्वपूर्ण समय बिताएंगे। एक परियोजना के लिए एक मोनोलिथिक चीज बनना भी आसान है जो नियंत्रण से बाहर हो जाता है। एक बड़े ऐप के लिए बैकएंड तक मोंगो डीबी एक बेहतर विकल्प है।

हालांकि, अगर आप एक छोटे से एप्लिकेशन हो या जल्दी से कुछ प्रोटोटाइप करने के लिए की जरूरत है, Firebase एक महान पसंद है। जमीन पर चलने के लिए यह अविश्वसनीय रूप से आसान तरीका होगा।

4

मेरे अनुभव में, Firebase के साथ काम करता है, तो आप उपयोगकर्ता प्रबंधन, डेटाबेस, पहले से ही अच्छी तरह से एकीकृत कर रहे हैं इन सुविधाओं के सभी के बाद से अनुप्रयोग के मैसेजिंग तरह करने के लिए कोशिश कर रहे हैं एक बहुत बड़ा फायदा है।

अन्य लोगों की तरह, ने कहा है कि कर रहे हैं तो आप सिर्फ डेटाबेस/क्वेरी करने पहलू पर ध्यान केंद्रित, मोंगो के लिए चिपके रहते हैं।

7

फ़ायरबेसेज सुविधाओं का एक सूट है।

  • रीयलटाइम डाटाबेस
  • होस्टिंग
  • प्रमाणीकरण
  • भंडारण
  • क्लाउड संदेश
  • रिमोट कॉन्फ़िग
  • परीक्षण लैब
  • क्रैश रिपोर्टिंग
  • सूचनाएं
  • ऐप अनुक्रमण
  • गतिशील लिंक
  • आमंत्रित किया है
  • ऐडवर्ड्स
  • AdMob

मेरा मानना ​​है कि आप मोंगो डीबी साथ Firebase रीयलटाइम डाटाबेस तुलना करने के लिए कोशिश कर रहे हैं। फायरबेस रीयलटाइम डाटाबेस डेटा को JSON प्रारूप के रूप में संग्रहीत करता है और डेटा के सभी ग्राहकों को डेटा के सभी अपडेटों को सिंक करता है। यह आपको किसी भी डेटाबेस को सेटअप और स्केल करने के लिए आवश्यक सभी जटिलताओं से आपको सारणीबद्ध करता है।मैं firebase जहां जटिल परिस्थितियां जहां डाटा के एकत्रीकरण की जरूरत है की बहुत कुछ है सुझाव नहीं देंगे। (प्रश्नों योग की जरूरत है कि सामान के/औसत तरह)। हालांकि यह हाल ही में फायरबेस कार्यों का उपयोग कर प्राप्त करने योग्य है। फायरबेस में मॉडलिंग डेटा मुश्किल है। लेकिन यह तुरंत शुरू करने का सबसे अच्छा तरीका है। MongoDB एक डेटाबेस है। यह आपको बहुत शक्तिशाली सुविधाएं देता है। लेकिन किसी भी प्लेटफ़ॉर्म में स्थापित होने पर मोंगोडीबी आपको इसे स्वयं प्रबंधित करने की आवश्यकता है।

जब मैं Firebase या MongoDB (या किसी भी डीबी) के बीच चयन करने के लिए प्रयास करें। मैं निम्नलिखित का जवाब देने की कोशिश करता हूं।

  1. वहाँ कई एकत्रीकरण प्रश्नों निष्पादित हो जाता है कि (रिपोर्टिंग उपकरण या बीआई उपकरण का मामले में की तरह) कर रहे हैं।। हाँ न के लिए Firebase
  2. जाते हैं तो मैं लेनदेन के बहुत प्रदर्शन करने के लिए की जरूरत है। (हाँ तो मैं firebase साथ जाने के लिए नहीं करना चाहते हैं, तो) (Tranactions कुछ हद तक आसान हालांकि कार्यों की शुरूआत के बाद कर रहे हैं, लेकिन वह भी एक भूमि के ऊपर लेन-देन की बहुत बनाए रखा जाना चाहिए अगर है)
  3. क्या समय मैं की क्या ज़रूरत है चीज़ें प्राप्त करें और चलें। (फायरबेस सेटअप और एकीकृत करने के लिए बहुत आसान है)।
  4. मैं DB और मुसीबत शूटिंग के डीबी संबंधित सामान ऊपर पैमाने पर करने के लिए विशेषज्ञता है।
5

Firebase वास्तविक समय परिवर्तन प्रतिबिंब, प्रमाणीकरण तंत्र के आसान एकीकरण, और तेजी से वेब विकास के लिए अन्य अंतर्निहित सुविधाओं के बहुत सारे की तरह कुछ अच्छी सुविधाएँ प्रदान (Firebase अधिक सास की तरह तो scaleability के बारे में चिंता करने की कोई जरूरत नहीं है)। फायरबेस, वास्तव में वेब विकास को इतना आसान बनाता है कि कभी अस्तित्व में न हो। Firebase डेटाबेस MongoDB का एक कांटा है।

मोंगोडीबी पर फायरबेस का उपयोग करने का क्या फायदा है?

आप MongoDB से अधिक Firebase के सभी अंतर्निहित सुविधाओं का लाभ ले सकते।

संबंधित मुद्दे