عن المشروع
GreptimeDB هي قاعدة بيانات مفتوحة المصدر للمراقبة تخزن المقاييس والسجلات والتتبعات في محرك عمودي واحد على تخزين الكائنات. تشترك أنواع الإشارات الثلاثة في نموذج جدول واحد — العلامات والطابع الزمني والحقول — لذا عندما تحمل الإشارات معرفات مشتركة مثل الخدمة أو المضيف أو معرف التتبع، يمكن ربطها باستعلامات SQL بدلاً من نقل البيانات بين أنظمة منفصلة.
تشمل مسارات الاستيعاب OpenTelemetry (OTLP) وPrometheus Remote Write وLoki Push وElasticsearch Bulk وبروتوكول خط InfluxDB وgRPC. تشمل خيارات الاستعلام SQL وPromQL واستعلامات التتبعات المتوافقة مع Jaeger، بالإضافة إلى بروتوكولات MySQL وPostgreSQL. تعمل أنظمة تخزين الكائنات مثل S3 وGCS وAzure Blob ونقاط النهاية المتوافقة مع S3 كتخزين أساسي، مع وجود ذاكرات مؤقتة على الذاكرة والقرص المحلي لإبقاء البيانات الحديثة أو المستعلم عنها بشكل متكرر قريبة من الحوسبة. تغطي الإمكانيات المدمجة سياسات الاحتفاظ، والاختزال، والتجميع المستمر (محرك Flow)، وتقسيم الجداول الصريح، وفهارس مقلوبة وفهارس تخطي وفهارس نص كامل.
يأتي النشر في وضعين. الوضع المستقل هو ملف ثنائي واحد للتطوير والنشرات الصغيرة. الوضع الموزع ينقسم إلى مكونات قابلة للتوسع بشكل مستقل: Frontend (مدخل البروتوكول ومحرك الاستعلام الموزع، بدون حالة)، وDatanode (محرك المناطق مع WAL وجدول الذاكرة وSST والذاكرة المؤقتة والضغط والفهارس، مع الحفظ على تخزين الكائنات)، وMetasrv (البيانات الوصفية والتوجيه وإعادة التقسيم والأمان، مدعوم بـ etcd أو RDS)، وFlownode اختياري للحوسبة المستمرة.
يوثق ملف README التوافق لكل بروتوكول: استيعاب Prometheus Remote Write واستعلامات PromQL مدعومة مع بعض الفجوات في PromQL؛ يعمل استيعاب Loki Push، بينما LogQL وبقية واجهة برمجة تطبيقات Loki غير متوافقة؛ استيعاب Elasticsearch `_bulk` موجود في النواة مفتوحة المصدر، مع توفر QueryDSL جزئيًا في الإصدار المؤسسي. يصف المشروع نفسه بأنه مفتوح النواة: نشر المجموعات وتخزين الكائنات ومحرك Flow وجميع بروتوكولات الاستيعاب المدرجة موجودة في بناء Apache-2.0، بينما النسخ المتماثلة للقراءة وعزل عبء العمل وإعادة التقسيم التلقائي وأمان/حوكمة المؤسسة هي ميزات مؤسسية. إعادة التقسيم وترحيل المناطق وإنشاء الفهارس يدوية في البناء مفتوح المصدر.
يتم توفير بداية سريعة عبر Docker، مع كشف منافذ HTTP (4000) وgRPC (4001) وMySQL (4002) وPostgreSQL (4003)، مع لوحة تحكم ويب على منفذ HTTP. يتطلب البناء من المصدر سلسلة أدوات Rust ليلية مثبتة ومترجم Protobuf وأساسيات بناء C/C++؛ تشمل الأوامر الشائعة make وmake fmt وmake clippy وmake test وmake sqlness-test. تشمل الأدوات المصاحبة مشغل Kubernetes ومخططات Helm ولوحة تحكم ومستوعبات gRPC للغات Go وJava وC++ وErlang وRust و.NET وTypeScript ومكوّن إضافي لمصدر بيانات Grafana.
يسرد ملف README أيضًا تقارير المعايير (Agent RCA Bench وJSONBench وTSBS) ودراسة حالة إنتاجية، ويشير إلى أن المشروع متاح بشكل عام مع واجهات برمجة تطبيقات مستقرة وإصدارات منتظمة. النواة مرخصة بموجب Apache-2.0، مع مجموعة صغيرة من الميزات المؤسسية فقط تحت ترخيص منفصل.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.