Crashlytics के डेटा को BigQuery में एक्सपोर्ट करना

Firebase Crashlytics डेटा को BigQuery में एक्सपोर्ट किया जा सकता है. BigQuery में डेटा एक्सपोर्ट होने के बाद, एसक्यूएल क्वेरी का इस्तेमाल करके डेटा का विश्लेषण किया जा सकता है, डेटा विज़ुअलाइज़ेशन और कस्टम डैशबोर्ड बनाए जा सकते हैं, और डेटा को अन्य सेवाओं में एक्सपोर्ट किया जा सकता है.

इस पेज पर, Crashlytics और Firebase सेशन के डेटा (ज़रूरी नहीं) को BigQuery में एक्सपोर्ट करने का तरीका बताया गया है.

BigQuery में एक्सपोर्ट करने की सुविधा सेट अप करना

  1. Firebase कंसोल में, सेटिंग > इंटिग्रेशन पेज पर जाएं.

  2. BigQuery कार्ड में, लिंक करें पर क्लिक करें.

  3. BigQuery पर एक्सपोर्ट करने की सुविधा सेट अप करने के लिए, स्क्रीन पर दिए गए निर्देशों का पालन करें. इसमें ये विकल्प शामिल हैं:

BigQuery से अनलिंक करने पर, इससे जुड़े डेटासेट BigQuery में दिखना बंद हो जाते हैं.

इन बातों का ध्यान रखें:

  • BigQuery में पहले से एक्सपोर्ट किया गया डेटा, डेटा के रखरखाव के लिए तय की गई अवधि तक बना रहेगा. साथ ही, स्टोरेज और क्वेरी करने के शुल्क इसके बाद भी लागू हो सकते हैं. आगे होने वाली बिलिंग रोकने के लिए, अपने डेटासेट को मैन्युअल तरीके से मिटाया जा सकता है.

  • अगर आपने अन्य सेवाओं में BigQuery का डेटा सेव किया है, तो हो सकता है कि उस डेटा पर डेटा सेव रखने की अलग-अलग शर्तें लागू हों.

BigQuery को Firebase प्रोजेक्ट-लेवल, प्रॉडक्ट-लेवल या किसी खास प्रॉडक्ट के लिए ऐप्लिकेशन-लेवल पर अनलिंक किया जा सकता है.

BigQuery से अनलिंक करने का तरीका यहां बताया गया है:

  1. Firebase कंसोल में, सेटिंग > इंटिग्रेशन टैब पर जाएं.

  2. BigQuery कार्ड में, मैनेज करें पर क्लिक करें.

  3. किसी खास प्रॉडक्ट को अनलिंक करने या किसी खास प्रॉडक्ट के लिए खास ऐप्लिकेशन अनलिंक करने का विकल्प चुनें.

    अपने Firebase प्रोजेक्ट को पूरी तरह से अनलिंक करने के लिए, पेज पर सबसे नीचे मौजूद बटन पर जाएं.

  4. जब आपसे पूछा जाए, तब पुष्टि करें कि आपको एक्सपोर्ट बंद करना है.



एक्सपोर्ट करने की सुविधा चालू करने पर क्या होता है?

  • Firebase, BigQuery से लिंक किए गए ऐप्लिकेशन से डेटा एक्सपोर्ट करता है.

  • Firebase, डेटा को उस डेटासेट की जगह पर एक्सपोर्ट करता है जिसे आपने सेटअप के दौरान चुना था.

    • यह जगह, Crashlytics डेटासेट और Firebase सेशन डेटासेट, दोनों पर लागू होती है. हालांकि, ऐसा तब होता है, जब सेशन डेटा को एक्सपोर्ट करने की सुविधा चालू हो.

    • यह जगह सिर्फ़ BigQuery में एक्सपोर्ट किए गए डेटा पर लागू होती है. इससे Firebase कंसोल के Crashlytics डैशबोर्ड या Android Studio में इस्तेमाल करने के लिए सेव किए गए डेटा की जगह पर कोई असर नहीं पड़ता.

    • डेटासेट बनाने के बाद, उसकी जगह को बदला नहीं जा सकता. हालांकि, डेटासेट को किसी दूसरी जगह पर कॉपी किया जा सकता है या मैन्युअल तरीके से डेटासेट को किसी दूसरी जगह पर ले जाया जा सकता है, यानी कि इसे फिर से बनाया जा सकता है. ज़्यादा जानने के लिए, एक्सपोर्ट किए गए मौजूदा डेटा की जगह बदलना लेख पढ़ें.

  • Firebase, आपके बैच डेटा को BigQuery के साथ रोज़ सिंक करने की सुविधा सेट अप करता है.

    • BigQuery से लिंक करने के बाद, डेटा के शुरुआती बैच को एक्सपोर्ट होने में 48 घंटे लग सकते हैं.

    • रोज़ाना होने वाला सिंक, दिन में एक बार होता है. भले ही, आपने BigQuery में कोई शेड्यूल किया गया एक्सपोर्ट सेट अप किया हो. ध्यान दें कि सिंक करने के काम का समय और अवधि बदल सकती है. इसलिए, हमारा सुझाव है कि एक्सपोर्ट के किसी खास समय के आधार पर, डाउनस्ट्रीम ऑपरेशन या जॉब शेड्यूल न करें.

  • Firebase, BigQuery में आपके मौजूदा डेटा की कॉपी एक्सपोर्ट करता है.

    • लिंक किए गए हर ऐप्लिकेशन के लिए, इस एक्सपोर्ट में एक बैच टेबल शामिल होती है. इसमें रोज़ाना सिंक होने वाला डेटा होता है.

    • डेटा बैकफ़िल को मैन्युअल तरीके से शेड्यूल किया जा सकता है. ऐसा बैच टेबल के लिए, पिछले 30 दिनों तक या उस तारीख के लिए किया जा सकता है जब आपने BigQuery में एक्सपोर्ट करने की सुविधा चालू की थी. इनमें से जो भी तारीख सबसे हाल की होगी उसे चुना जाएगा.

  • अगर आपने BigQuery में स्ट्रीमिंग एक्सपोर्ट की सुविधा चालू की है, तो Firebase ये काम करता है.

    • लिंक किए गए हर ऐप्लिकेशन की अपनी रीयलटाइम टेबल भी होगी. इसमें लगातार अपडेट होने वाला डेटा शामिल होगा. यह डेटा, ऐप्लिकेशन की बैच टेबल के अलावा होगा. बैच टेबल में, हर दिन बैच एक्सपोर्ट किया जाता है.

    • स्ट्रीमिंग की सुविधा चालू करने के बाद, डेटा स्ट्रीम होने में एक घंटा लग सकता है.



