HeadlinesBriefing favicon HeadlinesBriefing.com

PlanetScale Neki: Scalable Workloads-র জন্য Sharded Postgres

Hacker News •
×

Neki presently platform preview-তে উপলব্ধ। Neki বিশ্বের সবচেয়ে বড় শার্ডেড MySQL clusters চালানোর আট বছর পূরবále পাঠ থেকে তৈরি। হাজার প্রডাকশন workloads প্রতি সেকেন্ডে মিলিয়ন কোয়েরির জন্য কোম্পানিগুলো যেখানে কেবল কিছু সেকেন্ডের ডাউনটাইমও একটি pubblico ইভেন্ট। আমরা জানি বিশ্বের বড়শ্রেণী 0 workloads পাওয়ার অর্থ কী। যখন আমরা এক বছর এবং অর্ধের আগে Planet Scale Postgres প্রমুখ করেছি, তখন আমাদের জানতাম আমাদের আরও কিছু করতে হবে। এই সময়ে আমরা Planet Scale-তে হাজার গ্রাহককে অনবোর্ড করেছি,其中一些 গ্রাহক আমাদের সবচেয়ে বড় MySQL গ্রাহকদেরের আকারের সাথে মিলে পড়েছে। সময়ে সময়ে, আমরা teams দেখেছি একটি একমাত্র মেশিনের Postgres উপরে সীমাবদ্ধতা পায়। মেটাল দিলে তারা কিছু সময় পেয়েছেন, কিন্তু গ্রাহক যখন একমাত্র মেশিনের সীমাবদ্ধতা পায়ের উপরে যাচ্ছে, তখন আমাদের তাদের জন্য ভালো কোনো বিকল্প নেই। এন্টার Neki। Neki কি? Neki Planet Scale-র Sharded Postgres। এটি আপনাকে Postgres database many machines-তে scale করতে সাহায্য করে একে-এক শার্ডে real Postgres রাখা। আপনার অ্যাপ্লিকেশন Neki router-তে standard Postgres wire protocol-তে connect করে, তাই আপনার मौজুড় ড্রাইভERS, ORMs এবং connection string কাজ করবে। প্রতিটি shard একটি full Postgres cluster যার 1 primary এবং at least 2 replicas 3 availability zones-তে। কোনো custom storage engine নেই, তাই extensions, SQL support এবং performance waisaই কাজ করবে যেভাবে Postgres কাজ করে। আপনি shard key নির্বাচন করবেন এবং JSON data topology-তে tables কীভাবে grouping এবং distribute করবেন। Schema changes, version upgrades, failovers, imports, এবং resharding—sab built-in fully online workflows-তে chলে। আপনি যা rely করবেন Planet Scale features-তে Insights, schema recommendations, branching, এবং MCP অন্তর্ভুক্ত। আপনাকে প্রথম দিনে sharding করতে হবে না। Chaliye Neki-এ single primary-এ replicas-র সাথে run করবেন, যখন আপনি one machine-কে outgrow করবেন, তবে resharding একটি workflow যা আপনার already have cluster-তে run করতে পারবেন। Why Neki? আপনারা আগে থেকে জানি fast-growing Postgres databases-তে aane wale problems: tables bohot bade vacuum বা index করাই bina traffic affect kiye, backups ghante লeftে, connection limits, maintenance windows for schema changes, transaction wraparound এবং bohot zyada। আপনি bigger instance-তে move করতে পারবেন, কিন্তু eventually আপনি big enough machines- থেকে বাহির আউট হবে, এবং problems linearly scale হবে না jaise aap cores aur IOPS add করte যাবেন। Existing answers har ek aap se kuch dena maangti hain। Application-level sharding routing ko aapke code-তে push karta hain। Postgres-"compatible" distributed databases aapki se shard key chhupa leti hain, aapke extensions chhina leti hain, এবং complexity aur latency add করে যা handle এবং debug করা mushkil ban jata hain। তাই আমরা Neki-কে few principles-তে banayen, sab se bada principle hai: stick to Postgres, uska kaam mat karo, uska fikr mat karo, ya us se door bano। Neki kaise kaam karta hai? Humne Neki-কে Postgres-কে liye first principles-তে architect kiye hain, har shard-ে real Postgres-র সাথে। Char moving parts hain। Neki routers Aapki application pehle Neki router-তে connect karegi। Router Postgres wire protocol speak karegi isliye aapke existing drivers, ORMs ek single connection string-ке saath kaam karegi rahegi। Ek router-কে full Postgres query parser, distributed query planner, query buffering এবং zyada আছে। Aapki query parse karegi, plan banayegi jo decide karegi ki kaunsa shards chalengi, kaam baahar bhejegi, aur results ko ek stream-এ combine karegi। Routers vertical aur horizontal scale করতে পারবে, isliye koi single router bottleneck হবে না। Sharding aur shard groups Har ek Neki shard real Postgres-র hai jismein 1 primary aur at least 2 replicas 3 availability zones-তে। Koi modified storage engine নেই। Extensions, SQL support aur performance waisaই কাজ করবে jaise Postgres-র কাজ করে, kyunki it Postgres-র hai। Shards-কে shard groups-এ organize করা গেছে, isliye alag alag tables বা workloads different sets of shards-তে rah sakti hain। Har ek shard ek configuration profile use karta hai jo uski instance size, replica count, storage, Postgres parameters এবং extensions define karta hai, isliye aap har group-কে i...