Database Labdon
742 subscribers
31 photos
1 file
575 links
🕸 Database Academy

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

ادمین:
@mrbardia72
Download Telegram
🔵 عنوان مقاله
Google Summer of Code

🟢 خلاصه مقاله:
** این مطلب به تجربه‌ی Ahmed Gouda در دوره‌ی Google Summer of Code می‌پردازد؛ جایی که او دستاوردهای خود را در پروژه‌ی pgwatch — ابزار متن‌باز پایش PostgreSQL — مرور می‌کند. هدف اصلی او بهبود کارایی، سهولت پیکربندی، وضوح داشبوردها و تقویت مستندات بود. در تعامل نزدیک با راهبران پروژه و با بازبینی‌های مرحله‌ای، تغییراتی ارائه کرد که راه‌اندازی و استفاده‌ی روزمره را ساده‌تر، پایداری را بیشتر، و تجربه‌ی کاربر را عملی‌تر کرد؛ همراه با تست‌ها و مستندات برای پایداری بلندمدت. او همچنین بر مهارت‌های کلیدی متن‌باز—ارتباط مؤثر، بازخوردپذیری و نگهداشت—تأکید می‌کند و دیگران را دعوت می‌کند نسخه‌های جدید را بیازمایند، بازخورد بدهند و در توسعه‌ی آینده‌ی pgwatch مشارکت کنند.

#GSoC #OpenSource #pgwatch #PostgreSQL #Monitoring #DevOps #Mentorship #SoftwareEngineering

🟣لینک مقاله:
https://postgresweekly.com/link/174113/web


👑 @Database_Academy
1🥰1
👋 درود به همه دوستان عزیز

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

🤝 اینطوری هم به بقیه کمک می‌کنید و هم محتوای ارزشمندتون بیشتر دیده میشه.
🔵 عنوان مقاله
The Evolution of Logical Replication in Postgres: A Historical Overview

🟢 خلاصه مقاله:
این مرور تاریخی نشان می‌دهد Logical Replication در Postgres طی حدود ۲۰ سال از راهکارهای مبتنی بر trigger مانند Slony، Bucardo و Londiste به دوران logical decoding از WAL و سپس ابزارهای بالغ‌تری مثل pglogical و در نهایت قابلیت داخلی publication/subscription در Postgres 10 رسیده است. راهکارهای اولیه گرچه مسیر را هموار کردند، با سربار، پیچیدگی عملیاتی و چالش‌های DDL و تعارض‌ها درگیر بودند. افزوده‌شدن logical decoding و سپس پیاده‌سازی داخلی، کارایی، فیلترگذاری و سهولت راه‌اندازی را بهبود داد، هرچند مسائلی مانند تکرار DDL و multi‑master همچنان حساس و وابسته به ابزارهای جانبی و شیوه‌های عملیاتی دقیق‌اند. به دلیل حضور طولانی Petr در پروژه‌های مرتبط و ارائه او در PostgresOpen 2016، این روایت معتبر و مبتنی بر تجربه عملی است.
#Postgres #PostgreSQL #LogicalReplication #WAL #pglogical #DatabaseReplication #OpenSourceDatabases

🟣لینک مقاله:
https://postgresweekly.com/link/174458/web


👑 @Database_Academy
🔵 عنوان مقاله
BigQuery Under the Hood: Scalability, Reliability, and Usability Enhancements for Gen AI Inference (7 minute read)

🟢 خلاصه مقاله:
BigQuery با تمرکز بر مقیاس‌پذیری، قابلیت اتکا و سهولت استفاده، اجرای Gen AI را در خود داده‌انبار پیش می‌برد. هسته بهبودها، استفاده از dynamic token‑based batching است که به‌جای شمارش ردیف‌ها، به طول توکنی ورودی‌ها توجه می‌کند و تا حد امکان ردیف‌های بیشتری را در یک درخواست جا می‌دهد. نتیجه، جهش چشمگیر کارایی است: بیش از 100 برابر برای first‑party LLMs و حدود 30 برابر برای embeddings.

