SensorFlow Docs

البدء السريع مع SensorFlow

انشر الخدمة مفتوحة المصدر، وثبّت الترخيص، واربط حزم Sensors Data الرسمية، ثم تحقّق من تدفق البيانات عبر ClickHouse وSuperset.

البدء السريع مع SensorFlow

انشر الخدمة مفتوحة المصدر، وثبّت الترخيص، واربط حزم Sensors Data الرسمية، ثم تحقّق من تدفق البيانات عبر ClickHouse وSuperset.

تدفق البيانات الكامل

يُبقي SensorFlow الجمع والاستقبال والتخزين والتحليل على خوادمك.

  • تجمع حزم Sensors Data الرسمية الأحداث من Android وiOS والويب والبرامج المصغّرة والخوادم.
  • يتحقق SensorFlow من الأحداث الواردة ويعالجها.
  • يخزّن ClickHouse تفاصيل الأحداث ويوفر Apache Superset SQL والرسوم ولوحات المعلومات.
Official Sensors Data SDKs -> SensorFlow -> ClickHouse -> Apache Superset

متطلبات النظام

ابدأ بخادم اختبار واحد ثم وسّع الموارد حسب حجم الأحداث وحِمل الاستعلامات.

  • الحد الأدنى: 4 أنوية CPU و8 GB ذاكرة و100 GB SSD.
  • لبداية الإنتاج: 8 أنوية و16 GB ذاكرة و500 GB SSD.
  • ثبّت Docker وDocker Compose وGo 1.19 أو أحدث.

1. الحصول على الخدمة مفتوحة المصدر

استنسخ مستودع SensorFlow وانتقل إلى مجلد المشروع.

git clone https://github.com/data-analyze-bi/sensors.git
cd sensors

2. تشغيل البنية التحتية

يشغّل Docker Compose خدمات MySQL وRedis وClickHouse وApache Superset.

  • يستخدم الاستقبال المنفذ 8081، وClickHouse المنافذ 8123/9000، وSuperset المنفذ 8088.
  • غيّر كلمة مرور Superset الافتراضية واضبط SUPERSET_SECRET_KEY فريداً في الإنتاج.
cd deploy/docker
docker compose up -d --build
docker compose ps
cd ../..

3. تنزيل الترخيص وتثبيته

أنشئ الترخيص من لوحة التحكم ونزّل الترخيص والإعدادات وضعهما في المجلد المحدد.

  • احفظ الترخيص في binaries/sensors-payload-decoder.
  • احفظ الإعدادات في binaries/.
  • لا ترفع ملفات الترخيص إلى Git.
mkdir -p binaries
mv ~/Downloads/sensors-payload-decoder-* binaries/sensors-payload-decoder
mv ~/Downloads/*.verify.json binaries/
chmod +x binaries/sensors-payload-decoder

4. إعداد وتشغيل الاستقبال

تحقق من مسار الترخيص في conf/app.conf وثبّت الاعتمادات ثم شغّل الخدمة.

# conf/app.conf
decoder_binary_path = ./binaries/sensors-payload-decoder

go mod download
go run main.go

5. ربط حزم Sensors Data الرسمية

استخدم الحزمة الرسمية لكل منصة ووجّه عنوان الرفع إلى SensorFlow.

  • ⚠️ تنبيه توافق الطرف الثالث: توافق البروتوكول لا يعني اعتماد Sensors Data؛ اختبر الإصدارات والإضافات قبل الإنتاج.
  • استخدم Android وiOS والويب والبرامج المصغّرة أو React Native للعملاء، وJava أو Go أو Python أو Node.js أو PHP للخوادم.
  • تحقق من الأحداث والمعرّفات والخصائص وتخزين ClickHouse ومؤشرات Superset قبل التحويل.
https://your-domain.example/sensors/send/?token=YOUR_TOKEN

6. التحقق من ClickHouse

أرسل حدثاً تجريبياً وتأكد من تخزينه في ClickHouse.

SELECT event, count() AS event_count
FROM sensors.event
GROUP BY event
ORDER BY event_count DESC
LIMIT 20;

7. التحليل عبر Superset

افتح Superset واستخدم اتصال ClickHouse في SQL Lab ومجموعات البيانات والرسوم ولوحات المعلومات.

  • أنشئ مؤشرات المستخدمين النشطين والتسجيلات وتسجيل الدخول واتجاهات الأحداث.
  • اجمع مسارات التحويل والاحتفاظ والمسارات والمجموعات.
  • تحكم في الوصول حسب الفريق أو المشروع أو مجموعة البيانات.

التحديث والتشغيل

أوقف الاستقبال قبل استبدال الترخيص، وأعد صلاحية التنفيذ ثم أعد تشغيل الخدمة.

  • انسخ MySQL وClickHouse وبيانات Superset الوصفية احتياطياً.
  • راقب فشل الاستقبال ومساحة القرص وزمن الكتابة والاستعلام.
  • جدّد قبل الانتهاء؛ تتراكم الفترات المشتراة بعد تاريخ الانتهاء الحالي.