आरटीडीबी ऐसा करने में सक्षम है क्योंकि प्रत्येक डेटाबेस एक ही क्षेत्र में स्थानीय है। एक धारावाहिक दृश्य प्रदान करने के लिए, जब आप remove()
पर कॉल करते हैं, तो डेटाबेस निष्कासन पूरा होने तक अन्य सभी कार्यों को रोक देता है।
यह व्यवहार कई स्पष्ट आउटेज का कारण रहा है: यदि remove()
कॉल को डेटा के विशाल swaths को हटाना है, तो अन्य सभी गतिविधि प्रभावी होने तक प्रभावी रूप से बंद हो जाती है। नतीजतन आरटीडीबी उपयोगकर्ताओं के लिए भी जो बड़ी मात्रा में डेटा हटाना चाहते हैं, हमने समूहों में दस्तावेजों को खोजने और हटाने की सिफारिश की है।
दूसरी ओर फायरस्टोर अधिक पारंपरिक Google-स्टाइल स्टोरेज इंफ्रास्ट्रक्चर पर आधारित है जहां विभिन्न श्रेणियों को dynamically to different servers असाइन किया जाता है (स्टोरेज वास्तव में बिगटेबल द्वारा समर्थित नहीं है, लेकिन समान सिद्धांत लागू होते हैं)। इसका मतलब है कि डेटा हटाना अब एक क्षेत्रीय कार्रवाई नहीं है और यह प्रभावी ढंग से हटाने को लेनदेन के रूप में प्रकट करने के लिए बहुत महंगा हो जाता है। फायरस्टोर लेनदेन वर्तमान में 100 प्रतिभागियों तक सीमित हैं और इसका मतलब है कि कोई भी गैर-तुच्छ लेनदेन थोक हटाना असंभव है।
हम जांच कर रहे हैं कि एक एपीआई को कितनी अच्छी तरह से सतह पर लेना है जो लेनदेन संबंधी व्यवहार का वादा किए बिना थोक हटाना करता है। यह कल्पना करना सरल है कि मोबाइल क्लाइंट से इसे कैसे किया जाए, लेकिन जैसा कि आपने देखा है कि यह कुशल नहीं होगा अगर हमने जो कुछ किया है वह आपके लिए लूप और बैच को एम्बेड किया गया है। हम आरईएसटी क्लाइंट को दूसरे श्रेणी के नागरिक भी नहीं बनाना चाहते हैं।
फायरस्टोर एक नया उत्पाद है और अभी भी बहुत सी चीजें हैं। दुर्भाग्यवश इसने कटौती नहीं की है। हालांकि यह कुछ ऐसा है जो हम अंततः संबोधित करने की उम्मीद करते हैं, जब मैं ऐसा समय रेखा प्रदान नहीं कर सकता।
इस बीच कंसोल और firebase command-line दोनों ऐसा करने का एक गैर-लेनदेन साधन प्रदान करते हैं, उदा। परीक्षण स्वचालन के लिए।
फायरस्टोर की कोशिश करने के लिए आपकी समझ और धन्यवाद के लिए धन्यवाद!
स्रोत
2017-10-11 20:40:38
मुझे लगता है कि फायरस्टोर दस्तावेज़ (प्रश्न में @toofoo द्वारा लिंक) में उदाहरण गलत है। 'resolve() 'को कॉल किया जाना चाहिए जब' (numDeleted == 0) '। – Leo
बीटीडब्ल्यू, वर्तमान में बैच के रूप में अपलोड किया जाना चाहिए? या लेनदेन का इस्तेमाल किया जा सकता है? – Leo
और एक और सवाल। आपने लेनदेन संबंधी व्यवहार का वादा किए बिना "थोक विलोपन" लिखा था। मुझे लेनदेन संबंधी व्यवहार की ज़रूरत है। क्या मैं इसके लिए आशा कर सकता हूं? – Leo