Database Labdon – Telegram
Database Labdon
833 subscribers
33 photos
3 videos
1 file
817 links
🕸 Database Academy

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

ادمین:
@mrbardia72
Download Telegram
🔵 عنوان مقاله
Postgres, Now with Built-In Warehousing

🟢 خلاصه مقاله:
مقاله‌ای که مرور شده با تمرکز بر Crunchy Data Warehouse است و به بررسی چگونگی ترکیب قابلیت‌های یک پایگاه داده تراکنش‌ی و انبارداده در یک محصول واحد می‌پردازد. این محصول امکان اجرای پایگاه داده تراکنشی به صورت روان را فراهم می‌کند، در حالی که قابلیت‌هایی نظیر پرس‌وجو از ذخیره‌سازی اشیاء، اتصالات ابزارهای تجزیه و تحلیل تجاری (BI) و موارد دیگر را اضافه می‌کند. با استفاده از Crunchy Data Warehouse، کاربران می‌توانند به راحتی و بدون پیچیدگی‌های معمول، مقیاس‌پذیری در پروژه‌های خود را افزایش دهند. این سیستم توسط Postgres پشتیبانی می‌شود که یک راهکار محبوب و مورد اعتماد برای مدیریت پایگاه داده‌ها است. در کل، Crunchy Data Warehouse راهکاری کارآمد و قدرتمند را برای مدیریت یکپارچه پایگاه داده‌های تراکنشی و تحلیلی ارائه می‌دهد.

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


👑 @Database_Academy
🔵 عنوان مقاله
PostgreSQL 17.3, 16.7, 15.11, 14.16, and 13.19 Released

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

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


👑 @Database_Academy
🔵 عنوان مقاله
A PostgreSQL Compatibility Index to Compare Implementations

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

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


👑 @Database_Academy
🔵 عنوان مقاله
Postgres in the Time of Monster Hardware

🟢 خلاصه مقاله:
در مقاله‌ای که مورد بررسی قرار گرفت، بر قدرت روزافزون پردازنده‌های مدرن و تأثیر آن بر مقیاس‌پذیری سرورهای دیتابیس تأکید شده است. به‌طور خاص، مقاله به معرفی پردازنده‌ی AMD EPYC با 192 هسته در هر سوکت و 10 ترابایت حافظه RAM می‌پردازد که نسبت به سرورهایی که 15 سال پیش با پردازنده‌ی Xeon هستند، 160 برابر سریع‌تر عمل می‌کند. این میزان قدرت پردازشی غیرمعمول، سؤالاتی درباره‌ی بهترین روش‌ها برای مقیاس‌بندی سرورهای دیتابیس در دوران کنونی را مطرح می‌کند، جایی که ذخیره‌سازی سریع‌تر نیز به‌عنوان بخشی از معادله است. مقاله در نهایت بر اهمیت بازاندیشی در استراتژی‌ها و فناوری‌های مورد استفاده برای به‌روزرسانی و اصلاح ساختارهای داده‌ای در عصر و تکنولوژی جدید تأکید می‌کند.

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


👑 @Database_Academy
👍2
🔵 عنوان مقاله
Expanding pgai Vectorizer

🟢 خلاصه مقاله:
مجموعه ابزارهای pgai از Timescale، روش‌های استفاده از قابلیت‌های هوش مصنوعی در Postgres را تسهیل می‌بخشد. این مجموعه امکان ایجاد خودکار و همگام‌سازی نمایه‌های برداری برای داده‌ها را فراهم می‌کند. به تازگی، پشتیبانی از SQLAlchemy و همچنین پشتیبانی از مدل‌های بیشتری برای تعبیه توسط LiteLLM در pgai افزوده شده است. این پیشرفت‌ها به کاربران امکان می‌دهد تا با استفاده از تکنولوژی‌های پیشرفته در پایگاه داده‌های Postgres، داده‌های خود را به صورت هوشمندتر و کارآمدتر مدیریت کنند. اضافه شدن پشتیبانی از این قابلیت‌ها به کاربران کمک می‌کند تا به راحتی عملکردهای مبتنی بر هوش مصنوعی را بر روی داده‌های خود پیاده‌سازی نمایند. این افزودنی‌ها به بستر Timescale کمک می‌کند تا به عنوان یک راهکار قابل اعتماد برای ادغام هوش مصنوعی با بانک‌های داده مورد استفاده قرار گیرد.

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


👑 @Database_Academy
👍1
🔵 عنوان مقاله
Incremental Archival from Postgres to Parquet

