883 subscribers
44 photos
3 videos
1 file
1.39K links
🕸 Database Academy

حمایت مالی:
https://www.coffeete.ir/mrbardia72

ادمین:
@mrbardia72
Download Telegram
🔵 عنوان مقاله
Making 768 Servers Look Like 1

🟢 خلاصه مقاله:
تصور کنید که یک پایگاه داده عظیم، به حجم یک پتابایت، چگونه می‌تواند به نظر برسد که تنها یک سرور است، در حالی که در واقع از مجموعه‌ای از سرورهای کوچک‌تر تشکیل شده است. در این مقاله، به بررسی فرآیندهای پیچیده‌ای می‌پردازیم که این امکان را فراهم می‌آورد تا 768 سرور مختلف، در ظاهر تنها یک بانک اطلاعاتی واحد به نظر برسند. این روش‌ها شامل تقسیم‌بندی داده‌ها بر روی چندین شارد، تکرار داده‌ها برای اطمینان از در دسترس بودن، و استراتژی‌های برقراری تعادل بار است.

در ادامه، توضیح می‌دهیم که چگونه این شاردها با وجود توزیع فیزیکی، شدن در کنار هم عمل می‌کنند تا سیستم‌ای قدرتمند و مقاوم بسازند. یکی از چالش‌های مهم در این مسیر، محدودیت‌هایی است که در اثر تعداد زیاد نسخه‌های تکراری (رپلیکاها) ایجاد می‌شود، و نقش روترهای پرس و جو در هدایت صحیح درخواست‌ها بین سرورها را بررسی می‌کنیم. همچنین، روش‌های مختلف برای توزیع کارها و بهبود کارایی سیستم، از جمله استراتژی‌های بارگذاری و تعادل بار، مورد ارزیابی قرار می‌گیرند.

این مقالات آموزشی نه تنها طراحی و ساخت این ساختار پیچیده را تشریح می‌کنند، بلکه نشان می‌دهند چگونه این فناوری‌ها به کمک هم، می‌توانند یک پایگاه داده بسیار بزرگ را که به صورت فیزیکی در چندین سرور پراکنده است، به نظر و عمل مانند یک سیستم یکپارچه و سریع درآورند. نتیجه این است که کاربران، بدون در نظر گرفتن زیرساخت‌های پشت صحنه، تجربه‌ای بی‌نظیر از سرعت و دسترسی مطمئن به داده‌ها خواهند داشت.

#پایگاه₍اطلاع₎ #توسعه_سیستم #پایگاه_داده #توزیع_بار

🟣لینک مقاله:
https://planetscale.com/blog/making-768-servers-look-like-1


👑 @Database_Academy
🔵 عنوان مقاله
Working on Postgres After 13 Years on SQL Server

🟢 خلاصه مقاله:
پس از بیش از سیزده سال تجربه در استفاده از SQL Server، حالا من به سمت سیستم مدیریت پایگاه داده پرطرفدار و قدرتمند، پستگرس، روی آورده‌ام. این تغییر نه تنها نشان‌دهنده‌ی توسعه و تحول در حوزه‌های فناوری است، بلکه به دلیل قابلیت‌ها و امکانات منحصربه‌فرد پستگرس، بسیاری از توسعه‌دهندگان و شرکت‌ها ترجیح می‌دهند آن را برگزینند. پستگرس، به عنوان یک سیستم متن‌باز و انعطاف‌پذیر، امکانات متنوعی ارائه می‌دهد که باعث شده است در انجام کارهای مختلف، از پروژه‌های کوچک تا سیستم‌های بزرگ و مقیاس‌پذیر، به عنوان گزینه‌ی پیش‌فرض شناخته شود.

این موفقیت، نتیجه‌ی توسعه مستمر و پشتیبانی فعال جامعه‌ی توسعه‌دهندگان و شرکت‌ها است که باعث شده پستگرس در برابر سایر سیستم‌ها رقابت‌پذیر باقی بماند. همچنین، معماری‌های نوینی مانند معماری اشتراکی ذخیره‌سازی در Azure HorizonDB، امکان توسعه و بهره‌برداری بهتر از منابع، امنیت و قابلیت‌های مقیاس‌پذیری را فراهم کرده است. این تحولات، نشان از آینده‌ای روشن و پرامید برای استفاده از پستگرس در پروژه‌های متنوع دارد.

در نهایت، انتقال به پستگرس را می‌توان به عنوان گامی مهم در به‌روزرسانی فناوری و افزایش کارایی و انعطاف‌پذیری سیستم‌های داده‌ای در نظر گرفت. این تغییرات نه تنها باعث بهبود عملکرد و امنیت می‌شوند، بلکه فرصت‌های جدیدی برای توسعه‌دهندگان و سازمان‌ها فراهم می‌آورند تا به شکلی نوآورانه‌تر و مؤثرتر به مدیریت داده‌های خود بپردازند.

#پستگرس #مدیریت_پایگاه_داده #توسعه_فناوری #AzureHorizonDB

🟣لینک مقاله:
https://talkingpostgres.com/episodes/working-on-postgres-after-13-years-on-sql-server-with-panagiotis-antonopoulos


👑 @Database_Academy
Forwarded from Persian Post
🚀 اگر قصد داری زبان انگلیسی رو تقویت کنی، از صفر شروع کنی یا برای مهاجرت آماده بشی، یکی از بهترین اساتیدی که می‌شناسم استاد منصوریان هست. 🇬🇧

اگر به دنبال یادگیری اصولی، منظم و کاربردی زبان هستی، پیشنهاد می‌کنم حتماً پیج ایشون رو دنبال کنی. 📚

📅 ظرفیت کلاس‌های فعلی:
یکشنبه و پنجشنبه: ساعت ۱۴:۳۰ 🕒
شنبه و چهارشنبه: ساعت ۱۹:۰۰ 🕖

👇👇👇👇

Https://xn--r1a.website/RaziyehMansourian 🔗
Forwarded from Future Pulse Persian
شایان اویس‌قَرَن، پژوهشگر ایرانی علوم رایانه و استاد دانشگاه واشینگتن، مدال آباکوس سال ۲۰۲۶ اتحادیه بین‌المللی ریاضیات را دریافت کرده است؛ جایزه‌ای که به دستاوردهای برجسته پژوهشگران جوان در بخش‌های ریاضی علوم رایانه تعلق می‌گیرد.

