Skip to main content
في هذا الدليل العملي، ستتعرّف على كيفية استخدام ClickHouse للتعامل مع البيانات الجغرافية من خلال مجموعة بيانات أبراج الاتصالات الخلوية. ستحمّل مجموعة البيانات إلى ClickHouse Cloud، وتفحص مخططها، وتنفّذ استعلامات تجميعية على عشرات الملايين من الصفوف. بعد ذلك، ستُثري البيانات باستخدام قاموس، وتستعين بالدالة pointInPolygon لحساب عدد الأبراج الواقعة داخل ألمانيا، ثم تستخدم ClickHouse Agents لعرض النتيجة بصريًا على خريطة.

المتطلبات الأساسية

ستحتاج في هذا الدليل العملي إلى ما يلي:
1

حمّل بيانات العينة

مجموعة البيانات المستخدمة في هذا الدليل العملي مصدرها ، أكبر قاعدة بيانات مفتوحة لأبراج الاتصالات الخلوية في العالم. وحتى عام 2021، كانت تضم عشرات الملايين من السجلات عن أبراج الاتصالات الخلوية حول العالم، إلى جانب إحداثياتها الجغرافية وبيانات وصفية مثل رمز الدولة والشبكة.
  1. في ClickHouse Cloud، اختر خدمتك من القائمة المنسدلة في القائمة الجانبية اليسرى
  2. اختر Data sources
  3. انقر على بطاقة Add sample data
  4. اختر مجموعة البيانات Cell Towers (1.1 GB)
  5. استخدم default قاعدةَ بيانات هدفًا، ثم انقر على Import dataset
من المفترض أن يظهر لك إدخال ضمن Data upload history بالحالة success
2

افحص المخطط

  1. اختر SQL console من القائمة الجانبية اليسرى
  2. انقر على علامة التبويب + بجوار أيقونة الصفحة الرئيسية لإنشاء استعلام جديد
  3. اكتب الاستعلام التالي في محرر SQL، ثم انقر على Run:
من المفترض أن يظهر لك جدول النتائج التالي:
يقابل كل إدخال في الجدول برج اتصالات خلوية في موقع فعلي على سطح الأرض، تحدده الإحداثيات lon وlat.
3

نفّذ استعلامات بسيطة

شغّل الاستعلام التالي لعرض عدد أبراج الاتصالات الخلوية حسب نوعها:
بعد ذلك، تحقّق من عدد أبراج الاتصالات الخلوية حسب رمز الدولة للشبكات المتنقلة (MCC):
يتبيّن أن البلدان التي تضم أكبر عدد من أبراج الاتصالات الخلوية تحمل رموز MCC التالية: 310 و262 و250. يمكنك استخدام قاموس لاستبدال القيم الرقمية في العمود mcc بأسماء البلدان:
بعد إنشاء القاموس، يمكنك الآن استخدامه لإرجاع القائمة نفسها مع إظهار اسم الدولة بجانب رمز MCC:
Query
Response
4

دمج البيانات الجغرافية

قد ترغب أيضًا في معرفة عدد أبراج الاتصالات الخلوية الواقعة ضمن منطقة جغرافية محددة. يوفّر ClickHouse لحالة الاستخدام هذه العديد من الدوال الجغرافية المفيدة، مثل الدالة pointInPolygon.لنفترض أنك تريد معرفة عدد أبراج الاتصالات الخلوية الموجودة داخل ألمانيا. أنشئ جدولًا باسم germany يحتوي على عمود واحد من النوع polygon:
أدرج الآن إحداثيات حدود ألمانيا (البر الرئيسي) في الجدول:
يمكنك الآن معرفة عدد أبراج الاتصالات الخلوية الواقعة داخل البر الرئيسي لألمانيا باستخدام الدالة pointInPolygon:
Query
Response
5

اختياري: مثّل البيانات بصريًا باستخدام ClickHouse Agents

