1. مقدمة
BigQuery هو قاعدة بيانات إحصاءات مُدارة بالكامل ومنخفضة التكلفة من Google. باستخدام BigQuery، يمكنك طلب البحث عن تيرابايت من البيانات بدون الحاجة إلى مسؤول قاعدة بيانات أو أي بنية أساسية لإدارتها. تستخدم BigQuery لغة SQL المألوفة ونموذج محاسبة يعتمد على الدفع مقابل الاستخدام فقط. يتيح لك BigQuery التركيز على تحليل البيانات للعثور على إحصاءات مفيدة.
في هذا الدرس التطبيقي حول الترميز، ستتعرّف على كيفية طلب البحث في مجموعة بيانات GitHub العامة، وهي إحدى مجموعات البيانات العامة المتاحة في BigQuery.
ما ستتعلمه
- كيفية استخدام BigQuery
- كيفية كتابة طلب بحث للحصول على إحصاءات حول مجموعة بيانات كبيرة
المتطلبات
2. طريقة الإعداد
تفعيل 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.
3- معاينة بيانات GitHub
افتح مجموعة بيانات GitHub في واجهة مستخدم الويب في BigQuery.
https://console.cloud.google.com/bigquery?p=bigquery-public-data&d=github_repos&t=commits&page=table
يمكنك الحصول على معاينة سريعة لشكل البيانات.

4. طلب بيانات GitHub
افتح محرِّر الطلبات.

أدخِل طلب البحث التالي للعثور على رسائل عمليات الإيداع الأكثر شيوعًا في مجموعة البيانات العامة على 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 سوى وحدات البايت من الأعمدة المستخدَمة في طلب البحث، لذا يمكن أن يكون إجمالي كمية البيانات المعالَجة أقل بكثير من حجم الجدول. باستخدام التجميع والتقسيم، يمكن تقليل كمية البيانات التي تتم معالجتها بشكل أكبر.
5- مزيد من البيانات العامة
الآن، جرِّب الاستعلام عن مجموعة بيانات أخرى، مثل إحدى مجموعات البيانات العامة الأخرى.
على سبيل المثال، يعثر طلب البحث التالي على المشاريع الشائعة التي تم إيقافها نهائيًا أو التي لم يعُد يتم صيانتها في مجموعة البيانات العامة 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. على سبيل المثال، يمكن استخدام مجموعة بيانات GH Archive من Github لتحليل الأحداث العامة على GitHub، مثل طلبات السحب ونجوم المستودع والمشاكل التي تم فتحها. يمكن استخدام مجموعة بيانات PyPI التابعة لمؤسسة Python Software Foundation لتحليل طلبات تنزيل حِزم Python.
6. تهانينا!
استخدمت BigQuery وSQL للاستعلام عن مجموعة البيانات العامة في GitHub. يمكنك الآن طلب البحث عن مجموعات بيانات كبيرة جدًا.
المواضيع التي تناولتها
- استخدام بنية SQL لطلب البحث عن سجلات عمليات الإيداع في GitHub
- كتابة طلب بحث للحصول على إحصاءات حول مجموعة بيانات كبيرة
مزيد من المعلومات
- يمكنك تعلُّم SQL من خلال دورة مقدمة إلى SQL على Kaggle.
- استكشِف مستندات BigQuery.
- يمكنك الاطّلاع على منشور المدونة هذا لمعرفة كيفية استخدام الآخرين لمجموعة بيانات GitHub.
- استكشاف بيانات الطقس وبيانات الجريمة والمزيد في هذا اليوم من العام مع BigQuery
- كيفية تحميل البيانات إلى BigQuery باستخدام أداة سطر الأوامر في BigQuery
- يمكنك الاطّلاع على منتدى BigQuery على Reddit لمعرفة كيف يستخدم الآخرون BigQuery اليوم.