کمیته این جایزه می‌گوید اویس‌قرن با وارد کردن ابزارهایی از شاخه‌هایی چون هندسه چندجمله‌ای‌ها، نظریه احتمال و نظریه طیفی گراف‌ها، شیوه تحلیل الگوریتم‌ها را گسترش داده و برای حل چند مسئله قدیمی علوم رایانه راه‌های تازه‌ای گشوده است.

پژوهش‌های او به‌ویژه در دو زمینه مورد توجه قرار گرفته‌اند: یافتن مسیرهای نزدیک به بهینه و نمونه‌گیری تصادفی از مجموعه‌های بسیار بزرگ و پیچیده.

مدال آباکوس هر چهار سال یک‌بار اهدا می‌شود و ادامه جایزه‌ای است که تا سال ۲۰۱۸ به نام رولف نوانلینا شناخته می‌شد. نامزد دریافت آن باید در آغاز سال برگزاری کنگره جهانی ریاضی‌دانان هنوز به ۴۰ سالگی نرسیده باشد. این جایزه از مهم‌ترین افتخارات بین‌المللی در علوم رایانه نظری به شمار می‌رود.

اما اهمیت کار اویس‌قرن تنها با فهرست کردن اصطلاح‌های تخصصی روشن نمی‌شود. بخش مهمی از مسیر علمی او به یکی از مشهورترین پرسش‌های علوم رایانه بازمی‌گردد: چگونه می‌توان کوتاه‌ترین مسیر ممکن را برای سفر میان چندین شهر پیدا کرد و در پایان به نقطه آغاز بازگشت؟

این پرسش که «مسئله فروشنده دوره‌گرد» نام دارد، در ظاهر ساده است. یک فروشنده، راننده یا مأمور توزیع باید از چند شهر یا مقصد عبور کند، هر کدام را یک بار ببیند و به نقطه نخست بازگردد. با افزایش شمار مقصدها، تعداد مسیرهای ممکن چنان سریع زیاد می‌شود که بررسی همه آنها عملاً ممکن نیست.

در چنین مواردی، پژوهشگران به جای یافتن پاسخ دقیق، الگوریتمی می‌خواهند که در مدت معقول مسیری نزدیک به بهترین مسیر را پیدا کند و بتوان تضمین کرد که نتیجه آن از حد معینی بدتر نخواهد بود.

https://xn--r1a.website/futurepulse_persian
🔵 عنوان مقاله
The Startup's Postgres Survival Guide

🟢 خلاصه مقاله:
در دنیای فناوری و استارتاپ‌ها، مدیریت پایگاه داده‌ها اهمیت زیادی دارد، به ویژه زمانی که از یک سیستم قدرتمند مانند PostgreSQL استفاده می‌شود. استارتاپ مورد نظر پس از دو سال تجربیات و چالش‌های خود در زمینه کار با PostgreSQL، راهنمایی جامع و کاربردی را تدوین کرده است. این راهنما شامل نکات مهم و استراتژی‌هایی است که از قوانین طراحی اسکیمای دیتابیس، تا بهینه‌سازی شاخص‌های ترکیبی و تنظیمات خودکار واکسینیشن داده‌ها را در بر می‌گیرد. هدف این است که تیم‌ها بتوانند با اعتماد بیشتر و مشکلات کمتری، کار خود را در فضای توسعه و توسعه‌دهی ادامه دهند.

در قسمت اول، اصول و قواعد طراحی اسکیمای پایگاه داده مورد بررسی قرار گرفته است؛ چرا که طراحی صحیح اسکیمای دیتابیس نقش مهمی در عملکرد و مقیاس‌پذیری سیستم دارد. سپس، راهکارهای ایجاد شاخص‌های ترکیبی و نحوه استفاده بهینه از آن‌ها برای سرعت بخشیدن به عملیات جست‌وجو و بازیابی داده‌ها شرح داده شده است. در ادامه، تمرکز بر تنظیمات خودکار واکسینیشن (Autovacuum) است تا سیستم بتواند به طور خودکار و به موقع داده‌های بی‌استفاده و منحرف را تمیز کند و کارایی پایگاه داده حفظ شود.

علاوه بر این، روش‌هایی برای مدیریت صف‌های SKIP LOCKED معرفی شده است، تا بتوان در هنگام اجرای عملیات همزمان و رقابتی، شفافیت و کارایی را حفظ کرد. استفاده از پارتیشن‌بندی (Partitioning) هم در این راهنما گنجانده شده است، زیرا پارتیشن‌بندی کمک می‌کند تا داده‌های بزرگ‌تر به بخش‌های کوچک‌تری تقسیم شده و مدیریت آن‌ها آسان‌تر گردد، که این امر در پروژه‌های نوپا و در حال رشد امری حیاتی است. نکات مطرح شده در این راهنما، دانش فنی لازم را برای مدیران دیتابیس و تیم‌های توسعه فراهم می‌کند تا بتوانند پایگاه داده‌های PostgreSQL خود را مقاوم‌تر، سریع‌تر و بهینه‌تر نگهداری کنند.

در کل، این راهنمای جامع به استارتاپ‌ها کمک می‌کند از تجربیات و درس‌های آموخته‌شده در طول مسیر بهره‌مند شوند، و با اعتماد به نفسی بیشتر به توسعه فناوری و رشد کسب‌وکارشان ادامه دهند.

#پایگاه_داده #PostgreSQL #توسعه #استارتاپ

🟣لینک مقاله:
https://hatchet.run/blog/postgres-survival-guide


👑 @Database_Academy
🔵 عنوان مقاله
Autovacuum Tweaks Coming to Postgres 19