بعد ذلك، نودّ عرض هذه البيانات بصريًا. هذا مثال تشغيل اختياري: إن ClickHouse Agents ميزة تجريبية (beta) تعتمد على النماذج، لذا قد تختلف خطتها وتتبّع أدواتها ومخرجاتها من تشغيل إلى آخر. تتيح لك ClickHouse Agents الاستعلام عن بيانات ClickHouse واستكشافها بسهولة عبر المحادثة، دون الحاجة إلى كتابة SQL أو منطق التنسيق بنفسك. يفهم الوكيل ما تقصده، ويخطط للخطوات، ويستدعي الأدوات التي قمت بتهيئتها، ثم يعيد إليك النتائج.انقر على ClickHouse agents أسفل اسم مؤسستك في الجزء السفلي من القائمة اليسرى لفتح ClickHouse Agents. يمكنك مراسلة ClickHouse agent عبر الدردشة. اكتب “Visualize cell towers within Germany on a map using the default.cell_towers and default.germany tables” ثم اضغط إرسال. في إحدى مرات التشغيل، نفّذ الوكيل الخطوات التالية:
  • بحث عن رمز الدولة للهاتف المحمول (Mobile Country Code) الخاص بألمانيا في mcc_country_dict فوجد أن قيمة MCC هي 262.
  • أحصى الأبراج ذات mcc = 262 الواقعة داخل المضلّع في germany باستخدام pointInPolygon، فبلغ عددها 2,588,635 برجًا. وهذا العدد أقل قليلًا من العدد السابق، لأن عامل التصفية الإضافي mcc يستبعد الأبراج الواقعة داخل المضلّع والمسجّلة لدولة أخرى.
  • بدلًا من رسم 2.6 مليون نقطة منفردة، جمّع الأبراج في شبكة بأبعاد 0.1° × 0.1° عبر تقريب lon وlat، ما أنتج 4,821 خلية. ثم تحقّق من أن مجموع أعداد الخلايا يساوي 2,588,635 تمامًا، أي أنه لم يُفقد أي برج ولم يُحتسب أي برج مرتين أثناء التجميع.
  • استرجع المضلّع من germany ورسمه كحدود فوق الشبكة، مستخدمًا مقياس ألوان لوغاريتميًا لتظهر الخلايا الحضرية الكثيفة والخلايا الريفية المتناثرة على حدّ سواء.
افتح الملف المُنشأ لرؤية النتيجة. تمثّل التجمّعات الساطعة المناطق الحضرية الكبرى: برلين وهامبورغ وميونخ وفرانكفورت.

الخطوات التالية

في هذا الدليل العملي، حمّلت مجموعة بيانات أبراج الاتصالات الخلوية OpenCelliD إلى ClickHouse Cloud، وفحصت مخططها، ونفّذت استعلامات تجميعية على عشرات الملايين من الصفوف. كما أنشأت قاموسًا لإثراء العمود الرقمي mcc بأسماء الدول، وخزّنت حدود ألمانيا على هيئة مضلّع، واستخدمت pointInPolygon لحساب عدد الأبراج الواقعة داخله. وأخيرًا، استخدمت ClickHouse Agents لتحويل هذا السؤال إلى خريطة كثافة دون أن تكتب بنفسك شيفرة التجميع أو الرسم. بعد ذلك، يمكنك:
  • طرح أسئلة متابعة على الوكيل. جرّب أن تسأل عن الفرق في الكثافة بين أنواع التقنيات الراديوية مثل LTE وGSM، أو عن المدن التي تضم أكبر عدد من أبراج NR. احفظ الموجّهات التي تستخدمها باستمرار في مكتبة الموجّهات، أو أنشئ وكيلًا متخصصًا باستخدام Agent Builder.
  • المقارنة بين الدول. أدرج مضلّعات لدول أخرى ونفّذ استعلام pointInPolygon نفسه على كلٍّ منها. ويتيح لك القاموس الذي أنشأته إرفاق أسماء الدول بالنتائج.
  • تجميع الأبراج باستخدام H3 أو geohash. اعتمد الوكيل على شبكة تقريب بسيطة، لكن ClickHouse يوفّر أيضًا دوال H3 وgeohash التي تُنتج خلايا هرمية مناسبة للخرائط القابلة للتكبير.
  • استكشاف مجموعات بيانات أخرى. تحتوي مجموعة بيانات سيارات الأجرة في نيويورك هي الأخرى على إحداثيات نقاط الانطلاق والوصول، كما يضم فهرس مجموعات البيانات النموذجية العديد غيرها.
آخر تعديل في ٢٦ سبتمبر ٢٠٢٦