رشتہ دار گراف DBMS EdgeDB کی پہلی مستحکم ریلیز

EdgeDB DBMS کی پہلی مستحکم ریلیز دستیاب ہے، جو کہ Relational گراف ڈیٹا ماڈل اور EdgeQL استفسار کی زبان کے نفاذ کے ساتھ PostgreSQL میں ایک اضافہ ہے، جو پیچیدہ درجہ بندی کے ڈیٹا کے ساتھ کام کرنے کے لیے موزوں ہے۔ کوڈ Python اور Rust میں لکھا گیا ہے اور Apache 2.0 لائسنس کے تحت تقسیم کیا گیا ہے۔ کلائنٹ کی لائبریریاں Python، Go، Rust اور TypeScript/Javascript کے لیے تیار ہیں۔ DBMS مینجمنٹ اور انٹرایکٹو استفسار پر عمل درآمد (REPL) کے لیے کمانڈ لائن ٹولز فراہم کرتا ہے۔

ٹیبل پر مبنی ڈیٹا ماڈل کے بجائے، EdgeDB آبجیکٹ کی اقسام پر مبنی ایک اعلاناتی نظام استعمال کرتا ہے۔ غیر ملکی کلیدوں کے بجائے، حوالہ کے ذریعے لنک کرنے کا استعمال اقسام کے درمیان تعلق کی وضاحت کے لیے کیا جاتا ہے (ایک شے کو دوسری شے کی خاصیت کے طور پر استعمال کیا جا سکتا ہے)۔ قسم شخص { مطلوبہ پراپرٹی کا نام -> str؛ } قسم مووی { مطلوبہ پراپرٹی ٹائٹل -> str; ملٹی لنک اداکار -> شخص؛ }

اشاریہ جات کو استفسار کی کارروائی کو تیز کرنے کے لیے استعمال کیا جا سکتا ہے۔ خصوصیات جیسے مضبوط پراپرٹی ٹائپنگ، پراپرٹی ویلیو کی پابندیاں، کمپیوٹیڈ پراپرٹیز، اور اسٹور شدہ طریقہ کار بھی معاون ہیں۔ EdgeDB آبجیکٹ اسٹوریج اسکیم کی خصوصیات، جو کسی حد تک ORM کی یاد دلاتی ہے، میں اسکیموں کو مکس کرنے کی صلاحیت، مختلف اشیاء سے پراپرٹیز کو جوڑنے، اور مربوط JSON سپورٹ شامل ہیں۔

سکیما مائیگریشن کو اسٹور کرنے کے لیے بلٹ ان ٹولز فراہم کیے گئے ہیں - علیحدہ esdl فائل میں بیان کردہ اسکیما کو تبدیل کرنے کے بعد، صرف "edgedb migration create" کمانڈ چلائیں اور DBMS اسکیما میں فرق کا تجزیہ کرے گا اور انٹرایکٹو طریقے سے ایک اسکرپٹ تیار کرے گا۔ نیا سکیما. اسکیما تبدیلیوں کی تاریخ خود بخود ٹریک کی جاتی ہے۔

سوالات پیدا کرنے کے لیے، دونوں گراف کیو ایل استفسار کی زبان اور ملکیتی EdgeDB زبان، جو کہ درجہ بندی کے ڈیٹا کے لیے SQL کی موافقت ہے، معاون ہیں۔ فہرستوں کے بجائے، استفسار کے نتائج کو ایک منظم طریقے سے فارمیٹ کیا جاتا ہے، اور ذیلی سوالات اور JOINs کے بجائے، آپ ایک EdgeQL استفسار کو دوسرے استفسار میں اظہار کے طور پر متعین کر سکتے ہیں۔ لین دین اور سائیکل سپورٹ ہیں۔ مووی منتخب کریں { ٹائٹل، اداکار: { نام } } فلٹر . ٹائٹل = "دی میٹرکس" داخل کریں مووی { ٹائٹل := "دی میٹرکس ریسریکشنز"، اداکار := ( پرسن فلٹر منتخب کریں .نام { 'کیانو ریوز'، 'کیری- این ماس'، 'لارنس فش برن' } ) } {0، 1، 2، 3} یونین میں نمبر کے لیے ( منتخب کریں { نمبر، نمبر + 0.5 })؛

ماخذ: opennet.ru

نیا تبصرہ شامل کریں