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

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

इस पेज पर, 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 की कीमत लागू होती है. इसमें बिना किसी शुल्क के सीमित इस्तेमाल शामिल है.



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