Cloud Firestore की कीमत का उदाहरण देखें

अपने क्लाउड फायरस्टोर के उपयोग और लागतों का आकलन करने के लिए एक बुनियादी चैट ऐप के इस वास्तविक दुनिया के उदाहरण का उपयोग करें। यह एक सटीक अनुमान नहीं है, लेकिन यह आपको बेहतर ढंग से यह समझने में मदद कर सकता है कि आपके क्लाउड फायरस्टोर के उपयोग को कैसे बिल किया जाता है।

अवलोकन: उपयोग स्तर के अनुसार लागत

विशिष्ट लागतों को स्पष्ट करने के लिए, एक उदाहरण चैट ऐप पर विचार करें, जहां उपयोगकर्ता दो या दो से अधिक प्रतिभागियों के साथ चैट शुरू कर सकते हैं। उपयोगकर्ता सूची में अपनी सक्रिय चैट देख सकते हैं, संदेश पढ़ सकते हैं और संदेश भेज सकते हैं। इस उदाहरण के लिए, हम उत्तरी अमेरिका के बहु-क्षेत्र (विशेष रूप से nam5 ) के लिए मूल्य-निर्धारण का उपयोग कर रहे हैं।

मान्यताओं

उपयोग और डेटा भंडारण के बारे में निम्नलिखित धारणाओं पर विचार करें:

  • दैनिक सक्रिय उपयोगकर्ता (DAU) कुल ऐप इंस्टॉलेशन का 10% हैं। आप अपने दैनिक सक्रिय उपयोगकर्ताओं (डीएयू) के मोटे अनुमान का उपयोग करके अपनी दैनिक लागतों का अनुमान लगा सकते हैं। ये वे उपयोगकर्ता हैं जो किसी निश्चित दिन पर सक्रिय रूप से आपके ऐप को खोलते हैं और उसका उपयोग करते हैं, जो आम तौर पर आपके कुल ऐप इंस्टॉलेशन का एक छोटा सा सबसेट होता है। नीचे दी गई गणनाओं के लिए, हमने डीएयू को ऐप इंस्टॉलेशन की कुल संख्या के 10% के रूप में अनुमानित किया है।
  • दस्तावेज़ का आकार अपेक्षाकृत छोटा है। दस्तावेज़ के आकार के प्रकार के अनुसार विश्लेषण के लिए नीचे दी गई तालिका देखें।
  • डेटा केवल तीन महीने के लिए संग्रहीत किया जाता है। उदाहरण चैट ऐप में संदेश केवल तीन महीने की अवधि के लिए संग्रहीत किए जाते हैं। डिलीट ऑपरेशंस को ध्यान में रखते हुए, नीचे दी गई गणना प्रत्येक दैनिक लेखन के लिए दैनिक डिलीट दिखाती है।
  • ये लागत अनुमान उदाहरण ऐप की अधिकांश लागतों को दर्शाते हैं, लेकिन सभी को नहीं। हमने इस मार्गदर्शिका में उल्लिखित सबसे अधिक बार-बार होने वाले उपयोगकर्ता कार्यों के लिए संचालन, उपयोगकर्ता और संदेश संग्रहण, और निष्कासन की गणना करके ऐप की अधिकांश लागतों का हिसाब लगाया है। हालांकि, आपको अपने ऐप की संरचना और डेटा आवश्यकताओं के आधार पर अतिरिक्त लागतों को ध्यान में रखना पड़ सकता है। अपनी गणनाओं का मार्गदर्शन करने के लिए इस उदाहरण का उपयोग करें, लेकिन क्लाउड फायरस्टोर की लागतों की अधिक विस्तृत व्याख्या के लिए मूल्य निर्धारण पृष्ठ देखें।

उपयोगकर्ता कार्य द्वारा संचालन के विश्लेषण के लिए, विश्लेषण देखें : उपयोगकर्ता कार्य द्वारा बिल का उपयोग अनुभाग।

छोटा
(50 हजार इंस्टाल)

50,000 ऐप इंस्टॉल (5,000 दैनिक सक्रिय उपयोगकर्ता) के लिए: $12.14/माह