از نظر قابلیت اتکا، سیستم با partial failure modes و adaptive retries تضمین می‌کند که خطای یک ردیف کل پرس‌وجو را مختل نکند؛ ردیف‌های سالم ادامه می‌یابند و خطاها با تکرارهای هوشمند و مدیریت خطا مهار می‌شوند. حاصل، بیش از 99.99٪ تکمیل پرس‌وجو بدون شکست ردیفی و بیش از 99.99٪ موفقیت در سطح ردیف است.

این توانمندی‌ها با تجربه کاربری ساده ارائه می‌شوند: انتخاب خودکار اندازه بچ‌ها، تعادل میان تاخیر و توان عملیاتی، و ارایه بازخورد شفاف درباره خطاها و بازیابی. جمع‌بندی اینکه کاربران می‌توانند استنتاج LLM و embeddings را مستقیماً در BigQuery با سرعت بالا و پایداری قوی اجرا کنند، بدون نیاز به تغییرات پیچیده در کد یا عملیات.

#BigQuery #GenAI #LLMInference #Scalability #Reliability #Embeddings #Batching #DataWarehouse

🟣لینک مقاله:
https://cloud.google.com/blog/products/data-analytics/bigquery-enhancements-to-boost-gen-ai-inference/?utm_source=tldrdata


👑 @Database_Academy
🔵 عنوان مقاله
Postgres 18 Release Candidate 1 has landed

🟢 خلاصه مقاله:
نسخه Release Candidate 1 از Postgres 18 منتشر شده و نشان می‌دهد انتشار نهایی نزدیک است. جامعه کاربری از توسعه‌دهندگان و مدیران سیستم دعوت می‌کند RC1 را روی بارهای واقعی آزمایش کنند و بازخورد بدهند تا مشکلات احتمالی پیش از انتشار نهایی رفع شود. هم‌زمان، Ahsan Hadi مروری بر نکات برجسته Postgres 18 ارائه کرده است؛ از بهبودهای کارایی تا ارتقای تجربه توسعه‌دهنده و مدیریت و امنیت. اکنون بهترین زمان برای تست و گزارش مسائل از مسیرهای همیشگی جامعه است.

#Postgres #PostgreSQL #Postgres18 #RC1 #Database #OpenSource #ReleaseNotes

🟣لینک مقاله:
https://postgresweekly.com/link/173828/web


👑 @Database_Academy
🔵 عنوان مقاله
the original 1986 paper

🟢 خلاصه مقاله:
**این متن به مقاله‌ی سال ۱۹۸۶ می‌پردازد که اهداف طراحی Postgres را تعریف کرد و نشان می‌دهد چگونه همان دیدگاه، امروز در PostgreSQL به‌خوبی محقق شده است. تمرکز مقاله بر قابلیت توسعه‌پذیری، پشتیبانی از داده‌های پیچیده، تضمین‌های تراکنشی و معماری پایدار است و نتیجه می‌گیرد که تصمیم‌های اولیه بسیار آینده‌نگرانه بوده‌اند؛ به‌طوری‌که «سازندگان PostgreSQL واقعاً عالی از پس آن برآمده‌اند.»

#Postgres #PostgreSQL #DatabaseSystems #DBMS #SystemsResearch #DataManagement #SoftwareArchitecture

🟣لینک مقاله:
https://postgresweekly.com/link/174750/web


👑 @Database_Academy
🔵 عنوان مقاله
How Anthropic Built a Multi-Agent Research System (16 minute read)

🟢 خلاصه مقاله:
**
Anthropic یک سیستم پژوهشی چندعاملی ساخته که در پرسش‌های پیچیده بیش از ۹۰٪ بهتر از روش‌های تک‌عامل عمل می‌کند. این برتری از اکتشاف پویا، پرامپت‌های دقیق و نقش‌محور، و لایه‌های ارزیابیِ سخت‌گیرانه به‌دست می‌آید. در معماری سیستم، یک عامل راهبر چند زیرعاملِ موازی را هدایت می‌کند و یک راستی‌سنجِ ارجاعات، ادعاها را با منابع تطبیق می‌دهد تا خطاها و ادعاهای بی‌پشتوانه کاهش یابد. در مقابل، به‌خاطر اجزای متعدد و مراحل تکراریِ راستی‌آزمایی، مصرف توکن و هزینه‌ها حدود ۱۵ برابر می‌شود و پیچیدگی تولیدی و تأخیر نیز بالا می‌رود؛ بنابراین این رویکرد برای کارهای پژوهشی حساس و دشوار که دقت و قابلیت استناد مهم‌تر از سرعت و هزینه است مناسب‌تر است.