BigQuery में स्ट्रीमिंग एक्सपोर्ट करने के फ़ायदे

डिफ़ॉल्ट रूप से, डेटा को हर दिन बैच एक्सपोर्ट के तौर पर BigQuery में एक्सपोर्ट किया जाता है. इसके अलावा, BigQuery स्ट्रीमिंग की मदद से, Crashlytics डेटा और Firebase सेशन को रीयल टाइम में स्ट्रीम किया जा सकता है. स्ट्रीम किए गए डेटा का इस्तेमाल, लाइव डेटा की ज़रूरत वाले किसी भी काम के लिए किया जा सकता है. जैसे, लाइव डैशबोर्ड में जानकारी दिखाना, लाइव रोलआउट देखना या ऐप्लिकेशन की उन समस्याओं पर नज़र रखना जिनकी वजह से सूचनाएं और कस्टम वर्कफ़्लो ट्रिगर होते हैं.

BigQuery में स्ट्रीमिंग एक्सपोर्ट की सुविधा चालू करने पर, आपको बैच टेबल के साथ-साथ रीयल-टाइम टेबल भी मिलेंगी. दोनों तरह की टेबल में एक ही डेटासेट स्कीमा होगा. हालांकि, बैच टेबल और रीयलटाइम टेबल के बीच कुछ अहम अंतर हैं:

बैच टेबल रीयलटाइम टेबल
  • डेटा को दिन में एक बार एक्सपोर्ट किया जाता है.
  • BigQuery में बैच राइटिंग से पहले, इवेंट को सुरक्षित तरीके से सेव किया जाता है.
  • डेटा को 30 दिन पहले तक बैकफ़िल किया जा सकता है*.
  • डेटा को रीयल टाइम में एक्सपोर्ट किया जाता है.
  • बैकफ़िलिंग की सुविधा उपलब्ध नहीं है.

बैच टेबल, लंबे समय तक विश्लेषण करने और समय के साथ रुझानों की पहचान करने के लिए सबसे सही है. ऐसा इसलिए, क्योंकि हम इवेंट को लिखने से पहले उन्हें सुरक्षित तरीके से सेव करते हैं. साथ ही, उन्हें 30 दिनों तक टेबल में बैकफ़िल किया जा सकता है*. जब हम आपकी रीयलटाइम टेबल में डेटा लिखते हैं, तो हम उसे तुरंत BigQuery में लिखते हैं. इसलिए, यह लाइव डैशबोर्ड और कस्टम अलर्ट के लिए सबसे सही है. इन दोनों टेबल को स्टिचिंग क्वेरी की मदद से जोड़ा जा सकता है, ताकि दोनों के फ़ायदे मिल सकें.

डिफ़ॉल्ट रूप से, रीयलटाइम टेबल के पार्टिशन की समयसीमा 30 दिनों की होती है. इसमें बदलाव करने का तरीका जानने के लिए, BigQuery के दस्तावेज़ में अलग-अलग सेगमेंट में डेटा के मिटने की तारीख सेट करना लेख पढ़ें.

* बैकफ़िल की सुविधा, पिछले 30 दिनों के लिए या उस तारीख के लिए उपलब्ध है जब आपने BigQuery में एक्सपोर्ट करने की सुविधा चालू की थी. इन दोनों में से जो भी तारीख सबसे हाल की होगी उसे चुना जाएगा.



कीमत और BigQuery सैंडबॉक्स

अगर आपका Firebase प्रोजेक्ट, बिना किसी शुल्क वाले स्पार्क प्लान पर है, तो BigQuery सैंडबॉक्स का इस्तेमाल किया जा सकता है. इससे आपको बिना किसी शुल्क के BigQuery को आज़माने की सुविधा मिलती है. BigQuery सैंडबॉक्स और इसकी सुविधाओं के बारे में जानकारी पाने के लिए, BigQuery सैंडबॉक्स का इस्तेमाल करना लेख पढ़ें.

अगर आपका Firebase प्रोजेक्ट, इस्तेमाल के हिसाब से पैसे चुकाने वाले ब्लेज़ प्लान पर है, तो BigQuery की सभी सुविधाओं का इस्तेमाल किया जा सकता है. BigQuery के इस्तेमाल पर, BigQuery की कीमत लागू होती है. इसमें बिना किसी शुल्क के इस्तेमाल करने की सुविधा भी शामिल है.



आगे क्या करना है?