🟢 خلاصه مقاله:
در نسخه ۱۹ پایگاه داده پستگرس، تغییراتی اساسی در عملکرد بخش اتواکومول صورت گرفته است. قبلاً این بخش به صورت ساده و ترتیبی، بر اساس ترتیب جداول در کاتولوگ، فرآیند پاک‌سازی و نگهداری داده‌ها را انجام می‌داد. اما این روش نیازمند بهبود بود تا بتوان اولویت‌بندی هوشمندتری برای رسیدگی به جداول مختلف انجام داد.

در نسخه جدید، سیستم اتواکومول با هوشمندی بیشتری عمل می‌کند و اکنون قادر است با ارزیابی عوامل متعددی مانند خطر اور‌واپ‌اند و تعداد ردیف‌های مرده، جداول را رتبه‌بندی کند. این تغییر به پایگاه داده کمک می‌کند تا ابتدا به سمت جداولی که بیشترین نیاز به به‌روزرسانی و پاک‌سازی دارند، حرکت کند. در نتیجه، کارایی سیستم به طور قابل‌توجهی افزایش می‌یابد و فرآیند نگهداری پایگاه داده‌ها به شکل بهتری مدیریت می‌شود.

این بروزرسانی در نسخه ۱۹ پستگرس، نشانگر تلاش برای بهبود مستمر در کارایی و قابلیت اطمینان است، و نشان می‌دهد که تیم توسعه دهنده به افزایش بهره‌وری و کاهش بارهای ناخواسته بر روی سرورها اهمیت زیادی می‌دهد.

#پایگاه_داده #پستگرس #اتوواکومول #بهبود_کارایی

🟣لینک مقاله:
https://www.pgedge.com/blog/looking-forward-to-postgres-19-autovacuum-tweaks


👑 @Database_Academy
🔵 عنوان مقاله
Why Your Pioneering Postgres Feature Should Start in a Fork

🟢 خلاصه مقاله:
در دنیای پایگاه‌های داده، قابلیت‌های جدید باید با دقت و آزمایش‌های دقیق بررسی شوند تا اطمینان حاصل شود که کارایی و کارکرد صحیح خود را دارند. یکی از توسعه‌دهندگان سیستم Postgres، که در حال حاضر در تیم توسعه‌ی این بانک اطلاعاتی فعالیت می‌کند، اخیراً درباره تلاش‌های خود در بهبود عملکرد اسکن‌های موازی بر روی جداول موقت صحبت کرده است. او سه مرتبه این ایده را آزمایش کرد، اما مشکلات متعددی در هر بار آزمایش ظاهر شد. این مشکلات عمدتاً به محدودیت‌های حافظه محلی و محدودیت‌ها در استفاده از کوئری‌های خواندنی در حالت فقط-خواندنی مرتبط بودند، که بر صفحات آلوده تاثیر می‌گذاشتند و نتایج ناامیدکننده‌ای را به دنبال داشتند.

در این راستا، او بر این باور است که راهنمایی و ارائه‌ی قابلیت‌های جدید بهتر است در ابتدا در یک شاخه (fork) صورت گیرد، جایی که می‌تواند آزمایش‌های مستقل و بدون خطر برای هسته‌ی اصلی سیستم انجام دهد. او اشاره می‌کند که هسته‌ی اصلی پایگاه داده، در مقایسه با توسعه‌های خارج از هسته، محدودیت‌ها و سختگیری‌های زیادی دارد، زیرا استانداردهای بالایی برای امنیت، امنیت و عملیات پایدار تعیین شده است. بنابراین، شروع در یک شاخه جدید امکان آزمایش‌های گسترده‌تر و نوآورانه‌تر را فراهم می‌کند، بدون آنکه ریسک پایداری و ثبات هسته‌ی اصلی تهدید شود.

در نهایت، او تأکید می‌کند که این رویکرد نوآورانه می‌تواند راه را برای توسعه قابلیت‌های پیچیده‌تر و بهبودهای اساسی در عملکرد PostgreSQL هموار کند. پیشنهاد او این است که برای معرفی ویژگی‌های جدید و آزمایش آن‌ها، ابتدا در شاخه‌ای جداگانه آزموده شوند، به این صورت که در نهایت، موارد موفقیت‌آمیز به هسته‌ی اصلی وارد و در نسخه‌های نهایی قرار گیرند. این رویکرد باعث می‌شود نوآوری و توسعه همزمان با حفظ ثبات و امنیت سیستم، پیشرفت کند و بتوان به صورت مؤثرتری فناوری‌های جدید را راهی میدان کرد.

#پایگاه_داده #PostgreSQL #توسعه_نرم‌افزار #نوآوری

🟣لینک مقاله:
https://danolivo.substack.com/p/why-your-pioneering-postgres-feature


👑 @Database_Academy
🔵 عنوان مقاله
pgGraph 1.0: Add Graph Database 'Superpowers' to Postgres

🟢 خلاصه مقاله:
در دنیای پایگاه‌های داده، به‌کارگیری نوع جدیدی از ساختارها برای مدیریت ارتباطات پیچیده، همیشه یکی از چالش‌های بزرگ بوده است. حال، افزونه «pgGraph 1.0» این مشکل را حل کرده و امکانات فوق‌العاده‌ای را به پایگاه داده محبوب پستگرس (Postgres) اضافه می‌کند. این افزونه به کاربران اجازه می‌دهد تا بدون نیاز به سیستم‌های جداگانه، جست‌وجوی گراف، پیمایش مسیر‌ها، یافتن کوتاه‌ترین مسیر و استعلام روابط را مستقیماً روی جداول معمولی انجام دهند.

این ابزار قدرتمند، یک «نیروی فراانسانی» برای پایگاه داده‌های پستگرس است که آن را به گزینه‌ای مناسب برای پروژه‌هایی تبدیل می‌کند که نیازمند تحلیل شبکه‌ها، روابط اجتماعی، مسیرهای حمل‌ونقل و دیگر ساختارهای گراف‌مانند هستند. با استفاده از این افزونه، توسعه‌دهندگان توانایی انجام عملیات پیچیده گراف‌نویسی را در محیطی آشنا و کاربرپسند دارند، که موجب صرفه‌جویی در زمان و کاهش خطاهای نرم‌افزاری می‌شود.