#MultiAgentSystems #Anthropic #AIResearch #LLM #PromptEngineering #Evaluation #Scalability #TokenCosts

🟣لینک مقاله:
https://blog.bytebytego.com/p/how-anthropic-built-a-multi-agent?utm_source=tldrdata


👑 @Database_Academy
🔵 عنوان مقاله
Postgres Partitioning Best Practices: Sofia's Story

🟢 خلاصه مقاله:
سofia در یک پلتفرم تحلیلی شلوغ، با تبدیل جداول بزرگ Postgres به پارتیشن‌های زمان‌محور و همسو با الگوهای فیلترگذاری، تاخیر کوئری‌ها را به‌طور محسوس کاهش داد. او با رعایت اصولی مثل انتخاب کلید پارتیشن درست، اندازه‌گذاری معقول پارتیشن‌ها، خودکارسازی چرخه ایجاد/ضمیمه/حذف، استفاده سنجیده از ایندکس‌های محلی و جمع‌آوری آمار در سطح هر پارتیشن، باعث شد Partition Pruning و برنامه‌ریز Postgres بهتر عمل کنند. نگهداشت هم ساده‌تر شد: حذف داده قدیمی با Drop پارتیشن، Vacuum/Analyze قابل پیش‌بینی، و بهره‌گیری از Partition-wise Join/Aggregate.

برای بهبود نوشتن، او با الهام از نکات Karen Jex و Warda Bibi، نقش حیاتی WAL را درک کرد و آن را روی یک دیسک مجزا و پرتحمل (مثلا NVMe) قرار داد تا رقابت I/O با داده اصلی کم شود. سپس تنظیمات WAL را هوشمندانه تیون کرد (مانند wal_level، max_wal_size، wal_buffers، و زمان‌بندی Checkpoint) و با پایش pg_stat_wal و pg_stat_bgwriter رفتار سیستم را زیر نظر گرفت. ترکیب پارتیشن‌بندی درست و جداسازی WAL روی دیسک مستقل، کارایی و پایداری را همزمان بالا برد، بدون پیچیده کردن معماری.

#Postgres
#WAL
#Partitioning
#DatabasePerformance
#Scaling
#Storage
#DevOps
#BestPractices

🟣لینک مقاله:
https://postgresweekly.com/link/174761/web


👑 @Database_Academy
🔵 عنوان مقاله
Agentic AI, Agent Memory, & Context Engineering (7 minute read)

🟢 خلاصه مقاله:
این مقاله توضیح می‌دهد که چرا الگوهای رایج مبتنی بر vector store و RAG در مقیاس بزرگ دچار افت کیفیت می‌شوند: با رشد داده‌ها و افزایش محتوای تولیدشده توسط خود عامل‌ها، بازیابی ناپایدار می‌شود و «دادهٔ زائد» انباشته می‌گردد. راه‌حل‌های پیشرو با ترکیب vector و graph database و افزودن یک حافظهٔ تکاملی مبتنی بر بازخورد، امکان یادگیری تدریجی عامل‌ها از تعاملات را فراهم می‌کنند و مشکل context windowهای ایستا و شکننده را برطرف می‌سازند. در این رویکرد یک پشتهٔ لایه‌ای شکل می‌گیرد: ingest تخصصی و غنی‌سازی متادیتا، نمایش ترکیبی embedding+گراف، حافظهٔ چندلایه (کوتاه‌مدت، اپیزودیک، بلندمدت)، بازیابی هیبریدی با مسیریابی وظیفه‌محور، و لایهٔ بازخورد برای ترفیع دانش مفید و هرس محتوای کهنه یا تکراری. نتیجه، زمینه‌های فشرده و مبتنی بر منبع برای هر وظیفه است که دقت، قابلیت کنترل، و ایمنی را بالا می‌برد و هزینهٔ توکن را کاهش می‌دهد. جمع‌بندی: گذار از RAG صرف به «Context Engineering» به‌عنوان یک فرایند محصول‌محور، کیفیت بازیابی را پایدار می‌کند و با معیارهایی مانند grounded-answer rate، hit rate، تازگی، و هزینهٔ هر کار موفق، بهبود مستمر عامل‌ها را قابل‌اندازه‌گیری می‌سازد.