🟢 خلاصه مقاله:
مقاله مورد بحث به بررسی دو افزونه‌ی pg_parquet و pg_incremental از شرکت Crunchy Data می‌پردازد. این افزونه‌ها امکان برپایی یک خط لوله‌ی ترکیبی برای صادر کردن داده‌ها را فراهم می‌آورند. داده‌ها می‌توانند به فرمت ستونی Parquet تبدیل شده و در سرویس ذخیره‌سازی S3 ذخیره شوند. افزونه‌ی pg_parquet برای تعریف فرمت داده‌ها و تبدیل آن‌ها به فرمت Parquet استفاده می‌شود، در حالی که افزونه‌ی pg_incremental امکان انتخاب داده‌ها بر اساس دامنه‌های قابل تعریف توسط کاربر را دارد. با استفاده از این دو افزونه، کاربران می‌توانند به طور خودکار داده‌های خود را فیلتر، تحلیل و ذخیره کنند، بدون اینکه نیاز به دخالت دستی باشد. این فرآیند به ویژه در مواردی که کار با حجم عظیمی از داده‌ها مطرح است، می‌تواند صرفه‌جویی قابل توجهی در زمان و منابع به همراه داشته باشد.

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


👑 @Database_Academy
👍2
ماجرای یه SELECT ساده که SQL SERVER رو به زانو در آورد.
چند وقت پیش تو یه پروژه ای بودم که یکی از دولوپرهای عزیز یه گزارش جدید نوشته بود که شامل یه Query بود. روی سطح کد، همه‌چیز عالی به نظر میومد. اما وقتی گزارش اجرا میشد، سیستم یه دفعه شروع می کرد به کند شدن و سرور، CPU رو تا 100٪ میبرد بالا.
رفتم بررسی کنم چی شده. دیدم Queryش این شکلی بود:
SELECT *
FROM BigTable
WHERE FunctionOnColumn(SomeColumn) = 'Value';
کاری که این Query انجام می‌داد، این بود که یه فانکشن روی ستون اجرا می‌کرد. نتیجه؟ به‌جای استفاده از ایندکس‌های موجود، SQL Server مجبور می‌شد کل جدول رو اسکن کنه (Full Table Scan).

اول، با دولوپر صحبت کردم و براش توضیح دادم که استفاده از فانکشن روی ستون‌ها (به‌خصوص توی WHERE یا JOIN) باعث می‌شه SQL Server ایندکس‌ها رو نادیده بگیره. بعد، بهش پیشنهاد دادم که به‌جای فانکشن، مقدار محاسبه‌شده رو از قبل توی یه ستون جدید ذخیره کنه یا از Persisted Computed Column استفاده کنه.
کوئری اصلاح‌ شده‌ش این شد:
SELECT *
FROM BigTable
WHERE CalculatedSomeColumn = 'Value';
سرعت اجرای Query از چند دقیقه به کمتر از یک ثانیه رسید. همین تغییر ساده کلی بار روی دیتابیس رو کم کرد. نتیجه اینکه من راضی ، دولوپر راضی ، SQL SERVER هم راضی.

<Mostafa Hassanzadeh/>

https://news.1rj.ru/str/addlist/KpzXaiSpKENkMGM0
👍3🔥2🍓2👏1
📢 اگر تلگرام پرمیوم دارید، کانال ما رو Boost کنید ! 🚀

با Boost کردن کانال، به رشد و دیده شدن ما بیشتر کمک کنید💙

https://news.1rj.ru/str/boost/Database_Academy
1👻1💘1
🔵 عنوان مقاله
pg_activity 3.6: top-Like Activity Monitoring Tool

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

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


👑 @Database_Academy
1
🔵 عنوان مقاله
Don’t Let Postgres Maintenance Slip Through the Cracks & Let Performance Fall Off a Cliff

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

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


👑 @Database_Academy
1🥰1
🔵 عنوان مقاله
Postgres 17.4, 16.8, 15.12, 14.17, and 13.20 Released

🟢 خلاصه مقاله:
مقاله‌ای که مورد بررسی قرار گرفته به توضیح انتشار جدیدی از نسخه‌های نگهداری‌شده در دو هفته اخیر می‌پردازد و به عنوان یک انتشار "خارج از دوره معمول" شناخته شده است. تمرکز اصلی این به‌روزرسانی‌ها بر رفع اشکالات می‌باشد. در این زمینه، Postgres 17 شاهد رفع نشت حافظه در تابع pg_createsubscriber و تغییر رفتار تابع نقل قول در کتابخانه libpq است. این اصلاحات در جهت بهبود عملکرد و کارایی پایگاه داده و ارتقاء امنیت آن تدابیری اتخاذ شده‌اند.

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


👑 @Database_Academy
🔵 عنوان مقاله
While Postgres Redlined, Robinhood Sharded to Scale

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

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


