
KDB+/Q: ٹِک ڈیٹا بیسز کی زبان
وال اسٹریٹ اربوں مارکیٹ ڈیٹا پوائنٹس کیسے ذخیرہ اور کیوری کرتا ہے
ایک منٹ میں KDB+ اور Q
KDB+ ایک کالم-مبنی time-series ڈیٹا بیس ہے؛ Q اس کی vector زبان ہے۔ sell-side اور buy-side فرموں نے اسے tick اسٹوریج، joins، اور rolling analytics کے لیے اپنایا جہاں کالموں کو اسکین کرنا row-by-row لوپس سے بہتر ہے۔
کارکردگی columnar لے آؤٹ، memory mapping کے جارحانہ استعمال، اور metal کے قریب implement کیے گئے vector primitives سے آتی ہے۔ یہ ایک عمومی OLTP متبادل نہیں ہے؛ یہ append-heavy time series کے لیے tuned ہے۔
Q کی بنیادی باتیں
Q مختصر اور right-to-left ہے۔ Vectors native ہیں؛ لوپس موجود ہیں مگر hot paths انہیں ٹالتے ہیں۔ ٹیبلز کالموں کی dictionaries ہیں، جو اس بات سے میل کھاتا ہے کہ tick ڈیٹا کیسے ذخیرہ کیا جاتا ہے۔
prices: 100.5 101.2 99.8
avg prices
deltas prices
قابل مطالعہ Q چھوٹے فنکشنز اور کمنٹس سے آتا ہے—صرف کثافت شریک کوڈ بیسز میں ایک خوبی نہیں ہے۔
Tickerplant، RDB، HDB
ایک عام پیٹرن: ایک tickerplant فیڈز ingest کرتا ہے اور subscribers کو fan out کرتا ہے؛ ایک real-time ڈیٹا بیس موجودہ سیشن رکھتا ہے؛ ایک historical ڈیٹا بیس ڈسک پر partitioned تاریخ رکھتا ہے۔ End-of-day عمل RT کو HDB partitions میں roll کرتے ہیں۔
select last price by sym from trades where time > .z.t - 00:05
کرپٹو کبھی بند نہیں ہوتا، لہٰذا “سیشن” کی حدیں آپریشنل انتخاب ہیں، ایکسچینج کی گھنٹیاں نہیں۔
یہ کہاں نظر آتا ہے
فرمیں KDB+ کو نگرانی ڈیش بورڈز، quote analytics، اور ریسرچ ڈیٹا سیٹس کے لیے استعمال کرتی ہیں۔ نام اور deployments مختلف ہوتے ہیں؛ پیٹرن ticks اور آرڈرز پر تیز slice-and-dice ہے۔
کرپٹو وینیوز مستقل ڈیٹا پیدا کرتے ہیں—retention، replay، اور compliance export پہلے سے پلان کریں۔
لائسنس لاگت اور متبادل
کمرشل لائسنسنگ اور مخصوص بھرتی حقیقی لاگتیں ہیں۔ کھلے متبادل (ClickHouse، Timescale، QuestDB، Parquet پر DuckDB) قیمت کے عوض ecosystem fit کا تبادلہ کرتے ہیں۔ اپنے query mix پر benchmark کریں، vendor slides پر نہیں۔
کرپٹو tick اسٹیکس
بہت سی ٹیمیں Kafka یا Redpanda کو columnar اسٹوریج اور SQL انجنز کے ساتھ جوڑتی ہیں۔ KDB+ کا اٹل اصول اب بھی لاگو ہوتا ہے: وقت کے ساتھ partition کریں، schemas سخت رکھیں، اور ایکسچینج ٹائم اسٹیمپ سے query نتیجے تک end-to-end lag ماپیں۔
GaiaEx API صارفین کو، اگر ظاہر ہو تو، سرور ٹائم اسٹیمپس اور sequence شناخت کنندگان لاگ کرنا چاہیے—correlation اندازہ لگانے سے بہتر ہے۔