#AgenticAI #RAG #ContextEngineering #VectorDatabases #GraphDatabases #AIAgents #Memory #Retrieval

🟣لینک مقاله:
https://thebigdataguy.substack.com/p/agentic-ai-agent-memory-and-context?utm_source=tldrdata


👑 @Database_Academy
Forwarded from Bardia & Erfan
اگه با دلار ۱۰۰۰ تومنی زندگیتو جمع کردی
با دلار ۱۰۰ تومنی نصیحت نکن.
1
🔵 عنوان مقاله
Writing Nothing But Docs for a Week

🟢 خلاصه مقاله:
Lev Kokotov، سازنده PgDog (ابزار connection pooler و sharder برای Postgres)، یک هفته کامل را صرف نوشتن و بهبود مستندات کرد تا شروع کار، پیکربندی و اجرای تولیدی برای کاربران ساده‌تر و شفاف‌تر شود. خروجی این تمرکز شامل راهنمای شروع سریع، آموزش‌های گام‌به‌گام، دستورالعمل‌های عملی برای مقیاس‌پذیری و رفع اشکال، و توضیح روشن معماری و محدودیت‌هاست. او تأکید می‌کند که «مستندسازی» خود نوعی بازبینی طراحی است: هنگام نوشتن، ابهام‌ها و نقص‌ها آشکار می‌شوند و همین باعث بهبود نام‌گذاری‌ها، پیش‌فرض‌ها و تجربه تنظیمات شد. این رویکرد، هم پذیرش PgDog را سریع‌تر می‌کند و هم مشارکت جامعه را تسهیل می‌کند، چون مستندات زنده‌اند و به بازخورد و اصلاحات کاربران تکیه دارند.

#Postgres #PgDog #Documentation #OpenSource #Sharding #ConnectionPooling #DeveloperExperience #Databases

🟣لینک مقاله:
https://postgresweekly.com/link/174759/web


👑 @Database_Academy
🤝2
🔵 عنوان مقاله
pgexporter 0.7: Prometheus Exporter for Postgres

🟢 خلاصه مقاله:
pgexporter 0.7 یک Prometheus Exporter برای Postgres است که با بهبودهای مهم در متریک‌های هسته و اضافه‌شدن متریک‌های جدید برای autovacuum منتشر شده است. این نسخه همچنین از افزونه‌های PostGIS، pg_stat_statements، pgvector و Timescale پشتیبانی می‌کند تا مشاهده‌پذیری دقیق‌تری بر بارهای کاری مکانی، کارایی پرس‌وجوها، جست‌وجوی برداری و سناریوهای سری‌زمانی فراهم شود. این به‌روزرسانی‌ها رصدپذیری، عیب‌یابی و برنامه‌ریزی ظرفیت را در کلاسترهای Postgres ساده‌تر می‌کند. برای جزئیات بیشتر به صفحهٔ اصلی پروژه مراجعه کنید.

#pgexporter #Postgres #Prometheus #Monitoring #PostGIS #pg_stat_statements #pgvector #Timescale

🟣لینک مقاله:
https://postgresweekly.com/link/174767/web


👑 @Database_Academy
Forwarded from VIP
🚀 به دنیای توسعه و تکنولوژی خوش اومدی!

اگر به موضوعات زیر علاقه‌مندی:

🔹 Golang
🔹 Linux & DevOps
🔹 Software Engineering
🔹 AI & Machine Learning
🔹 فرصت‌های شغلی ریموت (خارجی و داخلی)

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

📌 از این لینک همه چنل‌هامونو یه‌جا ببین و جوین شو:

👉 https://t.iss.one/addlist/AJ7rh2IzIh02NTI0
1
🔵 عنوان مقاله
the top programming languages in 2025