در مجموع، «pgGraph 1.0» پلی است میان ساختار رابطه‌ای و مدل گراف، که امکانات جدیدی را به PostgreSQL می‌افزاید و این سیستم مدیریت پایگاه داده را به‌روز و قدرتمندتر می‌کند. این تحول، جلب توجه توسعه‌دهندگان و مدیران پایگاه داده‌هایی می‌کند که به دنبال راه‌حلی ساده و در عین حال قدرتمند برای تحلیل روابط پیچیده هستند.

#پایگاه_داده #گراف #پستگرس #تحلیل_روابط

🟣لینک مقاله:
https://github.com/Evokoa/pgGraph/releases/tag/v1.0.0


👑 @Database_Academy
🔵 عنوان مقاله
Pagila 4: A Sample Database for Postgres

🟢 خلاصه مقاله:
پگیلا ۴: نمونه‌ دیتابیسی برای پستگرس

پگیلا ابتدا به‌عنوان یک نسخه‌ مشابه بانک اطلاعات نمونه ساکیلا در مای‌اس‌کیوال توسعه یافته بود. این پایگاه داده نمونه، به مرور زمان با افزودن امکانات و ویژگی‌های خاص پستگرس، گسترش یافته است. از جمله این ویژگی‌ها می‌توان به پشتیبانی از توابع مخصوص پستگرس مانند SQL/JSON و UUIDv7 اشاره کرد که باعث بهبود عملکرد و امکان‌پذیری در انجام عملیات پیچیده‌تر می‌شود. نسخه‌ ۴.۰ این بانک اطلاعاتی، که نیازمند پستگرس ۱۸ است، بسیار بزرگ‌تر و متنوع‌تر شده و شامل مجموعه‌ داده‌های گسترده‌تری است، به گونه‌ای که نمونه‌های مختلف کاربردهای واقعی را در بر می‌گیرد و امکانات بیشتری برای توسعه‌دهندگان فراهم می‌آورد.

توسعه‌ این پایگاه داده نمونه نشان می‌دهد که مبتنی بر نیازهای کاربران و امکانات جدید پستگرس، خصوصاً در زمینه‌ مدیریت داده‌های ساخت‌یافته و نیمه‌ساخت‌یافته، دستاوردهای قابل توجهی حاصل شده است. به‌این‌ترتیب، پگیلا ابزاری ارزشمند برای آموزش، آزمایش و توسعه برنامه‌های مبتنی بر پستگرس محسوب می‌شود و توسعه‌دهندگان می‌توانند به‌راحتی از آن برای تست ویژگی‌های جدید یا اجرای پروژه‌های نمونه بهره‌مند شوند.

#پستیگرس #بانکاطلاعات #پگیلا #نمونه‌دیتابیس

🟣لینک مقاله:
https://github.com/devrimgunduz/pagila


👑 @Database_Academy
🔵 عنوان مقاله
The Right Way to Give a Third-Party DBA Access to Your Database

🟢 خلاصه مقاله:
در دنیای مدیریت پایگاه‌های داده، فراهم کردن دسترسی مناسب به افراد ثالث یا مدیران پایگاه داده (DBA) یکی از مسائل مهم و پرچالش است. امروزه، اهمیت این موضوع بیش از پیش شده است؛ چرا که نیاز به نظارت و نگهداری از پایگاه‌های داده، بدون به خطر انداختن امنیت و کنترل اصلی سیستم، بسیار حس می‌شود.

برای این منظور، ابتدا باید نقش‌هایی محدود و مشخص تعریف کرد که تنها اجازه‌های لازم را در بر داشته باشند. این کار مانع از دسترسی‌های غیرضروری و خطرساز می‌شود و مدیریت دقیق‌تری بر فعالیت‌ها را امکان‌پذیر می‌سازد. فضاهای نقش‌بندی شده به DBAها اجازه می‌دهد تا کارهای مورد نیاز خود — مانند کنترل گزارش‌های مانیتورینگ، متوقف کردن کوئری‌های خطرناک یا پاک‌سازی و بازتنظیم ایندکس‌ها — را انجام دهند، بدون اینکه مالکیت داده‌ها یا دسترسی‌های سطح بالا به آن‌ها داده شود.

در حقیقت، روشی امن و کارآمد است که به مدیران پایگاه داده اجازه می‌دهد کارهای تخصصی خود را انجام دهند، در حالی که همچنان کنترل و امنیت سیستم حفظ می‌شود. این نوع دسترسی‌دهی، به ویژه در سازمان‌های بزرگ یا پروژه‌های حساس، نقش حیاتی بازی می‌کند و اطمینان می‌دهد که عملیات پایگاه داده با کمترین خطر و بیشترین بهره‌وری انجام می‌شود.

بنابراین، بهترین راهکار آن است که با ساخت نقش‌هایی مشخص و محدود، به DBAها دسترسی‌های لازم اما کنترل‌شده ارائه دهیم، بدون اینکه نیاز به واگذاری مالکیت کامل یا دسترسی‌های سوپر یوزر باشد. این روش، نه تنها امنیت سیستم را تضمین می‌کند بلکه مدیریت و نظارت بر عملکرد پایگاه داده را ساده‌تر می‌سازد و در عین حال، به تیم‌های فنی آزادی لازم برای انجام وظایف‌شان را می‌دهد.

#مدیریت_پایگاه_داده #امنیت_سایبری #رشد_فناوری #تکنولوژی

🟣لینک مقاله:
https://stormatics.tech/blogs/the-right-way-to-give-a-third-party-dba-access-to-your-postgresql-database


👑 @Database_Academy
🔵 عنوان مقاله
Postgres's MVCC is Bad, But So is Everyone Else's