👑 @Database_Academy
1👍1
🔵 عنوان مقاله
FerretDB 2.0: An Open Source MongoDB Alternative

🟢 خلاصه مقاله:
FerretDB یک پیاده‌سازی از MongoDB است که بر روی Postgres و افزونه DocumentDB مایکروسافت قرار گرفته است. به خلاف MongoDB، FerretDB تحت مجوز Apache 2.0 منتشر شده است. این امکان را فراهم می‌آورد که کاربران بتوانند از پایگاه داده‌ی مدیریت سندی مانند MongoDB استفاده کنند، در حالی که از زیرساخت‌های قدرتمند و اثبات شده‌ی Postgres بهره می‌برند. این نوآوری به این معناست که کاربران می‌توانند از ویژگی‌ها و امنیتی که Postgres ارائه می‌دهد استفاده کنند، در حالی که از رابط برنامه‌نویسی کاربردی MongoDB برخوردار هستند. این محصول به خصوص برای آن دسته از توسعه‌دهندگانی که به دنبال استفاده از MongoDB در محیط‌هایی هستند که Postgres ترجیح داده می‌شود، مفید است. FerretDB در گیت‌هاب قابل دسترسی است و می‌تواند به عنوان یک جایگزین قابل اعتماد برای MongoDB استفاده شود.

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


👑 @Database_Academy
🔵 عنوان مقاله
pytest-postgresql 7.0: A Pytest Plugin for Testing Postgres-Using Python Apps

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

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


👑 @Database_Academy
Forwarded from Future Pulse Persian
👇 لیست کانال‌های مجموعه Labdon با به‌روزترین اخبار، آموزش‌ها و ترفندها در حوزه‌های مختلف:


🔵 گولنگ - همه چیز از اخبار تا نکات کلیدی
🔴 @gopher_academy

🔵 موقعیت شغلی های گولنگ چه ایرانی و چه خارجی
🔴 @gopher_job


🔵 انواع دیتابیس ها ردیس مانگو پستگرس و سایر دیتابیس ها
🔴 @database_academy
🟢 حوزه های تحت پوشش

(redis , mysql , postgresl , mongo ,etc)

🔵 دنیای بلاکچین و ارز های دیجیتال
🔴 @Blockchain_labdon
🟢 حوزه های تحت پوشش

(Bitcoin, Ethereum, Altcoins, Blockchain, Policy & Regulations, AI, NFTs, DeFi)


🔵 مهندسی نرم افزار
🔴 @software_labdon
🟢 حوزه های تحت پوشش

(Engineering, Architecture, Design, Testing, Security , QA)


🔵 لینوکس- از توزیع‌ها تا ترفندهای امنیتی
🔴 @linux_labdon
🟢 حوزه های تحت پوشش

(Linux Distributions, Open Source Software, Security Tips ,New Releases & Features)


🔵 دوآپـس - ابزارها و روندهای جدید
🔴 @devops_labdon
🟢 حوزه های تحت پوشش

(CI/CD Pipelines, Cloud Infrastructure, Containerization & Orchestration, Monitoring & Performance, Infrastructure as Code, Security in DevOps)

🕸 @labdon_academy
🔵 عنوان مقاله
PGConf.dev 2025: May 13-16 in Montréal, Canada

🟢 خلاصه مقاله:
رویداد جانشین PGCon، کنفرانس توسعه PostgreSQL، یکی از بزرگترین گردهمایی‌های سالانه جامعه است که تمرکز خاصی بر روی جمع آوری مشارکت‌کنندگان Postgres دارد. ثبت نام اکنون باز است، اما خبر مهم این هفته این است که برنامه کنفرانس اکنون زنده و بسیار پربار است.


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


👑 @Database_Academy
👍1🙏1
🔵 عنوان مقاله
New Random Functions in Postgres 17

🟢 خلاصه مقاله:
در ورژن ۱۷ PostgreSQL، توابع جدیدی برای تولید اعداد تصادفی معرفی شده‌اند، بنابراین دریافت یک عدد صحیح بین ۱ تا ۱۰ حالا به سادگی استفاده از random(1,10) امکان‌پذیر است.

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


👑 @Database_Academy
👍2
🔵 عنوان مقاله
(Ab)using pgRouting to Use Postgres as a Graph Database

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

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


👑 @Database_Academy
Forwarded from DevOps Labdon
🔵 عنوان مقاله
Siren Call of SQLite on the Server (3 minute read)

