BigQuery का इस्तेमाल करके GitHub क्वेरी डेटा

BigQuery, Google' का पूरी तरह से प्रबंधित, NoOps, कम लागत वाला डेटाबेस है. BigQuery की मदद से, आप डेटाबेस एडमिन या मैनेज किए जाने वाले किसी इंफ़्रास्ट्रक्चर के बिना, टेराबाइट डेटा के लिए क्वेरी कर सकते हैं. BigQuery, जाने-माने SQL का इस्तेमाल करता है. साथ ही, इसके इस्तेमाल के लिए सिर्फ़ पैसे चुकाने वाले मॉडल का ही इस्तेमाल करता है. BigQuery की मदद से आप काम की जानकारी पाने के लिए, डेटा का विश्लेषण कर सकते हैं.

इस लैब में, हम देखेंगे कि GitHub की सार्वजनिक डेटासेट की क्वेरी कैसे करते हैं. यह BigQuery, BigQuery पर उपलब्ध सार्वजनिक डेटासेट में से एक है.

आप क्या #39;जानेंगे

  • BigQuery का इस्तेमाल करना
  • बड़े डेटासेट के बारे में अहम जानकारी पाने के लिए क्वेरी लिखना

आपको क्या चाहिए

  • Google Cloud Platform प्रोजेक्ट
  • ब्राउज़र, जैसे कि Chrome या Firefox

BigQuery चालू करना

अगर आपके पास पहले से कोई Google खाता (Gmail या Google Apps) नहीं है, तो आपको एक खाता बनाना होगा.

  • Google Cloud Platform कंसोल (console.cloud.google.com) में साइन इन करें और BigQuery पर जाएं. आप अपने ब्राउज़र में इस यूआरएल को डालकर, सीधे BigQuery वेब यूज़र इंटरफ़ेस (यूआई) को भी खोल सकते हैं.
https://console.cloud.google.com/bigquery
  • सेवा की शर्तें स्वीकार करें.
  • BigQuery का इस्तेमाल करने से पहले, आपको एक प्रोजेक्ट बनाना होगा. नया प्रोजेक्ट बनाने के लिए निर्देशों का पालन करें.

    प्रोजेक्ट का नाम चुनें और प्रोजेक्ट आईडी पर ध्यान दें.


    प्रोजेक्ट आईडी, Google Cloud के सभी प्रोजेक्ट का एक यूनीक नाम होता है. इसे बाद में इस कोडलैब (कोड बनाना सीखना) में PROJECT_ID के तौर पर बताया जाएगा.

यह कोडलैब BigQuery सैंडबॉक्स सीमाओं वाले BigQuery रिसॉर्स का इस्तेमाल करता है. बिलिंग खाते की ज़रूरत नहीं है. अगर आप बाद में सैंडबॉक्स की सीमाएं हटाना चाहते हैं, तो आप Google Cloud Platform को मुफ़्त में आज़माने की सुविधा के लिए साइन अप करके, बिलिंग खाता जोड़ सकते हैं.

BigQuery वेब यूज़र इंटरफ़ेस (यूआई) में GitHub डेटासेट खोलें.

https://console.cloud.google.com/bigquery?p=bigquery-public-data&d=github_repos&t=commits&page=table

डेटा कैसा दिखता है, इसकी एक झलक देखें.

क्वेरी एडिटर खोलें,

GitHub सार्वजनिक डेटासेट में सबसे आम वादे करने वाले मैसेज ढूंढने के लिए यह क्वेरी डालें,

SELECT subject AS subject,
  COUNT(*) AS num_duplicates
FROM `bigquery-public-data.github_repos.sample_commits`
GROUP BY subject
ORDER BY num_duplicates DESC
LIMIT 100

GitHub डेटासेट बड़ा है, इसलिए छोटे साइज़ के सैंपल का इस्तेमाल करके आपको कीमत कम करने में मदद मिलती है. क्वेरी लागत का अनुमान लगाने के लिए एडिटर के नीचे प्रोसेस किए गए बाइट का इस्तेमाल करें.

क्वेरी चलाएं बटन पर क्लिक करें.

कुछ ही सेकंड में, नतीजा नीचे की ओर सूची में दिया जाएगा और यह भी आपको बताएगा कि कितना डेटा प्रोसेस किया गया है और उसमें कितना समय लगा:

हालांकि, sample_commits टेबल 2.49 जीबी है, लेकिन क्वेरी सिर्फ़ 35.8 एमबी में प्रोसेस की गई है. BigQuery सिर्फ़ उन कॉलम के बाइट को प्रोसेस करता है जिनका इस्तेमाल क्वेरी में किया जाता है. इसलिए, प्रोसेस किया गया डेटा, टेबल के साइज़ से काफ़ी कम हो सकता है. क्लर्किंग और विभाजन के साथ, प्रोसेस किए गए डेटा की मात्रा और भी कम की जा सकती है.

अब किसी दूसरे डेटासेट, जैसे कि किसी दूसरे सार्वजनिक डेटासेट के बारे में क्वेरी करने की कोशिश करें.

उदाहरण के लिए, इस क्वेरी में Librries.io public डेटासेट में, रोके गए या मैनेज नहीं किए गए ऐसे प्रोजेक्ट ढूंढें जा रहे हैं जो अब भी दूसरे प्रोजेक्ट में डिपेंडेंसी के तौर पर इस्तेमाल किए जा रहे हैं.

SELECT
  name,
  dependent_projects_count,
  language,
  status
FROM
  `bigquery-public-data.libraries_io.projects_with_repository_fields`
WHERE status IN ('Deprecated', 'Unmaintained')
ORDER BY dependent_projects_count DESC
LIMIT 100

अन्य संगठनों ने भी अपना डेटा BigQuery पर सार्वजनिक रूप से उपलब्ध कराया है. उदाहरण के लिए, GitHub Archived डेटासेट का इस्तेमाल GitHub पर सार्वजनिक इवेंट का विश्लेषण करने के लिए किया जा सकता है. जैसे, पुल के अनुरोधों की जानकारी, डेटा स्टोर करने की सुविधा के स्टार, और खोली गई समस्याएं. Python सॉफ़्टवेयर फ़ाउंडेशन और #39;s PyPI डेटासेट का इस्तेमाल Python पैकेज के डाउनलोड अनुरोधों का विश्लेषण करने के लिए किया जा सकता है.

आपने' GitHub सार्वजनिक डेटासेट की क्वेरी करने के लिए BigQuery और SQL का इस्तेमाल किया. आप पेटाबाइट-स्केल डेटासेट को क्वेरी कर सकते हैं!

हमने क्या-क्या शामिल किया है

  • GitHub सहमति रिकॉर्ड की क्वेरी करने के लिए SQL सिंटैक्स का इस्तेमाल करना
  • बड़े डेटासेट के बारे में अहम जानकारी पाने के लिए क्वेरी लिखना

ज़्यादा जानें