पढ़ें/लिखें लागत
कुल मासिक लागत = $11.10/माह
400K कुल दैनिक पढ़ता है = 50K नो-कॉस्ट रीड + (350K $0.06/100K पर पढ़ता है) = 3.5 * $0.06
$0.21 / दिन * 30 = $6.30
100K कुल दैनिक लिखता है = 20K नो-कॉस्ट राइट्स + (80K $0.18/100K पर लिखता है) = .8 * $0.18
$0.14 / दिन * 30 = $4.20
100K कुल दैनिक विलोपन = 20K नो-कॉस्ट डिलीट + ($0.02/100K पर 80K डिलीट) = .8 * $0.02
$0.02 / दिन * 30 = $0.60
भंडारण/नेटवर्किंग लागत
कुल मासिक लागत = $1.04/माह
दैनिक निकासी का 20KB / DAU * 5K DAU = 100एमबी दैनिक निकासी * 30 = 3GB मासिक नेटवर्क निकास
3 जीबी नो-कॉस्ट इग्रेशन = नो-कॉस्ट 1
15 केबी दैनिक संदेश भंडारण / डीएयू + 3 केबी भंडारण / स्थापित करें 2 = 45KB स्टोरेज / DAU * 5K DAUs = 225MB दैनिक भंडारण / DAU * 30 = 6.75GB मासिक संग्रहण उपयोग
1GB नो-कॉस्ट स्टोरेज + (5.75 * $0.18) = $1.04 / माह

Cloud Firestore के लिए 1 10GB मासिक नेटवर्क निष्कासन बिना किसी लागत के है।
2 चूंकि हमारी धारणा है कि डीएयू कुल ऐप इंस्टॉल का 10% है, यह संख्या उन उपयोगकर्ताओं की कुल संख्या के लिए है जिन्होंने आपका ऐप इंस्टॉल किया है।

मध्यम
(1M इंस्टॉल)

1,000,000 ऐप इंस्टॉल (100,000 दैनिक सक्रिय उपयोगकर्ता) के लिए: $292.02/माह

पढ़ें/लिखें लागत
कुल मासिक लागत = $261.90/माह
8M कुल दैनिक पढ़ता है = 50K नो-कॉस्ट रीड्स + (7.95M रीड्स $0.06/100K पर) = 79.5 * $0.06
$4.77 / दिन * 30 = $143.10
2M कुल दैनिक लिखता है = 20K नो-कॉस्ट राइट्स + (1.98M $0.18/100K पर लिखता है) = 19.8 * $0.18
$3.56 / दिन * 30 = $106.80
2M कुल दैनिक डिलीट = 20K नो-कॉस्ट डिलीट + ($0.02/100K पर 1.98M डिलीट) = 19.8 * $0.02
$0.40 / दिन * 30 = $12.00
भंडारण/नेटवर्किंग लागत
कुल मासिक लागत = $30.12/माह
20KB/दैनिक निकासी का DAU * 100K DAU = 2GB दैनिक निकासी * 30 = 60GB मासिक नेटवर्क निकास
10 जीबी नो-कॉस्ट इग्रेशन + (50 जीबी इग्रेशन * $0.12/जीबी) = $6.00/माह
15 केबी दैनिक संदेश भंडारण / डीएयू + 3 केबी भंडारण / स्थापित 1 = 45KB स्टोरेज / DAU * 100K DAU = 4.5GB दैनिक भंडारण / DAU * 30 = 135GB मासिक संग्रहण उपयोग
1GB नो-कॉस्ट स्टोरेज + (134GB * $0.18/GB) = $24.12/माह

1 चूंकि हमारी धारणा है कि डीएयू कुल ऐप इंस्टॉल का 10% है, यह संख्या आपके ऐप को इंस्टॉल करने वाले उपयोगकर्ताओं की कुल संख्या के लिए है।

बड़ा
(10 मिलियन इंस्टाल)

10,000,000 ऐप इंस्टॉल (1,000,000 दैनिक सक्रिय उपयोगकर्ता) के लिए: $2951.52

पढ़ें/लिखें लागत
कुल मासिक लागत = कुल: $2637.90/माह
80M कुल दैनिक पढ़ता है = 50K नो-कॉस्ट रीड्स + (79.95M रीड्स $0.06/100K पर) = 799.5 * $0.06
$47.97 / दिन * 30 = $1439.10
20M कुल दैनिक लिखता है = 20K नो-कॉस्ट राइट्स + (19.98M $0.18/100K पर लिखता है) = 199.8 * $0.18
$35.96 / दिन * 30 = $1078.80
20M कुल दैनिक डिलीट = 20K नो-कॉस्ट डिलीट + (19.98M $0.02/100K पर डिलीट) = 199.8 * $0.02
$4.00 / दिन * 30 = $120.00
भंडारण / नेटवर्किंग लागत
कुल मासिक लागत = $313.62/माह
दैनिक निकासी का 20KB / DAU * 1M DAU = 20GB दैनिक निकासी * 30 = 600GB मासिक नेटवर्क निकास
10 जीबी नो-कॉस्ट इग्रेशन + (590 जीबी इग्रेशन * $0.12/जीबी) = $70.80/माह
15 केबी दैनिक संदेश भंडारण / डीएयू + 3 केबी भंडारण / स्थापित 1 = 45KB स्टोरेज / DAU * 1M DAUs = 45GB डेली स्टोरेज / DAU * 30 = 1350GB मासिक संग्रहण उपयोग
(1जीबी नो-कॉस्ट स्टोरेज) + (1349जीबी * $0.18/जीबी) = 242.82/माह

