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
Forwarded from DevOps Labdon
🔵 عنوان مقاله
Shrinking A Postgres Table (4 minute read)

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

🟣لینک مقاله:
https://www.johnnunemaker.com/shrinking-a-postgres-table/?utm_source=tldrdevops


👑 @DevOps_Labdon
🔵 عنوان مقاله
DELETEs Are Difficult

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

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


👑 @Database_Academy
👍1
🔵 عنوان مقاله
pgspot: Spot Vulnerabilities in Postgres Extension Scripts

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

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


👑 @Database_Academy
🔵 عنوان مقاله
  The PGConf.EU 2024 Lightning Talks

🟢 خلاصه مقاله:
این خلاصه از مقاله به بررسی همایش اخیر PGConf EU می‌پردازد که شامل دوازده سخنرانی کوتاه به همراه ارائه اسلایدها و ضبط برنامه‌ها بود. موضوعات متنوعی پوشش داده شده‌اند که شامل BM25، به‌روزرسانی‌های مربوط به Postgres Performance Farm، pg_duckdb، و WAL-G است. BM25 یک الگوریتم رتبه‌بندی برای جستجوی متن است، در حالی که Postgres Performance Farm یک پروژه است که به بهینه‌سازی عملکرد پایگاه داده‌های پستگرس می‌پردازد. pg_duckdb یک ابزار برای تحلیل داده‌ها با پستگرس و DuckDB است و WAL-G یک ابزار پشتیبان‌گیری برای پستگرس است که با استفاده از فشرده‌سازی داده‌ها و پشتیبانی چند رشته‌ای کار می‌کند. این همایش فرصتی برای ارائه دهندگان و شرکت‌کنندگان بود تا در مورد پیشرفت‌های فنی جدید در زمینه پایگاه داده‌های پستگرس گفتگو کنند و دیدگاه‌های خود را به اشتراک بگذارند.

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


👑 @Database_Academy
Forwarded from Future Pulse Persian
🟢 اگر کارفرما هستید و به دنبال نیروهای متخصص در حوزه‌های زیر می‌گردید، آگهی شغلی خود را برای ما ارسال کنید. و ما توی چنل های مرتبط به هر حوزه ای قرار میدیم

تخصص های همچون:
🔥 linux
🔥 devops
🔥 golang
🔥 blockchain
🔥 database


🟢 اگر کارجو هستید، رزومه خود را مطابق فرمت زیر برای ما ارسال کنید:

🤝موارد زیر را به همراه فایل pdf رزومه بفرستید:

🎯نام و نام خانوادگی (اجباری)
🎯مدت سابقه کار (اجباری)
🎯لینکدین (اختیاری)
🎯گیتهاب (اختیاری)
🎯محل سکونت  (اجباری)
🎯امکان نقل مکان برای کار دارم یا خیر
(اجباری)


🕊Admin:
@mrbardia72
🎉1💅1
#موقعیت_شغلی

Database Administrator

🏷️ #python #oracle #perl #gcp #aws #bash #cloud #sql

🌎 Visa Sponsorship & Relocation Included

🔗 Click Here for More Details & Apply
Forwarded from Future Pulse Persian
🟢 اگر مقاله، سورس کد، یا محتوای مفیدی در حوزه‌های زیر دارید، خوشحال می‌شویم که برای ما ارسال کنید:


🔴 Linux
🔴 DevOps
🔴 Blockchain
🔴 Database
🔴 software

💡 محتوای شما می‌تواند در کانال‌های مرتبط (با عنوان ذکر منبع خودتون)منتشر شود تا افراد بیشتری از آن بهره‌مند شوند.

🕊 ادمین:
@mrbardia72
🔵 عنوان مقاله
Transactional Schema Migration Across Tenant Databases with pg_karnak

🟢 خلاصه مقاله:
مقاله‌ای که مورد بررسی قرار گرفته، به بررسی ابزاری به نام pg_karnak می‌پردازد که برای هماهنگی طرح‌های داده (schemas) در بین پایگاه‌های داده‌ای که هر مشتری یا کاربر در یک سیستم منفرد دارد، طراحی شده است. این ابزار، که هنوز به صورت متن‌باز منتشر نشده است، به عنوان یک لایه DDL توزیع‌شده در Nile عمل می‌کند. pg_karnak به کاربران امکان می‌دهد تا طرح‌های داده‌ای خود را به طور مؤثر و سازمان‌یافته‌ای در میان دیتابیس‌های متعدد مدیریت کنند، که این کار معمولاً می‌تواند بسیار پیچیده و دشوار باشد. با استفاده از این سیستم، تغییرات طرح داده‌ها می‌توانند به طور هماهنگ و کارآمد در کلیه پایگاه‌های داده اعمال شوند، که این امر به حفظ یکپارچگی و کارایی داده‌ها در سراسر سیستم کمک می‌کند.

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