🟢 خلاصه مقاله:
سیستم چندنسخه‌ای تراکنش‌ها (MVCC) در پایگاه داده پستگرس‌اس‌کیوال، اگرچه در برخی موارد مشکل‌ساز است، اما مشکل اصلی این نیست که تنها این سیستم دچار مشکل است. گروه بانک‌های اطلاعاتی آندری پاولو، که یکی از پیشگامان در زمینه طراحی و توسعه پایگاه‌های داده است، معتقدند که پیاده‌سازی MVCC در پستگرس‌اس‌کیوال بیش‌ترین رضایت را در میان هفتاد درصد موارد دارد، هرچند که باز هم معمولا افراد در مورد آن انتقاد می‌کنند. رادیم، که همکاری نزدیکی با این گروه دارد، بر اساس ارزیابی‌های مقایسه‌ای تایید می‌کند که مشکلاتی در این زمینه وجود دارد، اما به‌طور جدی می‌پرسد: دیگر سیستم‌های محبوب و رایج مانند اوراکل، ایننو دی بی، اس‌کیوال سرور مایکروسافت، مونگو‌دی‌بی و اتد، چه روشی را جایگزین MVCC کرده‌اند، و این جایگزین‌ها چه هزینه یا درجه‌ای از پیچیدگی و کاهش عملکرد را به همراه دارند؟

در حقیقت، این سؤال مهم است که چرا اکثر سیستم‌های بانک اطلاعاتی از پیاده‌سازی‌های مختلفی استفاده می‌کنند که ممکن است هر یک مشکلات خاص خود را داشته باشند. برای مثال، اوراکل و اس‌کیوال سرور، اغلب از رویکردهای متفاوتی برای اطمینان از همزمانی و یکپارچگی داده‌ها بهره می‌برند که ممکن است در مقایسه با MVCC، هزینه‌های بیشتری از نظر منابع سیستم و پیچیدگی پیاده‌سازی داشته باشد. در مقابل، برخی دیگر مانند مونگو‌دی‌بی، که بر اساس مدل سندی است، ساختارهای متفاوتی دارند و به نوعی راه‌حل‌های جایگزین در اختیار می‌گذارند، اما این راه‌حل‌ها نیز محدودیت‌هایی دارند که ممکن است بر عملکرد و قابلیت توسعه‌دهی اثر بگذارند.

در نهایت، شناخت اینکه هرکدام از این سیستم‌ها چه هزینه‌هایی را بر روی عملکرد، پیچیدگی و مقیاس‌پذیری تحمیل می‌کنند، به توسعه‌دهندگان و مدیران بانک‌های اطلاعاتی کمک می‌کند تا تصمیم‌های آگاهانه‌تری در انتخاب ساختار مناسب برای نیازهای خاص خود بگیرند. به نظر می‌رسد که هیچ روشی کامل نیست، اما فهم بهتر تفاوت‌ها و هزینه‌های هرکدام، امکان بهبود و انتخاب بهینه را فراهم می‌آورد.

#پایگاه_داده #MVCC #مدیریت_داده #توسعه

🟣لینک مقاله:
https://boringsql.com/posts/mvcc-bad-bad/


👑 @Database_Academy
🔵 عنوان مقاله
PGSimCity: How Postgres Works, in 3D

🟢 خلاصه مقاله:
سیستم PGSimCity: چگونه پایگاه داده پستگرس در ابعادی سه‌بعدی کار می‌کند

این پروژه، روشی کاملاً نوآورانه برای کاوش در مدل داخلی پستگرس است. فراتر از یک تصویرسازی ساده، شما می‌توانید در میان این مدل حرکت کنید، اجزا را بررسی کنید و حتی در صورت تمایل، قسمت‌هایی را آزمایش و تغییر دهید. این نوع تجربه، فرصت بی‌نظیری فراهم می‌کند تا مفهوم‌های فنی پیچیده و اغلب دشوار پستگرس را به شیوه‌ای بصری و تعاملی درک کنید. اگرچه طراحی آن کمی شلوغ است و ممکن است در برخی دستگاه‌ها مانند تلفن‌های همراه کمی دشوار باشد، اما این پروژه نگاه تازه‌ای به مفاهیم پیچیده و غیرقابل فهم در ساختار پستگرس ارائه می‌دهد.

پلتفرم PGSimCity یک دید متفاوت و جذاب از چگونگی عملکرد داخلی این سیستم مدیریت پایگاه داده است، که به توسعه‌دهندگان و علاقه‌مندان امکان می‌دهد عمق بیشتری در فهم ساختار و فرآیندهای آن داشته باشند. این پروژه با بهره‌گیری از فناوری‌های مدرن، تصویری زنده و فعال از معماری پستگرس به نمایش می‌گذارد، که هر کاربر می‌تواند در آن غرق شود و به کشف جزئیات مختلف بپردازد. اگر قصد دارید تصور بهتری از نحوه کار پستگرس کسب کنید، حتماً این تجربه را از دست ندهید.

برای هر کسی که به دنبال درک عمیق‌تری از اصول پایگاه داده‌های مدرن است، PGSimCity یک فرصت استثنایی محسوب می‌شود که ابزارها و امکانات جدیدی برای آموزش و آزمایش فراهم می‌کند، ضمن اینکه جذابیت بصری و تعاملی آن، به یادگیری مفاهیم سخت کمک می‌کند و آن را دلنشین‌تر می‌سازد.

#پستگرس #مدیریت_پایگاه_داده #تکنولوژی #آموزش

🟣لینک مقاله:
https://nikolays.github.io/PGSimCity/


👑 @Database_Academy
🔵 عنوان مقاله
Three New Things in Postgres 19

🟢 خلاصه مقاله:
در جدیدترین نسخه، سه ویژگی مهم در پستگرس ۱۹ معرفی شده است که می‌تواند تاثیر قابل توجهی بر عملکرد و کارایی پایگاه‌های داده داشته باشد. این تغییرات نشان‌دهنده تمرکز توسعه‌دهندگان بر بهبود بهبود سرعت، کارایی و امکانات مدیریت داده‌ها است.

یکی از این ویژگی‌ها، استفاده از فناوری REPACK است که به منظور بهبود ساختار داخلی پایگاه‌های داده و افزایش بهره‌وری در عملیات‌های مربوط به نگهداری داده‌ها طراحی شده است. این ابزار امکان بازسازی سریع‌تر و بهینه‌تر ساختار داده‌ها را فراهم می‌کند، بدون آن که نیاز به توقف کامل سیستم باشد. این ویژگی به مدیران پایگاه داده کمک می‌کند تا عملیات نگهداری را با کمترین اختلال انجام دهند و در نتیجه، زمان خرابی کاهش یافته و کارایی سیستم ارتقا می‌یابد.

