اے آئی ایجنٹس کی وجہ سے میں SQLite کو کیوں ترجیح دیتا ہوں
میں پہلے بغیر سوچے سمجھے Postgres کا استعمال کرتا تھا۔ اب، میں SQLite کا انتخاب کرتا ہوں۔
اس کا مطلب یہ نہیں کہ Postgres ختم ہو چکا ہے۔ میں اب بھی اسے اکثر استعمال کرتا ہوں۔ بلکہ، AI ایجنٹس کی وجہ سے میری سوچ بدل گئی ہے۔
AI ایجنٹس ڈیٹا ہینڈل کرنے کے ہمارے طریقے کو بدل دیتے ہیں۔ ان کا اسٹیٹ (state) تیزی سے بدلنے والا (high-churn)، مقامی (local) اور نجی (private) ہوتا ہے۔ ہر چھوٹی تبدیلی کو ایک مرکزی Postgres سرور پر بھیجنا سست اور مہنگا ہے۔
یہاں وجہ دی گئی ہے کہ یہ workloads کے لیے SQLite کیوں جیت رہا ہے:
- قربت (Proximity): مفید ایجنٹس وہیں چلتے ہیں جہاں آپ کام کرتے ہیں۔ وہ آپ کے ٹرمینل، IDE، یا براؤزر میں چلتے ہیں۔ لوکل SQLite ریڈز (reads) نیٹ ورک ریڈز کے مقابلے میں بہت زیادہ تیز ہوتے ہیں۔
- لاگت (Cost): آپ کو ایسے عارضی کام (scratch work) کو محفوظ کرنے کے لیے بھاری انفراسٹرکچر کی ضرورت نہیں ہوتی جو صرف ایک گھنٹے کے لیے ہوتا ہے۔
- رازداری (Privacy): ایجنٹ کے فائل انڈیکس کو مقامی مشین پر رکھنے سے ڈیٹا ہینڈلنگ کے غیر ضروری خطرات سے بچا جا سکتا ہے۔
SaaS بنانے والوں کے لیے، میں ایک نیا پیٹرن دیکھ رہا ہوں: فی ٹیننٹ (tenant) ایک SQLite ڈیٹا بیس۔
پرانے طریقے میں، ہم ایک بڑا Postgres ڈیٹا بیس استعمال کرتے تھے اور tenant_id کالم کے ذریعے ہر چیز کو فلٹر کرتے تھے۔ SQLite کے ساتھ، ہر ٹیننٹ کو اپنی الگ فائل ملتی ہے۔ اس کے بہتر فوائد ہیں:
- علیحدگی (Isolation): ایک ٹیننٹ فائل میں غلطی پورے کلسٹر (cluster) کو متاثر نہیں کرتی۔
- اسکیلنگ (Scaling): ایک نیا ٹیننٹ شامل کرنے کا مطلب صرف ایک نئی فائل شامل کرنا ہے۔ شروع کرنے کے لیے کوئی بھاری عمل نہیں ہوتا۔
- سادگی (Simplicity): بیک اپ اور ڈیلیشن سادہ فائل آپریشنز بن جاتے ہیں۔
بہترین آرکیٹیکچر ایک بتدریج تبدیلی (gradient) ہے۔
SQLite کو اپنے ورک بینچ (workbench) کے طور پر استعمال کریں۔ یہ تیز، مقامی اور عارضی اسٹیٹ کے لیے ہے۔ Postgres کو اپنے والٹ (vault) کے طور پر استعمال کریں۔ یہ رقم، بلنگ اور عالمی حقیقت (global truth) کے لیے ہے۔
ایک ایونٹ لاگ (event log) ان دونوں کو جوڑتا ہے۔ عارضی کام SQLite میں ہوتا ہے، اور اہم تبدیلیاں مرکزی لیجر (central ledger) میں منتقل ہوتی ہیں۔
ایکوسسٹم (ecosystem) آخر کار اس کی حمایت کرتا ہے۔ Turso اور Cloudflare D1 جیسے ٹولز وہ نیٹ ورکنگ اور ریپلیکیشن فراہم کرتے ہیں جن کی کمی SQLite میں برسوں سے تھی۔
رائٹر واپس ایج (edge) کی طرف بڑھ رہا ہے۔ اسٹیٹ بھی اس کے پیچھے چل رہی ہے۔
Source: https://dev.to/gyu07/why-ai-agents-make-me-reach-for-sqlite-4dh0
Optional learning community: https://t.me/GyaanSetuAi