👑 @Database_Academy
👍1
🔵 عنوان مقاله
Optimizing Postgres Performance and Compression: pglz vs. LZ4

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

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


👑 @Database_Academy
👍1
🔵 عنوان مقاله
What I Wish Someone Told Me About Postgres

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

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


👑 @Database_Academy
Forwarded from Gopher Academy
🔵 عنوان مقاله
🪨 Pebble: RocksDB/LevelDB Inspired Key-Value Database in Go

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

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


👑 @gopher_academy
🔵 عنوان مقاله
Amazon Aurora DSQL: A New Postgres-Compatible Database

🟢 خلاصه مقاله:
مقاله بررسی می‌کند تکنولوژی جدیدی به نام DSQL که از جانب AWS معرفی شده است. این فناوری با وعده‌ی قابلیت‌های مقیاس‌پذیری شبه نامحدود و قابلیت‌های بالای دسترس‌پذیری و پایداری قوی معرفی شده، هرچند تا حدودی با Postgres سازگار است، ولی قابلیت‌هایی همچون views، triggers، JSON و محدودیت‌های کلید خارجی را ندارد. AJ Stuyvenberg، که به عنوان AWS Hero شناخته می‌شود، این فناوری را به‌عنوان "هیجان‌انگیزترین راه‌اندازی که تا به حال از AWS دیده‌ام" توصیف می‌کند. همچنین اشاره می‌کند که این فناوری در حال حاضر در مرحله پیش‌نمایش است و جزئیات کامل در دسترس نیست. به زودی اطلاعات بیشتری از این محصول جدید انتظار می‌رود.

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


👑 @Database_Academy
👍1
🔵 عنوان مقاله
Supabase Cron: Job Scheduling in Postgres

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

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


👑 @Database_Academy
👍1
🔵 عنوان مقاله
Full-Stack Observability from Honeybadger

🟢 خلاصه مقاله:
پلتفرم جدید خطازنی Honeybadger که شباهت زیادی به سرویس‌های Splunk، DataDog یا CloudWatch Logs دارد، با این تفاوت که فقط ویژگی‌های مثبت این سرویس‌ها را به همراه یک قیمت معقول ارائه می‌دهد. این سیستم، علاوه بر کارایی بالا، به راحتی با سرویس‌هایی نظیر Crunchy Bridge، Journald و AWS یکپارچه‌سازی می‌شود. از مزایای اصلی این پلتفرم می‌توان به قیمت مناسب، راحتی در استفاده و امکان یکپارچه‌سازی آسان با دیگر سرویس‌های مدیریت داده و زیرساخت‌های فناوری اطلاعات اشاره کرد. این ویژگی‌ها Honeybadger را به یک انتخاب جذاب برای مدیریت لاگ‌ها در مقیاس وسیع یا پروژه‌های کوچکتر تبدیل می‌کند.

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


👑 @Database_Academy
🔵 عنوان مقاله
The substring Function, Regex Style

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

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


👑 @Database_Academy
Forwarded from Future Pulse Persian
تیم سازی چیست؟ اهمیت، روش‌ها و مزایای آن در محیط کار

https://karboom.io/mag/articles/%D8%AA%DB%8C%D9%85-%D8%B3%D8%A7%D8%B2%DB%8C

🕸 @labdon_academy
Forwarded from Future Pulse Persian
👇👇👇👇👇👇👇

🍀لیستی از تمامی چنل های ما

🔵 https://linktr.ee/Labdon

👆👆👆👆👆👆👆
👍2
Forwarded from LearnByLearn📖
💥مجموعه مقاله های مفاهیم دیتابیس💥

سعی کردم تا جایی که جا داره مفاهیم رو ساده توضیح بدم و شک نکنید ازشون تو مصاحبه ها پرسیده میشه 🍻


نبرد بین نظم و انعطاف (قسمت اول از مفاهیم دیتابیس)
👈🏻 کی به وجود اومدن؟
👈🏻 چرا به وجود اومدن؟
👈🏻 چه موقع از کدوم استفاده کنیم و چه موقع استفاده نکنیم؟
👈🏻 مزیت و معایبشون چیه؟ به درد چه پروژه هایی میخوره ؟
👈🏻 مقیاس پذیری افقی و عمودی چیه ؟