همچنین، در نسخه جدید، حالت JIT (کد ترجمه واقعی در زمان اجرا) به صورت پیش‌فرض خاموش است. این تصمیم به منظور جلوگیری از مصرف بیش از حد منابع در سیستم‌های خاص اتخاذ شده است، در حالی که توسعه‌دهندگان امکان فعال‌سازی آن را در صورت نیاز دارند. این رویکرد به مدیران و توسعه‌دهندگان امکان می‌دهد تا بر اساس نیازهای خاص پروژه خود، بهترین تنظیمات را انتخاب کنند و از هرگونه مشکلی که ممکن است در اثر فعال‌سازی خودکار JIT پیش بیاید، جلوگیری نمایند.

در کنار این موارد، بهبودهای قابل توجهی در بخش برنامه‌ریزی و اجرای پرس‌وجو‌ها صورت گرفته است. بهینه‌سازی در سیستم برنامه‌ریز (query planner) باعث می‌شود اجرای کوئری‌ها سریع‌تر، دقیق‌تر و بهینه‌تر انجام شود. این بهبودها به ویژه در مواجهه با کوئری‌های پیچیده و داده‌های حجیم تاثیر قابل توجهی دارند و به توسعه‌دهندگان این امکان را می‌دهند تا داده‌های بزرگ را با کارایی بیشتر مدیریت کنند.

در مجموع، این امکانات جدید در پستگرس ۱۹ نشان می‌دهد که تیم توسعه‌دهنده همچنان به بهبود مداوم و ارتقای قابلیت‌های این سیستم قدرتمند ادامه می‌دهد و این نسخه جدید، گام مهمی در جهت بهبود عملکرد و سهولت مدیریت پایگاه‌های داده است.

#پستگرس #پایگاه_داده #توسعه‌دهی #بهبود_عملکرد

🟣لینک مقاله:
https://planetscale.com/blog/whats-new-in-postgres-19


👑 @Database_Academy
Forwarded from Persian Post
نه تنها بنزین گران شد بلکه سهمیه نیز کمتر شد.
https://xn--r1a.website/+Bp8JeTpQoiUwMjVk
🕊1
Forwarded from Software Engineer
امکان تغییر آدرس ایمیل 📧

اگر این قابلیت برای حسابت فعال شده باشد، می‌توانی آدرس @gmail.com خودت را بدون ساختن حساب جدید تغییر بدهی. این قابلیت به‌صورت تدریجی برای کاربران منتشر شده و ممکن است هنوز برای همه فعال نباشد. (Google Help)

روش اول (کامپیوتر - پیشنهاد گوگل) 💻🔍

وارد حساب گوگلت شو:
Google Account
از منوی سمت چپ روی Personal info (اطلاعات شخصی) کلیک کن.
بخش Contact info را باز کن.
روی Email کلیک کن.
گزینه Google Account email را انتخاب کن.
اگر گزینه Change Google Account email یا تغییر آدرس ایمیل گوگل را می‌بینی:
روی آن کلیک کن.
نام جدید دلخواهت را وارد کن.
اگر آزاد باشد، ادامه بده.
کد تأیید یا مراحل امنیتی را انجام بده. 🔒

بعد از تأیید:
ایمیل جدید، آدرس اصلی حسابت می‌شود.
ایمیل قبلی به‌عنوان Alternate Email (آدرس جایگزین) باقی می‌ماند.
ایمیل‌هایی که به آدرس قدیمی ارسال شوند نیز همچنان به همان Inbox می‌رسند. (Google Help)

اگر این گزینه را نمی‌بینی 🚫
اگر در مرحله ۶ گزینه Change Google Account email وجود ندارد، یعنی هنوز این قابلیت برای حسابت فعال نشده است. گوگل آن را به‌صورت مرحله‌ای منتشر می‌کند و ممکن است چند هفته یا چند ماه دیگر برای حسابت فعال شود. (Google Help)

قبل از تغییر این نکات را بدان 📝👀
همه ایمیل‌ها، فایل‌های Drive، عکس‌های Photos و اطلاعات حسابت حفظ می‌شوند. 💾
می‌توانی با ایمیل قدیمی و جدید وارد حسابت شوی. 🔑
برخی تنظیمات دستگاه یا برنامه‌ها ممکن است نیاز به ورود مجدد داشته باشند.
فقط هر ۱۲ ماه یک‌بار می‌توانی آدرس را تغییر دهی و تعداد تغییرها نیز محدود است. (Google Help)
🔵 عنوان مقاله
Rainfrog 0.4: A Database Management TUI for Postgres

🟢 خلاصه مقاله:
در دنیای مدیریت پایگاه‌های داده، ابزارهای کارآمد نقش بسزایی در بهبود کارایی و سهولت فرآیندهای کاری ایفا می‌کنند. یکی از این ابزارها، Rainfrog 0.4 است که یک واسط کاربری مبتنی بر ترمینال برای مدیریت پایگاه‌های داده PostgreSQL محسوب می‌شود. این برنامه طراحی شده است تا جایگزینی بهتر و منسجم‌تر برای ابزارهای سنتی مانند psql باشد، با ویژگی‌هایی که کار با پایگاه داده‌ها را ساده‌تر و لذت‌بخش‌تر می‌کند.

Rainfrog در مقایسه با psql، یک ساختار منظم‌تر و کاربرپسندتر دارد، و به کاربران امکان می‌دهد تا با ناوبری به سبک ویم در میان کوئری‌ها، تاریخچه، اسکیم‌ها و دیگر بخش‌های پایگاه داده حرکت کنند. این ویژگی‌ها، قابلیت‌های استفاده را افزایش داده و فرآیند مدیریت داده‌ها را سریع‌تر و کاربردی‌تر می‌سازد.

در واقع، این نرم‌افزار با تمرکز بر سهولت کار و امکانات پیشرفته، تجربه کاربر را به سطح جدیدی می‌برد. طراحی منسجم و قابلیت‌های جابجایی سریع بین بخش‌ها، آن را برای توسعه‌دهندگان و مدیران پایگاه داده بسیار مناسب می‌سازد. در نسخه اولیه، امکانات پایه‌ای ارائه شده است که می‌توان در آینده انتظار افزودن ویژگی‌های بیشتری را داشت، و این مسیر نویدبخش آینده‌ای بهتر در مدیریت پایگاه داده‌های PostgreSQL است.