🟢 خلاصه مقاله:
در ۲۰۲۵، محبوب‌ترین زبان‌ها حول سه جریان شکل می‌گیرند: وب و فول‌استک با JavaScript/TypeScript، داده و AI با Python، و سیستم‌ها و زیرساخت با Go، Rust و C/C++. در بسیاری از فهرست‌ها SQL به‌دلیل نقش محوری در دسترسی به داده و تحلیل‌ها در رتبه چهارم قرار می‌گیرد و میان پایگاه‌های داده سنتی و انبارهای ابری (مانند BigQuery، Snowflake و Redshift) پلی مشترک است. در بک‌اند سازمانی Java و اکوسیستم JVM همچنان پرتقاضا هستند و Kotlin در توسعه مدرن JVM رشد می‌کند؛ در موبایل، Kotlin و Swift پیشرو مانده‌اند و راهکارهای کراس‌پلتفرم مانند Flutter و React Native جایگاه خود را حفظ کرده‌اند. نتیجه عملی: برای شروع، Python یا JavaScript به‌همراه SQL انتخابی مطمئن است؛ برای سیستم‌های کارایی‌محور، Go یا Rust مناسب‌ترند.

#ProgrammingLanguages #2025Trends #SQL #Python #JavaScript #TypeScript #Rust #Go

🟣لینک مقاله:
https://postgresweekly.com/link/174752/web


👑 @Database_Academy
This media is not supported in your browser
VIEW IN TELEGRAM
🔵 عنوان مقاله
'the PostgreSQL creators totally nailed it.'

🟢 خلاصه مقاله:
در آخرین شماره Golang Weekly، مقاله‌ای تأکید می‌کند که سازندگان PostgreSQL «کاملاً درست عمل کردند». نویسنده توضیح می‌دهد چرا این پایگاه‌داده با ترکیب استانداردهای شفاف SQL، قابلیت اتکا، کارایی بالا و امکاناتی مانند JSONB و ایندکس‌های قدرتمند، برای طیف وسیعی از نیازها مناسب است. برای توسعه‌دهندگان Go، هم‌نشینی PostgreSQL با ابزارهایی مثل pgx و GORM، سادگی در ادغام، و رفتار قابل پیش‌بینی در محیط تولید، ارزش ویژه‌ای دارد. جامعه فعال، مستندسازی خوب و سازگاری عقب‌رو نیز استفاده بلندمدت را مطمئن می‌کند. جمع‌بندی مقاله این است که برای بسیاری از تیم‌های Go، PostgreSQL یک انتخاب پیش‌فرض قوی و عملیاتی است و سازندگانش در رسیدن به این تعادل «حرفه‌ای» عمل کرده‌اند.

#PostgreSQL #Golang #Go #Databases #GolangWeekly #OpenSource #Backend #SoftwareEngineering

🟣لینک مقاله:
https://postgresweekly.com/link/174751/web


👑 @Database_Academy
3
🔵 عنوان مقاله
Getting Excited About Postgres 18

🟢 خلاصه مقاله:
Postgres 18 تا یک هفته دیگر نهایی می‌شود و مهم‌ترین ویژگی تازه‌اش asynchronous I/O است؛ قابلیتی که امکان انجام عملیات خواندن/نوشتن بدون مسدود کردن مسیر اجرای اصلی را می‌دهد و در بسیاری از سناریوها باعث افزایش توان عملیاتی و کاهش تأخیر می‌شود. این تغییر برای بارهای کاری پرتراکنش، سیستم‌های ترکیبی OLTP/تحلیلی و پردازش‌های سنگین I/O نوید عملکرد روان‌تر و پایدارتر را می‌دهد. با انتشار نسخه نهایی، انتظار می‌رود راهنماها و بهترین‌عمل‌ها برای بهره‌گیری از این بهبودها ارائه شود و تیم‌ها بتوانند با تنظیمات مناسب، از جهش عملکردی Postgres 18 بهره ببرند.

#Postgres18 #Postgres #PostgreSQL #AsynchronousIO #Database #Performance #OpenSource

🟣لینک مقاله:
https://postgresweekly.com/link/174461/web


👑 @Database_Academy
1
🔵 عنوان مقاله
"database is not accepting commands": What Now?