1 चूंकि हमारी धारणा है कि डीएयू कुल ऐप इंस्टॉल का 10% है, यह संख्या आपके ऐप को इंस्टॉल करने वाले उपयोगकर्ताओं की कुल संख्या के लिए है।

Cloud Firestore बिलिंग मॉडल का एक लाभ यह है कि आप केवल उसी के लिए भुगतान करते हैं जिसका आप उपयोग करते हैं। परिणामस्वरूप, आपकी DAU गणना के साथ आपका बिल बढ़ और घट सकता है।

विश्लेषण: उपयोगकर्ता कार्य द्वारा बिल का उपयोग

हमारे उदाहरण चैट ऐप के लिए, डेटा संरचना इस प्रकार है:

  • users/{userId} — उपयोगकर्ता रिकॉर्ड
  • groups/{groupId} — 2 या अधिक उपयोगकर्ताओं के बीच चैट
    • messages/{messageId} — चैट में प्रत्येक संदेश.

आधार सामग्री भंडारण

ऐप के डेटा को संग्रहीत करने के लिए भंडारण लागत की गणना करने के लिए, दस्तावेज़ आकार के बारे में निम्नलिखित धारणाएं लागू करें:

संग्रह दस्तावेज़ का आकार (पारगमन में) दस्तावेज़ का आकार (डिस्क पर)*
उपयोगकर्ताओं 1KB 3केबी
समूहों 0.5 केबी 1.5 केबी
संदेशों 0.25 केबी 0.75KB

*इस आकार की गणना में संदेश फ़ील्ड के लिए अनुक्रमणिका शामिल है, लेकिन यह मानता है कि संदेश सामग्री के लिए अनुक्रमण अक्षम है।

भंडारण लागत कम करने के लिए ऐप केवल उन संदेशों को संग्रहीत करता है जो तीन महीने तक पुराने हैं।

भंडारण लागतों की गणना के बारे में अधिक जानकारी के लिए, भंडारण आकार की गणना को समझना देखें।

संचालन

उपयोगकर्ता आमतौर पर ऐप में निम्नलिखित सामान्य कार्यों को पूरा करते हैं:

  • चैट की सूची देखें: उपयोगकर्ता ऐप की होम स्क्रीन खोलते हैं और हाल ही में पोस्ट किए गए संदेश द्वारा आदेशित चैट (समूह और प्रत्यक्ष) की एक सूची देखते हैं।
  • चैट में संदेश पढ़ें: उपयोगकर्ता होम स्क्रीन से चैट का चयन करते हैं और चैट से हाल के संदेशों को पढ़ते हैं।
  • चैट को संदेश भेजें: उपयोगकर्ता चैट (समूह या प्रत्यक्ष) को संदेश भेजते हैं।

क्लाउड फायरस्टोर में तीन विशिष्ट उपयोगकर्ता कार्यों के लिए उदाहरण ऐप का कुल अनुमानित संचालन इस प्रकार है:

  • पढ़ता है: (5 * 10) + (30) = 80 पढ़ता है / उपयोगकर्ता / दिन
  • लिखता है: (10 * 2) = 20 लिखता है / उपयोगकर्ता / दिन
  • नेटवर्क निकास : (50 * 0.25KB) + (30 * 0.25KB) = 20KB / उपयोगकर्ता / दिन
  • संग्रहण : (20 * 0.75KB) = 15 KB / उपयोगकर्ता / दिन

उपयोगकर्ता कार्य द्वारा कुल उपयोग

ऐप में संचालन, भंडारण और नेटवर्किंग लागतों का पूर्ण विवरण और विश्लेषण देखने के लिए प्रत्येक उपयोगकर्ता कार्य का चयन करें।

चैट की सूची देखें

ऐप की होम स्क्रीन 25 सबसे हालिया चैट को लोड करती है, 25 दस्तावेज़ पढ़ने के लिए शुल्क लगता है। मान लें कि एक सक्रिय उपयोगकर्ता प्रति दिन 5 बार ऐप खोलता है, प्रत्येक दिन प्रति उपयोगकर्ता कुल 125 पढ़ता है। हालांकि, अधिक कुशल क्वेरी, जैसे निम्न उदाहरण में, इस भार को कम कर सकती हैं।

नीचे दिए गए उदाहरण में, हम ऐप द्वारा संग्रहीत प्रत्येक सफल फ़ेच के टाइमस्टैम्प का उपयोग करके क्वेरी को नई चैट तक सीमित करते हैं:

