BigQuery هو قاعدة بيانات إحصاءات مُدارة بالكامل ومنخفضة التكلفة ولا تتطلّب أي عمليات من Google. باستخدام BigQuery، يمكنك طلب البحث عن تيرابايت من البيانات بدون الحاجة إلى مسؤول قاعدة بيانات أو أي بنية أساسية لإدارتها. تستخدم BigQuery لغة SQL المألوفة ونموذج محاسبة يعتمد على الدفع مقابل الاستخدام فقط. يتيح لك BigQuery التركيز على تحليل البيانات للعثور على إحصاءات مفيدة.
في هذا المختبر، سنتعرّف على كيفية طلب البحث في مجموعة بيانات GitHub العامة، وهي إحدى مجموعات البيانات العامة المتاحة على BigQuery.
ما ستتعرّف عليه
- استخدام BigQuery
- كتابة طلب بحث للحصول على إحصاءات حول مجموعة بيانات كبيرة
المتطلبات
تفعيل BigQuery
إذا لم يكن لديك حساب على Google (Gmail أو Google Apps)، عليك إنشاء حساب.
- سجِّل الدخول إلى وحدة تحكّم Google Cloud Platform (console.cloud.google.com) وانتقِل إلى BigQuery. يمكنك أيضًا فتح واجهة مستخدم الويب في BigQuery مباشرةً من خلال إدخال عنوان URL التالي في المتصفّح.
https://console.cloud.google.com/bigquery
- اقبل بنود الخدمة.
- قبل استخدام BigQuery، يجب إنشاء مشروع. اتّبِع التعليمات لإنشاء مشروعك الجديد.
اختَر اسمًا للمشروع ودوِّن معرّف المشروع.
معرّف المشروع هو اسم فريد لجميع مشاريع Google Cloud. سيتم الإشارة إليه لاحقًا في هذا الدرس العملي باسمPROJECT_ID
.
يستخدم هذا الدرس التطبيقي العملي موارد BigQuery ضمن حدود وضع الحماية في BigQuery. ليس من الضروري توفّر حساب فوترة. إذا أردت إزالة حدود وضع الحماية لاحقًا، يمكنك إضافة حساب فوترة من خلال الاشتراك في الفترة التجريبية المجانية من Google Cloud Platform.
افتح مجموعة بيانات GitHub في واجهة مستخدم الويب في BigQuery.
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 سوى وحدات البايت من الأعمدة المستخدَمة في طلب البحث، لذا يمكن أن يكون إجمالي كمية البيانات المعالَجة أقل بكثير من حجم الجدول. باستخدام التجميع والتقسيم، يمكن تقليل كمية البيانات التي تتم معالجتها بشكل أكبر.
الآن، جرِّب الاستعلام عن مجموعة بيانات أخرى، مثل إحدى مجموعات البيانات العامة الأخرى.
على سبيل المثال، يعثر هذا الطلب على المشاريع الشائعة التي تم إيقافها نهائيًا أو التي لم يعُد يتم صيانتها في مجموعة البيانات العامة Libraries.io والتي لا تزال تُستخدم كعنصر تابع في مشاريع أخرى.
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 Archive لتحليل الأحداث العامة على GitHub، مثل طلبات السحب ونجوم المستودع والمشاكل التي تم فتحها. يمكن استخدام مجموعة بيانات PyPI التابعة لمؤسسة Python Software Foundation لتحليل طلبات تنزيل حِزم Python.
لقد استخدمت BigQuery وSQL للاستعلام عن مجموعة بيانات GitHub العامة. يمكنك الآن طلب البحث عن مجموعات بيانات كبيرة جدًا.
المواضيع التي تناولناها
- استخدام بنية SQL للاستعلام عن سجلات عمليات الإيداع في GitHub
- كتابة طلب بحث للحصول على إحصاءات حول مجموعة بيانات كبيرة
مزيد من المعلومات
- تعرَّف على لغة SQL من خلال دورة "مقدمة إلى SQL" على Kaggle.
- استكشاف مستندات BigQuery
- يمكنك الاطّلاع على كيفية استخدام الآخرين لمجموعة بيانات GitHub في مشاركة المدونة هذه.
- استكشاف بيانات الطقس وبيانات الجريمة والمزيد في TIL مع BigQuery
- كيفية تحميل البيانات إلى BigQuery باستخدام أداة سطر الأوامر في BigQuery
- يمكنك الاطّلاع على منتدى BigQuery على Reddit لمعرفة كيف يستخدم الآخرون BigQuery اليوم.