GaiaEx AcademyGaiaEx Academy
KDB+/Q: لغة قواعد بيانات البيانات اللحظية
مطوّرالبرمجة11 min read

KDB+/Q: لغة قواعد بيانات البيانات اللحظية

كيف تُخزّن وول ستريت وتستعلم مليارات نقاط بيانات السوق

مشاركة المنشورات

KDB+ و Q في دقيقة واحدة

KDB+ هي قاعدة بيانات سلاسل زمنية عمودية التوجّه (column-oriented)؛ وQ هي لغتها المتجهية (vector language). تبنّتها شركات جهة البيع وجهة الشراء لتخزين البيانات اللحظية (ticks)، عمليات الربط (joins)، والتحليلات المتدحرجة حيث يتفوّق مسح الأعمدة على الحلقات التكرارية صفًا-صفًا.

الأداء يأتي من التخطيط العمودي، الاستخدام المكثّف لتخطيط الذاكرة (memory mapping)، والعناصر المتجهية الأساسية المُنفَّذة قريبًا من العتاد. ليست بديلًا عامًا لمعالجة المعاملات (OLTP)؛ بل مُهيَّأة للسلاسل الزمنية كثيفة الإضافة.

التخطيط العمودي (تصوّر تصميمي) sym A A B time t₁ t₂ t₃ price p₁ p₂ p₃ العمليات المتجهية تلمس مصفوفات متلاصقة ← مسح صديق للذاكرة المخبَّأة المخطط والأنواع لا تزال مهمة: قوائم رموز سيّئة تُكلِّف حيّزًا
الجداول هي متجهات أعمدة؛ التحليلات تُصفّي وتُجمِّع بحسب الأعمدة والزمن.

أساسيات Q

لغة Q مقتضبة وتُقرأ من اليمين إلى اليسار. المتجهات أصيلة فيها؛ الحلقات موجودة لكن المسارات الساخنة تتجنّبها. الجداول قواميس من الأعمدة، ما يطابق كيفية تخزين البيانات اللحظية.

prices: 100.5 101.2 99.8
avg prices
deltas prices

وضوح كود Q يأتي من الدوال الصغيرة والتعليقات — الكثافة وحدها ليست فضيلة في قواعد الكود المشتركة.

Tickerplant وRDB وHDB

نمط شائع: tickerplant يستقبل التغذيات ويوزّعها على المشتركين؛ قاعدة بيانات لحظية (RDB) تحمل الجلسة الحالية؛ قاعدة بيانات تاريخية (HDB) تُخزّن تاريخًا مُقسَّمًا على القرص. عمليات نهاية اليوم تُدرِج بيانات RDB في أقسام HDB.

select last price by sym from trades where time > .z.t - 00:05

العملات الرقمية لا تُغلَق أبدًا، فحدود «الجلسة» هي خيارات تشغيلية، لا أجراس بورصة.

خط أنابيب البيانات اللحظية (الثلاثية الكلاسيكية) معالجات التغذية توحيد الرموز الطابع الزمني عند الحدود Tickerplant سجل + نشر/اشتراك لا تخزين طويل الأمد RDB + HDB داخل اليوم مقابل التاريخي تقسيم بحسب التاريخ استعادة الفجوات تستخدم السجلات؛ تحقّق من فجوات التغذية والتصحيحات المتأخرة تغذيات العملات الرقمية قد تنفجر: حدّد حجم المخازن المؤقتة والضغط الخلفي
الفصل بين اللحظي والتاريخي يُبقي المسارات الساخنة صغيرة والاستعلامات قابلة للتنبؤ.

أين تظهر

تستخدم الشركات KDB+ للوحات مراقبة السلوك (surveillance)، تحليلات التسعير، ومجموعات بيانات البحث. الأسماء والتطبيقات تختلف؛ النمط هو تقطيع وتحليل سريع للبيانات اللحظية والأوامر.

منصات العملات الرقمية تُولّد بيانات مستمرة — خطّط للاحتفاظ، إعادة التشغيل، وتصدير الامتثال مسبقًا.

تكلفة الترخيص والبدائل

الترخيص التجاري والتوظيف المتخصص تكاليف حقيقية. البدائل المفتوحة (ClickHouse، Timescale، QuestDB، DuckDB فوق Parquet) تُقايض ملاءمة النظام البيئي بالسعر. قِس الأداء على مزيج استعلاماتك الخاص، لا شرائح البائع الدعائية.

منظومات البيانات اللحظية للعملات الرقمية

تجمع فرق كثيرة بين Kafka أو Redpanda وتخزين عمودي ومحركات SQL. الثابت من KDB+ لا يزال ينطبق: قسّم بحسب الزمن، احتفظ بمخططات صارمة، وقِس التأخّر من طرف إلى طرف من الطابع الزمني للبورصة إلى نتيجة الاستعلام.

على مستهلكي واجهة GaiaEx تسجيل الطوابع الزمنية للخادم ومُعرِّفات التسلسل إن كانت مكشوفة — الترابط أفضل من التخمين.