প্রকল্প সম্পর্কে
bytdb একটি এম্বেডেড,纯 Go সম্পর্কিত ডেটাবেস যা SQLite-এর নিচে বসতে তৈরি হয়েছে এবং PostgreSQL ডায়ালেক্টে কথা বলে। এটি সম্পূর্ণরূপে অ্যাপ্লিকেশন প্রক্রিয়ার ভিতরে কাজ করে, বাহ্যিক সার্ভার, cgo, এবং সকেট যোগাযোগের প্রয়োজন ছাড়াই।
মुख্য প্রযুক্তিগত বৈশিষ্ট্য অন্তর্ভুক্ত:
- **Postgres সামঞ্জস্যতা**: `pgwire` এর মাধ্যমে PostgreSQL তার-প্রোটোকল সমর্থন করে, যা `psql`, `pgx` এবং বিভিন্ন ORM (যেমন GORM) সরাসরি সংযোগ করার অনুমতি দেয়। এটি PostgreSQL ডায়ালেক্টের একটি উপসেট প্রয়োগ করে, যার মধ্যে উইন্ডো ফাংশন, CTE, জোইন এবং `jsonb` সমর্থন অন্তর্ভুক্ত।
- **এম্বেডেড আর্কিটেকচার**: `btypedb` এর উপরে একটি সম্পর্কিত স্তর হিসেবে তৈরি, এটি টেবিল, রো এবং সেকেন্ডারি ইন্ডেক্সকে একটি একক অর্ডার করা কী স্পেসে এনকোড করে, যা কী স্ক্যান এবং অটমিক অপারেশনকে দক্ষ করে তোলে।
- **সাময়িকতা ও ট্রানজেকশন**: ডিফল্ট olarak সিরিয়ালাইজযোগ্য ট্রানজেকশন প্রদান করে। এটি পঠন-প্রভারী ও উচ্চ কর্মক্ষমতা ওয়ার্কলোডের জন্য অপটিমিস্টিক কনকurreন্সি কন্ট্রোল (OCC) মোডও প্রদান করে।
- **ডেটা টাইপ**: PostgreSQL-গ্রেড টাইপ সমর্থন করে, যার মধ্যে `timestamp[tz]`, `date`, `uuid`, `text[]`, এবং `jsonb` অন্তর্ভুক্ত, পুরো অপারেটর পরিবারের সাথে।
- **টেকসইতা ও নিরাপত্তা**: পাওয়ার-লস টেকসইতার জন্য রাইট-আহেড লগ (WAL) অন্তর্ভুক্ত, ঐচ্ছিক AES-256-GCM এনক্রিপশন আট রেস্টে, এবং S3-সঙ্গে সামঞ্জস্যপূর্ণ অবজেক্ট স্টোরে অ্যাসিঙ্ক্রোনাস রেপ্লিকেশন (Litestream-এর মতো)।
- **স্কিমা ব্যবস্থাপনা**: সparse রো মান সমর্থন করে, যা `AddColumn` এবং `DropColumn` এর মতো মেটাডেটা-মাত্রা স্কিমা পরিবর্তনকে পুরো টেবিল রাইট রাইটে না করে অনুমতি দেয়।
এই ডেটাবেসটি একটি স্ট্যান্ডার্ড `database/sql` ড্রাইভার, একটি সরাসরি SQL API, অথবা PostgreSQL তার-প্রোটোকলের মাধ্যমে একটি স্বতন্ত্র সার্ভার হিসেবে ব্যবহার করা যায়।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.