db.collection('groups')
  .where('participants', 'array-contains', 'user123')
  .where('lastUpdated', '>', lastFetchTimestamp)
  .orderBy('lastUpdated', 'desc')
  .limit(25)

मान लें कि हर बार उपयोगकर्ता द्वारा ऐप को चेक करने पर औसतन 10 अपडेटेड चैट होती हैं। इस क्वेरी में केवल 10 दस्तावेज़ पढ़े जाते हैं।

चैट में संदेश पढ़ें

उपयोगकर्ता हाल के संदेशों को देखने के लिए होम स्क्रीन से चैट थ्रेड्स में क्लिक करते हैं, प्रारंभिक लोड में सबसे हाल के 50 संदेशों को लोड करते हैं।

मान लें कि सामान्य उपयोगकर्ता इस क्रिया को प्रतिदिन 5 बार करता है (हर बार जब वे होम स्क्रीन खोलते हैं), जिससे प्रत्येक दिन प्रति उपयोगकर्ता कुल 250 बार पढ़ा जाता है। हम अपनी क्वेरी को अंतिम बार प्राप्त करने के बाद से नए संदेशों तक सीमित कर सकते हैं:

db.collection('groups')
  .doc('group234')
  .collection('messages')
  .where('sentTime', '>', lastFetchTimestamp)
  .orderBy('sentTime', 'desc')
  .limit(50)

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

चैट पर संदेश भेजें

चैट में शामिल होने के बाद उपयोगकर्ता अन्य प्रतिभागियों को संदेश भेज सकते हैं। मान लें कि एक सक्रिय उपयोगकर्ता प्रति दिन लगभग 10 संदेश भेजता है।

प्रत्येक भेजे गए संदेश के कारण दो दस्तावेज़ लिखेंगे: एक चैट के उप-संग्रह को messages लिखता है और दूसरा चैट पैरेंट दस्तावेज़ को लिखता है ताकि अंतिम अद्यतन lastUpdated और अन्य मेटाडेटा अपडेट किया जा सके।

ध्यान दें कि इन संदेशों को पढ़ने की लागत को अन्य यात्राओं में शामिल किया गया है, इसलिए नीचे दिए गए योग केवल इस लिखने की लागत पर विचार करें।

शामिल लाभ: आपके ऐप के लिए निःशुल्क सेवाएं

जबकि क्लाउड फायरस्टोर संचालन, भंडारण, और नेटवर्क बैंडविड्थ सभी को बिल योग्य उपयोग माना जाता है, आपको बिना किसी अतिरिक्त लागत के कई अन्य लाभ भी मिलते हैं। क्लाउड फायरस्टोर की तुलना अन्य डेटाबेस विकल्पों से करते समय निम्नलिखित सेवाओं पर विचार करें जिनकी कोई कीमत नहीं है:

  • सीधे क्लाइंट एक्सेस: क्लाउड फायरस्टोर को हमारे मूल एसडीके का उपयोग करके सीधे आपके क्लाइंट कोड से एक्सेस किया जाता है। इसका मतलब है कि आपको अपने मोबाइल क्लाइंट को डेटाबेस से जोड़ने के लिए एपीआई सर्वर बनाने और चलाने की आवश्यकता नहीं है।
  • लोड संतुलन: चूंकि क्लाउड फायरस्टोर स्वचालित रूप से आपके डेटाबेस में ट्रैफ़िक का समर्थन करने के लिए स्केल करता है, इसलिए आपको लोड बैलेंसर चलाने की आवश्यकता नहीं है।
  • सर्वर अपटाइम: क्लाउड फायरस्टोर डेटाबेस Google क्लाउड सर्वर पर काम करते हैं, जो 99% से अधिक मासिक अपटाइम प्रदान करते हैं।
  • प्रमाणीकरण: असीमित उपयोगकर्ताओं को फायरबेस प्रमाणीकरण के साथ आसानी से और सुरक्षित रूप से प्रमाणित करें। फायरबेस प्रमाणीकरण सीधे क्लाउड फायरस्टोर के साथ एकीकृत होता है, इसलिए आपको अपनी स्वयं की प्रमाणीकरण सेवा चलाने की आवश्यकता नहीं है।
  • पुश सूचनाएं: क्लाउड मैसेजिंग के साथ संदेश और सूचनाएं भेजें।
  • अन्य फायरबेस उत्पाद: ए/बी टेस्टिंग, एनालिटिक्स, क्रैशलाईटिक्स, परफॉर्मेंस मॉनिटरिंग और रिमोट कॉन्फिग सहित अन्य फायरबेस उत्पादों को बिना किसी कीमत के एकीकृत करें। अन्य Firebase उत्पादों और Firebase मूल्य-निर्धारण के बारे में अधिक जानें।