در نهایت، Rainfrog 0.4 با ترکیب کارآمدی و سادگی، ابزاری ارزشمند برای کسانی است که به دنبال یک رابط ترمینال قدرتمند و کاربرپسند برای مدیریت داده‌های خود هستند.

#مدیریت_پایگاه_داده #PostgreSQL #ابزارهای_ترمینال #Rainfrog

🟣لینک مقاله:
https://github.com/achristmascarl/rainfrog


👑 @Database_Academy
فراتر از یک دیتابیس تراکنشی: بررسی قابلیت‌های HTAP، جستجوی برداری و اتصال مستقیم به Iceberg در AliSQL
سال‌هاست که سیستم‌های داده را بر اساس یک قانون نانوشته می‌سازیم: جداسازی دیتابیس‌های عملیاتی (OLTP) از موتورهای تحلیلی (OLAP).
همگام نگه‌داشتن این دو محیط، به معنای درگیری با پایپ‌لاین‌های پیچیده ETL، کانکتورهای شکننده CDC و بحث‌های همیشگی «تازگی داده‌ها» (Data Freshness) است. این در واقع هزینه‌ای بود که برای پایداری سیستم می‌پرداختیم؛ اما چه می‌شد اگر می‌توانستیم با چند تصمیم معماری هوشمندانه، این مرزها را پاک کنیم؟ آن هم بدون تغییرات گسترده در کدها و با حفظ پایداری همیشگی سیستم؟
این دقیقاً همان تغییری است که تیم دیتابیس ابری علی‌بابا با معرفی نسخه متن‌باز AliSQL 8.0.44-2 (انشعاب بهینه‌شده MySQL نسخه ۸) ایجاد کرده است. فرمولی برنده از ترکیب پایداری MySQL، سرعت خیره‌کننده DuckDB و قابلیت‌های پیشرفته هوش مصنوعی.

این یک ایده آزمایشگاهی نیست؛ این معماری طی یک دهه برای زنده ماندن در هرج‌ومرج ترافیکی رویداد جمعه سیاه آب‌دیده شده و امروز روی بیش از ۱۰۰۰ نود پروداکشن در حال اجراست. نتیجه؟ تا ۷۰٪ پرفورمنس بهتر و ۹۵.۲٪ کاهش زمان ریکاوری (Crash Recovery) نسبت به MySQL کامیونیتی.

اگر درگیر طراحی سیستم‌های داده‌محور هستید و دنبال یک پلتفرم جامع و مقیاس‌پذیر هستید و یا به دنبال بهبود MySQL خود هستید، این ۴ تغییر زیربنایی در AliSQL قطعا توجه شما را جلب خواهد کرد:
۱. موتور تحلیلی بومی DuckDB (یکپارچگی HTAP)
دیتابیس AliSQL حالا DuckDB را به عنوان یک Storage Engine در کنار InnoDB به رسمیت می‌شناسد. این یعنی کوئری‌های تحلیلی ستونی تا ۲۰۰ برابر سریع‌تر اجرا می‌شوند. نکته جذاب؟ نیازی به درایور جدید یا تغییر Connection String نیست؛ برنامه‌های شما همچنان با پروتکل استاندارد MySQL ارتباط برقرار می‌کنند.

۲. جستجوی برداری بومی برای عصر AI
ورک‌لودهای مدرن نیازمند جستجوی معنایی هستند. این نسخه از نوع داده VECTOR (تا ۱۶,۳۸۳ بعد) همراه با ایندکس‌های HNSW پشتیبانی می‌کند. با این قابلیت، می‌توانید الگوهای RAG، موتورهای پیشنهادگر و جستجوی معنایی را مستقیماً داخل سیستم OLTP خود اجرا کنید.

۳. نوشتن مستقیم روی Apache Iceberg (پلی به سوی Lakehouse)
اینجا همان نقطه عطف ماجراست! از طریق پلاگین DuckDB Iceberg، دیتابیس دیتای تراکنشی را مستقیماً روی جداول Iceberg (درون S3) می‌نویسد.
نتیجه؟ حذف کامل پایپ‌لاین‌های CDC. دیتا به محض Commit شدن، توسط موتورهایی مثل Spark، Flink و Trino قابل کوئری گرفتن است. دیتابیس عملیاتی شما دیگر فقط «منبع بالادستی» دیتا لیک نیست، بلکه تبدیل به بخشی از خود دیتا لیک شده است.

۴. بهینه‌سازی‌های عمیق و Native Flashback
امکان کوئری زدن به دیتای گذشته با AS OF TIMESTAMP و بهینه‌سازی‌های سطح پایین Binlog که باعث کاهش شدید I/O اضافی و تاخیر در Commit تراکنش‌های بزرگ شده است.

تصویر بزرگ‌تر: عصر Lakebase
هرچند مفهوم “Lakebase” اخیراً توسط بازیگرانی مثل Databricks مطرح شده، اما معماری‌ای که AliSQL فراهم کرده، دقیقاً به همان الگوی یکپارچه OLTP + Lakehouse می‌رسد. این نشان‌دهنده یک همگرایی جدی در صنعت است؛ صنعتی که قاطعانه به سمت پاک کردن مرز بین تراکنش‌ها و تحلیل‌ها حرکت می‌کند.
این بازطراحی اساسی نشان می‌دهد که معماری‌های HTAP و همگرایی OLTP و Lakehouseها جدی‌تر از همیشه در حال توسعه هستند.

https://github.com/alibaba/AliSQL

@ | <Mojtaba Banaie/>
🔵 عنوان مقاله
the part of Postgres they hate the most