وقتی جدول‌ها عاشق می‌شوند (قسمت دوم از مفاهیم دیتابیس)
👈🏻 کلید ها چی هستن و انواع شون ؟
👈🏻 انواع ریلیشن توی دیتابیس چطوری استفاده میشه؟
👈🏻 چه موقع از ON DELETE استفاده کنیم ؟


دیتابیس بدون ایندکس، مثل کتابخانه بدون فهرست! (قسمت سوم از مفاهیم دیتابیس)
👈🏻 مفهوم ایندکس چیه؟ چه موقع استفاده کنیم چه موقع نکنیم ؟
👈🏻 انواع ایندکس کدوما هستن؟چطوری کار میکنن ؟
👈🏻 بررسی سه ساختار داده مهم ایندکس ها B-tree , Bitmap, hash table


نرمال‌سازی دیتابیس: از آشفتگی تا آسودگی در چند مرحله ساده(قسمت چهارم از مفاهیم دیتابیس)
👈🏻 مفهوم نرمالایز چیه؟
👈🏻 سطوح نرمالایز کدوما هست ؟
👈🏻 معایبش چیه و چه موقع استفادش نکنیم ؟


اسید: این بار نه شیمی، بلکه دیتابیس!(قسمت پنجم از مفاهیم دیتابیس)
👈🏻 اسید(ACID) در دیتابیس به چه معنیه؟
👈🏻 اگه ایزوله سازی رو رعایت نکنی چه مشکلاتی پیش میاد ؟ dirty read و phantom readو non-repeatable read چیا هستن ؟
👈🏻 چهار سطح ایزوله سازی کدوما هستن ؟


تکه‌ تکه، اما قوی‌ : Sharding، Partitioning و Replication (قسمت آخر از مفاهیم دیتابیس)
👈🏻 رپلیکیشن، شاردینگ و پارتیشن چی هستن ؟
👈🏻 مزیت هرکدوم چیه ؟
👈🏻 چه موقع از کدوم استفاده کنیم ؟


@LearnByLearn
چرا Composite Index می‌تونه کارمون رو راحت‌تر کنه؟
فرض کنید یه جدول users داریم که دو تا ستون مهم داره:
(تاریخ ثبت‌نام کاربر) signup_date
(شهر محل سکونت کاربر) city
حالا می‌خوایم این کوئری رو اجرا کنیم:
"همه کاربرهایی که بعد از یه تاریخ خاص ثبت‌نام کردن و تو شهر تهران هستن رو پیدا کن."

اگر فقط روی signup_date ایندکس داشته باشیم:
خب MySQL اول میره تو ستون مرتب‌شده تاریخ، مثلاً 1000 تا کاربر که شرط تاریخ رو دارن پیدا می‌کنه.
بعدش مجبور میشه تو این 1000 تا رکورد، دونه‌دونه بررسی کنه با پیچیدگی زمانی (o n) که کدوم کاربر تو تهران زندگی می‌کنه. این مرحله می‌تونه کند باشه، مخصوصاً اگه تعداد رکوردها زیاد باشه.

اگر از Composite Index استفاده کنیم:
به‌جای اینکه یه ایندکس جدا روی هر ستون داشته باشیم، می‌تونیم یه ایندکس ترکیبی روی signup_date و city تعریف کنیم. اینجوری:
و MySQL هم‌زمان شرط تاریخ و شهر رو بررسی می‌کنه و فقط اون رکوردهایی که هر دو شرط رو دارن پیدا می‌کنه. سرعت کوئری کلی بهتر میشه.

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

DevTwitter | <Saber Qadimi/>
اگه نمیخواید خیلی کانفیگ های mysql رو تغییر بدید وقتی دارید بین سرور ها cross database،  جوین کوعری میزنید تو لاراول ، joinSub() رو استفاده کنید. کار کثیفیه ولی چون DB layer کار نمیکنید این راه حل مناسبیه. وگر نه توی mysql میتونید از فیچر Federated Storage Engine استفاده کنید.

اپروچ های مختلف برای این کار. تو خود mysql و laravel. البته درستش اینه که شما همه این ها رو Store Procedure کنید و تو app layer فقط اون ها رو کال کنید.

البته بگم این کار خیلی تمیز ترم میشه تو PostgreSQL که فیچرش میشه
‏FWD (foreign data wrapper)
‏که البته پیشنهاد من اینه که کلا از postgres برای این مدل query ها استفاده کنید.

DevTwitter | <iman/>


🕸 https://linktr.ee/Labdon
👍3
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