🟢 خلاصه مقاله:
مقاله‌ای که مورد بررسی قرار گرفته، به بررسی استفاده از SQLite در کنار ابزارهایی مانند LiteFS برای تکثیر داده‌ها در محیط‌های سروری توسط Fly.io می‌پردازد. مقاله با این وجود استدلال می‌کند که استفاده از SQLite به عنوان دیتابیس اصلی در محیط‌های تولید، پیچیدگی‌های غیرضروری به همراه دارد. SQLite برای برنامه‌های تک‌نمونه‌ای مناسب است؛ با این حال، برای بیشتر بارهای کاری در تولید، استفاده از پایگاه داده سنتی مانند PostgreSQL به دلیل سادگی در پشتیبان‌گیری، مقیاس‌پذیری و مهاجرت‌ها، گزینه بهتری است. در نهایت، مقاله به این نتیجه می‌رسد که برای کاربردهایی که نیازمند استقرار راهکارهای پیچیده‌تر هستند، PostgreSQL را به عنوان یک گزینه‌ی ترجیحی قلمداد می‌کند.

🟣لینک مقاله:
https://pid1.dev/posts/siren-call-of-sqlite-on-the-server/?utm_source=tldrdevops


👑 @DevOps_Labdon
🔵 عنوان مقاله
A Roundup of Postgres Query Plan Visualization Tools

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

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


👑 @Database_Academy
کوئرا با ۳۰۰ میلیون کاربر ماهانه، ۲۵,۰۰۰+ سوال روزانه، و ۱۰+ سال فعالیت، دیتابیسش میدونی چیه؟ MySQL! ده‌ها ترابایت داده و صدها هزار QPS. و اومدن شدیدا بهینه‌ش کردن، چطوری؟

اینا میبینن بار دیتابیس (Database Load) با رشد کاربران، پتابایت‌ها بیشتر و با ویژگی‌های ML محصولاتشون بالاتر هم می‌ره، و البته اسپمرها هم یه بخشی ازین بار بودن.

بار دیتابیسشون تو خواندن (Reads) (۷۰٪ ترافیک)، حجم داده (Data Volume) ( که رشد ۲۰۰٪ تو ۵ سال داشت)، و نوشتن (Writes) (کم اما حساس) بود. کوئرا برای بهینه‌سازی روی خواندن و حجم داده تمرکز کرد، چون ترافیک بیشترشون سمت خواندن بود.

اسکن‌های بزرگ رو با LIMIT و صفحه‌بندی (Pagination) بهینه کردن. این کار از اسکن‌ غیرضروری جلوگیری کرد و پرفومنس کوئری‌ها رو تا ۶۰٪ سریع‌تر کرد.

برای کوئری‌های کند، ایندکس‌ها رو دوباره طراحی کردن، ستون‌های غیرضروری حذف شدن، ORDER BY به کلاینت منتقل شد، و کوئری‌های غیرضروری هم حذف شدند. و بار CPU ۵۰٪ کم شد.

برای High QPS، کوئرا کش رو بهینه کرد. کلید کش (Cache Key) به uid تغییر داد تا QPS رو بیش از ۹۰٪ کم کنه.

برای حجم داده ها، کوئرا MyRocks که فیس‌بوک توسعه داده بود رو برای شاردهای قدیمی MySQL استفاده کرد. این کار فضا رو تا ۸۰٪ برای برخی جدول‌ها  و ۵۰-۶۰٪ برای بقیه کاهش داد.

مای راک با فشرده‌سازی بهتر، IO رو کم کرد و زمان بکاپ/ریستور رو ۵۰٪ سریع‌تر کرد. شاردهای قدیمی (بیش از ۱۸ ماه) به MyRocks منتقل شدند.
برای نوشتن، lag رپلیکیشن رو با رپلیکیشن موازی Parallel ( توی mysql تنظیماتش slave_parallel_type یا شبیه شه) حل کردن تا بار رو بهتر توزیع کنه.

یعنی یه تاخیری بین دیتابیس مادر با رپلیکا به وجود میومد که رو برداشتن سیستمش رو موازی کردن، مشکلش چی بود؟ وقتی رپلیکا داره میخونه یا مینویسه ممکنه خیلی زمان بر بشه یا transaction دیتابیس مادر خیلی زمانبر باشه رپلیکا مجبور بشه صبر کنه تا تراکنش تموم بشه بعد تغییرات رو اعمال کنه

خلاصه اینکه نتیجه این شد که کوئرا:
- با بهینه‌سازی کش  و کوئری‌ها
- استفاده از MyRocks،
- و رپلیکیشن موازی 

بار رو برای ۳۰۰ میلیون کاربر روی دیتابیس‌ MySQL کاهش داد.

| <Saman/>

https://news.1rj.ru/str/addlist/KpzXaiSpKENkMGM0
1👍1