Database Labdon – Telegram
Database Labdon
862 subscribers
34 photos
3 videos
1 file
835 links
🕸 Database Academy

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

ادمین:
@mrbardia72
Download Telegram
یه اشتباه رایجی که توی کار کردن با دیتابیس MySQL وجود داره اینه که فکر میکنیم دیتا مستقیم روی دیسک ذخیره میشه و از دیسک خونده میشه، اما واقعیت اینه که MySQL یه الگوریتم جالبی برای بهینه کردن پرفورمنس داره تا بتونه پردازش کوئری ها رو به خوبی هندل کنه.

توی این مقاله خیلی ساده flow اجرای یه کوئری رو توضیح دادم که MySQL دقیقا پشت صحنه چه فرآیندی رو انجام میده تا هم پرفورمنس رو حفظ کنه و هم نتیجه رو به کاربر برگردونه. میتونید مقاله رو توی لینک زیر بخونید:

https://farshadth.medium.com/how-mysql-works-behind-the-scenes-72746950cd65

<Farshad Tofighi/>
👍2
وقتی SQL Server بیش‌ازحد به حافظه‌اش اعتماد می‌کنه.

خیلی وقت‌ها مشکل از خود کوئری نیست،
از Execution Plan قدیمیه که دیگه با دیتای فعلی هم‌خوانی نداره.

سناریوی رایج:

Batch Update با TOP
لوپ یا Job طولانی
دیتایی که وسط کار شدیداً تغییر می‌کنه
کوئری بی‌خطا تموم میشه، ولی هنوز دیتا باقی مونده!

علتش؟ SQL Server یه Plan می‌سازه، Cache
می‌کنه و میگه:
«دفعه بعد هم اوضاع همینه»
در حالی که نیست.
اینجاست که این خط نجات‌دهنده میاد وسط:
OPTION (RECOMPILE)

چی کار می‌کنه؟
هر بار Compile جدید، تخمین دقیق‌تر، Join درست‌تر، Memory Grant واقعی، پایان دادن به رفتارهای «عجیب ولی بی‌خطا»

جمع‌بندی:

ء Recompile یعنی «تصمیم‌گیری با وضعیت امروز دیتا، نه خاطرات دیروز»

| <Sajjad Zibafar/>
2
Forwarded from Future Pulse Persian
وضعیت اینترنت ایران طبق رادار های کلود فلیر
احتمال قطع دسترسی اینترنت با این وضعیت خیلی زیاده...
👉 https://news.1rj.ru/str/addlist/AJ7rh2IzIh02NTI0
1👍1
🔵 عنوان مقاله
Kafka is Fast, I'll Use Postgres

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

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


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

🟢 خلاصه مقاله:
در دنیای امروز، تصور کنید که پردازشگر مورد استفاده در سیستم‌های کاری شما چقدر قدرتمند است. ممکن است باور نکنید، اما تصور داشتن پردازنده‌ای مانند AMD EPYC با ۱۹۲ هسته در هر سوکت و رم ۱۰ ترابایتی، کاملاً در دسترس است. این نوع از سخت‌افزارهای مدرن، قابلیت‌هایی بی‌نظیر را فراهم می‌کند و قدرت پردازش فوق‌العاده‌ای را در اختیار ما قرار می‌دهد. چنین امکاناتی، ما را به سؤال‌هایی درباره روش‌های امروزی برای توسعه و مقیاس‌بندی سرورهای پایگاه داده و بهره‌برداری بهینه از این سخت‌افزارهای عظیم، وا می‌دارد.

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

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

#پایگاه_داده #مقیاس‌پذیری #تکنولوژی_مدرن #سخت‌افزار

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


👑 @Database_Academy
🔵 عنوان مقاله
Benchmarking Postgres 17 vs 18

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

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

در پایان، می‌توان نتیجه گرفت که PostgreSQL ۱۸ نسبت به نسخه‌های پیشین خود، پیشرفت قابل توجهی دارد و بهره‌مندی از دیسک‌های داخلی و انجام تنظیمات دقیق، ارزش ادامه‌دار بودن این بهبودها را دوچندان می‌سازد.

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

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


👑 @Database_Academy
🔵 عنوان مقاله
Just Because You’re Getting an Index Scan, Doesn't Mean You Can’t Do Better

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

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

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

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

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


👑 @Database_Academy
🔵 عنوان مقاله
Pipelining Comes to psql in Postgres 18

🟢 خلاصه مقاله:
در نسخه ۱۸ پایگاه داده پستگرس، ابزار جدیدی به نام «پایپ‌لاینینگ» به ابزار خط فرمان psql افزوده شده است. این قابلیت امکان اجرای هم‌زمان چند دستور یا عملیات در قالب لوله‌کشی را فراهم می‌کند، به گونه‌ای که نتایج هر مرحله به صورت مستقیم و بدون نیاز به ذخیره‌سازی موقت به مرحله بعدی منتقل می‌شود. دانیل اشاره کرده است که این ویژگی می‌تواند بر افزایش ظرفیت پردازش و سرعت اجرای کوئری‌ها تاثیر چشمگیری داشته باشد، چرا که با کاهش زمان صرف شده برای انتقال و پردازش داده‌ها، توان عملیاتی سیستم به طور قابل توجهی بهبود می‌یابد.

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

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

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

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


👑 @Database_Academy
🔵 عنوان مقاله
Lessons from Scaling Postgres Queues to 100K Events Per Second

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

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

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

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

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


👑 @Database_Academy
🔵 عنوان مقاله
Postgres Performance: Latency in the Cloud & On-Premise

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

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

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

#پایگاه_داده #پردازش_در_ابر #تأخیر #بهبود_عملکرد

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


👑 @Database_Academy
🔵 عنوان مقاله
Life-Altering Postgres Patterns

🟢 خلاصه مقاله:
در این مقاله، نویسنده وعده می‌دهد که عنوان مقاله صرفاً ابزار جذب توجه نیست، چرا که با جلب توجه در رتبه اول قرار گرفته است. او در ادامه دوازده نکته کوتاه و مهم استراتژیک را ارائه می‌دهد که طی سال‌ها تجربه و آزمون و خطا به دست آمده است. این نکات در حوزه‌های مختلفی مانند استفاده از UUIDها به عنوان کلیدهای اولیه، نحوه نام‌گذاری جداول، بهره‌گیری از اسکیم‌ها و نماها (ویوها) می‌باشند. هر یک از این نکات، راهکارهای عملی و کاربردی هستند که می‌توانند تاثیر قابل توجهی در بهبود عملکرد و قابلیت مدیریت پایگاه‌های داده پُستگرس/G بخشند. این مطالب، برای توسعه‌دهندگان و مدیران پایگاه داده، نکاتی ارزشمند و قابل پیگیری هستند که با رعایت آن‌ها، کارایی و ساختار بانک اطلاعاتی خود را به سطح جدیدی ارتقاء دهند.

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

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

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

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


👑 @Database_Academy