🟢 خلاصه مقاله:
در میان سیستم‌های مدیریت پایگاه داده، بخش‌هایی از پوسگرس که کاربران بیشترین نارضایتی را دارند، معمولاً مربوط به عملکرد و به‌کارگیری منابع است. این موضوع با نتایج بنچمارک‌ها و آزمایش‌های مختلف تایید می‌شود و کسانی که تجربه کار با این سیستم‌ها را دارند، به خوبی می‌دانند که چقدر این قسمت‌ها ممکن است باعث کندی و تأخیر در اجرای درخواست‌ها شوند. نارضایتی‌ها معمولاً حول همین بخش‌ها می‌چرخد، چرا که بسیاری معتقدند بهبود در این قسمت‌ها می‌تواند تاثیر قابل توجهی بر کارایی نهایی سیستم داشته باشد.

در حالی که بسیاری بر روی این نقاط ضعف تمرکز می‌کنند، سوال مهم‌تر این است: در عوض، سایر سیستم‌های بانک اطلاعاتی نظیر اوراکل، ایننو دی‌بی، اس‌کیوال سرور، مونگو دی‌بی و دی‌تی‌دی چه راهکارهایی در پیش گرفته‌اند؟ و این راهکارها چه هزینه‌هایی را در بر دارند؟ هر یک از این پلتفرم‌ها راهکارهای متفاوتی برای مقابله با مشکلات عملکرد ارائه می‌دهند. برای نمونه، اوراکل و اس‌کیوال سرور امکانات بهینه‌سازی پیشرفته، سیستم‌های کشینگ خاص و معماری‌های توزیع شده را به کار می‌گیرند که البته با هزینه‌های مالی و پیچیدگی فنی بالایی همراه است.

به طور کلی، هر فناوری، چه در قالب open-source مانند پوسگرس و چه در قالب نرم‌افزارهای اختصاصی و تجاری، به نوعی باید تعادل بین کارایی، هزینه و پیچیدگی را برقرار کند. در نتیجه، انتخاب بهترین راهکار بستگی به نیازهای خاص سازمان، منابع مالی و قابلیت‌های فنی آن دارد. در نهایت، درک دقیق از هزینه‌ها و مزایای هر گزینه می‌تواند تصمیم‌گیری هوشمندانه‌تری را برای تیم‌های توسعه و مدیران سیستم رقم بزند، تا بتوانند بهترین گزینه را برای رفع مشکلات مقیاس‌پذیری و عملکردی انتخاب کنند.

#پایگاه_داده #بازنگری_عملکرد #سیستم‌های_مدیریت_دیتا #پیشرفت‌های_ فناوری

🟣لینک مقاله:
https://www.cs.cmu.edu/~pavlo/blog/2023/04/the-part-of-postgresql-we-hate-the-most.html


👑 @Database_Academy
Forwarded from Gopher Academy
اصطلاح one-shot ramp-up
بسته به زمینه (نرم‌افزار، DevOps، AI یا سخت‌افزار) کمی متفاوت است، اما مفهوم کلی آن این است:
راه‌اندازی یا افزایش ظرفیت در یک مرحله و به‌صورت یکباره، بدون افزایش تدریجی.
معنی واژه‌ها
One-shot =
یک‌باره، در یک مرحله، بدون تکرار
Ramp-up =
افزایش تدریجی ظرفیت، سرعت، بار یا عملکرد تا رسیدن به سطح موردنظر
وقتی این دو کنار هم قرار می‌گیرند، منظور این است که به‌جای افزایش تدریجی، سیستم مستقیماً به ظرفیت نهایی یا موردنظر می‌رسد.

مثال در توسعه نرم‌افزار
فرض کنید یک سرویس باید ۱۰۰۰ Worker اجرا کند.
درواقعه Ramp-up یعنی تدریجی

ثانیه 1 → 100 Worker
ثانیه 2 → 200 Worker
ثانیه 3 → 300 Worker
ثانیه 10 → 1000 Worker

One-shot ramp-up

ثانیه 1 → 1000 Worker
همه Workerها یک‌باره ایجاد می‌شوند.

مثال در تست بار (Load Testing)
در ابزارهایی مانند k6 یا JMeter:
Ramp-up
یعنی تعداد کاربران مجازی به‌تدریج افزایش پیدا کند.

One-shot ramp-up
یعنی تمام کاربران مجازی هم‌زمان شروع به ارسال درخواست کنند.
مثلاً:

1000 Virtual Users
Normal Ramp-up:
0 → 1000 در مدت 5 دقیقه
One-shot Ramp-up:
0 → 1000 در کمتر از یک ثانیه

مثال در Kubernetes
فرض کنید Deployment شما باید ۵۰ Pod داشته باشد.

اRamp-up معمولی:
ا Podها به‌تدریج ساخته می‌شوند.

One-shot ramp-up: Scheduler
تلاش می‌کند هر ۵۰ Pod را تقریباً هم‌زمان ایجاد کند (البته با توجه به محدودیت‌های کلاستر).
مزایا
رسیدن سریع به ظرفیت کامل
مناسب برای تست فشار (Stress Testing)
کاهش زمان راه‌اندازی

معایب
افزایش ناگهانی مصرف CPU و RAM
احتمال ایجاد Thundering Herd Problem (هجوم هم‌زمان تعداد زیادی درخواست یا پردازش)
افزایش احتمال Timeout یا فشار روی دیتابیس و سرویس‌های وابسته

جمع‌بندی
این One-shot ramp-up یعنی سیستم، کاربران، Workerها یا منابع در یک مرحله و تقریباً هم‌زمان به ظرفیت هدف برسند، نه اینکه به‌صورت تدریجی افزایش پیدا کنند. این اصطلاح معمولاً در زمینه‌های Load Testing، سیستم‌های توزیع‌شده، Kubernetes، سرویس‌های ابری و پردازش موازی استفاده می‌شود.
یکی از خبرهای جذاب این روزا منتشر شدن PGSimCity بود؛ پروژه‌ای که مفاهیم داخلی PostgreSQL رو به یک شهر سه‌بعدی تعاملی تبدیل کرده تا یادگیری اجزا داخلی شهودی‌تر و ساده‌تر بشه.

اگر دوست دارین بدونین Postgresql دقیقا چطور کار میکنه از دستش ندین.

https://nikolays.github.io/PGSimCity/

@ | <Fateme/>
1