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