🟢 خلاصه مقاله:
وقتی پیام "database is not accepting commands" ظاهر می‌شود، در سیستم‌هایی مثل PostgreSQL معمولاً به‌معنای ورود به حالت حفاظتی برای جلوگیری از Transaction ID Wraparound است؛ یعنی پایگاه داده برای محافظت از خود جلوی عملیات عادی را گرفته و باید فوراً اقدام کنید. توصیه Laurenz این است که ابتدا ترافیک نوشتن را کم یا متوقف کنید، با دسترسی کافی وصل شوید و روی جداول/پایگاه‌های در خطر VACUUM و در صورت نیاز VACUUM FREEZE اجرا کنید؛ اگر اتصال معمولی ممکن نیست، از حالت نگهداری محدود استفاده کنید تا relfrozenxid ایمن جلو برود. برای پیشگیری، پایش منظم سن تراکنش‌ها، تنظیم درست autovacuum، زمان‌بندی VACUUM برای جداول بزرگ، کوتاه نگه‌داشتن تراکنش‌های طولانی و برنامه‌ریزی نگهداری دوره‌ای ضروری است. از روش‌های "نامطلوب" مثل غیرفعال‌کردن autovacuum، بالا بردن بی‌هدف autovacuum_freeze_max_age یا سرکوب هشدارها برای به تعویق انداختن مشکل پرهیز کنید؛ این‌ها خطر را بیشتر می‌کنند. راه‌حل واقعی، نگهداری منظم، پایش و پیکربندی درست است، نه عقب‌انداختن مشکل.

#PostgreSQL #TransactionIDWraparound #Autovacuum #VACUUM #DatabaseMaintenance #DBA #IncidentResponse

🟣لینک مقاله:
https://postgresweekly.com/link/174454/web


👑 @Database_Academy
🔵 عنوان مقاله
pgAudit 18.0: An Audit Logging Extension

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

#Postgres #pgAudit #AuditLogging #Compliance #Security #DataGovernance #ISO

🟣لینک مقاله:
https://postgresweekly.com/link/174766/web


👑 @Database_Academy
🔵 عنوان مقاله
Understanding WAL and Optimizing It with a Dedicated Disk

🟢 خلاصه مقاله:
WAL روشی کلیدی برای پایداری و ریکاوری پس از کرش است: تغییرات ابتدا به شکل ترتیبی در یک لاگ نوشته و به‌صورت پایدار flush می‌شوند و سپس در صورت نیاز روی داده‌های اصلی اعمال یا بازپخش می‌گردند. گلوگاه اصلی معمولاً همان fsync/flush است که باید دوام را تضمین کند. وقتی WAL روی همان دیسکی باشد که فایل‌های داده نیز روی آن I/O تصادفی انجام می‌دهند، وقفه و رقابت صف موجب جهش در تاخیر به‌ویژه در p99/p999 می‌شود. قرار دادن WAL روی یک دیسک اختصاصی این مسیر حساس را ایزوله می‌کند، الگوی نوشتن ترتیبی را حفظ می‌کند و تاخیر را قابل پیش‌بینی‌تر و بهره‌وری را بیشتر می‌سازد.

در عمل می‌توان از یک NVMe مستقل یا یک ولوم ابری جداگانه استفاده کرد؛ فایل‌سیستم‌های رایج مانند ext4 یا XFS با تنظیمات ساده و بدون سربار اضافی مناسب‌اند و باید اطمینان داشت که semantics مربوط به write barrier و cache flush مطابق نیازهای دوام هستند. از منظر Golang، بهینه‌سازی WAL معمولاً با سگمنت‌بندی و پیش‌اختصاص فایل‌ها، نوشتن هم‌تراز با بلوک، checksum، batch کردن درخواست‌ها، group commit با آستانه زمانی/حجمی، استفاده سنجیده از O_DSYNC/fdatasync و مدیریت دقیق بافر انجام می‌شود. اندازه‌گیری دقیق قبل و بعد (میانگین و p99 fsync، نرخ نوشتن، و زمان انتهابه‌انتها) مشخص می‌کند آیا دیسک اختصاصی هزینه‌اش را جبران می‌کند یا خیر؛ برای بارهای نوشتاری بالا یا SLA سخت‌گیرانه، این ایزولاسیون معمولاً ارزشمند است.

#WAL #Golang #Databases #Performance #Storage #NVMe #SystemsDesign

🟣لینک مقاله:
https://postgresweekly.com/link/174762/web


👑 @Database_Academy
1