۲۹ شهریور ۱۴۰۳

Techboy

اخبار و اطلاعات روز تکنولوژی

چرا عملکرد پایگاه داده ابری شما بد است؟

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

من لحظات “حس ششم” را می گذرانم که پایگاه داده های مرده را در حال راه رفتن می بینم. با توجه به اینکه GenAI آماده است تا داده های شما را برای ناهار بخورد، زمان رفع مشکلات عملکرد فرا رسیده است.

“برنامه ابری من کند است” یک شکایت رایج است. با این حال، نه بار از ده بار دلیل آن به پردازش برنامه یا ناتوانی پایگاه داده در ارائه برنامه در سطح عملکرد مورد نیاز مربوط نمی شود.

تقریباً سال ۲۰۲۴ است. چرا ما هنوز با عملکرد پایگاه داده مبتنی بر ابر این مشکلات را داریم؟ شایع ترین علل چیست؟ چگونه می توانیم آنها را تعمیر کنیم؟ من چند ایده دارم. 

آیا انتخاب راست cبلند سرویس؟ 

ارائه دهندگان Cloud بسیاری از خدمات پایگاه داده مانند Amazon RDS، Azure SQL Database و Google Cloud SQL را ارائه می دهند. گاهی اوقات پایگاه داده ای که بر اساس الزامات، مقیاس پذیری و انتظارات عملکرد برنامه خود انتخاب می کنید باید برای اطمینان از تناسب مناسب تر تنظیم شود.

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

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

Hاوه دپایگاه شما طراحی و نمایه سازی؟ 

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

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

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

آیا در حالکال زدنرمنابع aبه طور مناسب؟

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

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

آیا ذخیره‌سازی cپیکربندی یک فاجعه؟

بهتر است پیکربندی‌های ذخیره‌سازی را بر اساس ویژگی‌های حجم کاری بهینه کنید، نه بر اساس بهترین روش‌هایی که در دوره گواهینامه ابری دیدید. به عنوان مثال، از SSD ها برای بارهای کاری فشرده I/O استفاده کنید اما بدانید که اغلب گران تر هستند. همچنین، ردیف ذخیره سازی مناسب را انتخاب کنید و مکانیسم های کش را پیاده سازی کنید تا نیاز به عملیات ورودی/خروجی مکرر دیسک را کاهش دهید. در واقع، حافظه پنهان نیز به یک حالت خودکار رفته است، جایی که ممکن است برای یافتن عملکرد بهینه با حداقل هزینه، به کنترل دقیق بیشتری نیاز داشته باشید.

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