ابزار HammerDB
محکزنی پایگاه داده (Database Benchmarking) نقشی حیاتی در زیرساختهای فناوری اطلاعات مدرن ایفا میکند و به سازمانها اجازه میدهد تا از عملکرد، مقیاسپذیری و قابلیت اطمینان سیستمهای خود اطمینان حاصل کنند. در میان ابزارهای متعدد موجود، دو ابزار با اهداف کاملاً متفاوت خودنمایی میکنند. از یک سو، HammerDB به عنوان یک ابزار محکزنی تراکنشیِ عمومی شناخته میشود که برای ارزیابی طیف گستردهای از پایگاههای داده طراحی شده است.
HammerDB به عنوان یک ابزار استراتژیک و در دسترس، به متخصصان اجازه میدهد تا بارهای کاری تراکنشی استاندارد صنعتی را شبیهسازی و عملکرد سیستمهای پایگاه داده مختلف را ارزیابی کنند. اهمیت این ابزار در این است که بدون هزینه و پیچیدگیهای گواهینامههای رسمی TPC، یک راهکار سریع و قابل اعتماد برای سنجش کارایی ارائه میدهد. HammerDB برای ارزیابی کارایی سیستمها از طریق اجرای بارهای کاری تراکنشی طراحی شده است. ویژگی کلیدی این ابزار، ارائه نتایج عملکردی یکسان و باثبات در یک پیکربندی سیستمی بدون تغییر است. این بدان معناست که اگر آزمونهای مکرر نتایج متفاوتی را نشان دهند، این ناهماهنگی به احتمال زیاد به وجود اشکال در سیستمعامل، سختافزار یا خود پایگاه داده اشاره دارد و نه در ابزار محکزنی.
.png)
شکل: نمایی از ابزار HammerDB
بارهای کاری این ابزار کاملاً مبتنی بر استانداردهای TPC، به ویژه TPC-C، هستند. با این حال، تحلیل دقیق نشان میدهد که بار کاری TPC-C در HammerDB به صورت جزء به جزء با مشخصات رسمی TPC یکسان نیست و به همین دلیل، نتایج آن مستقیماً با نتایج رسمی TPC قابل مقایسه نیست. مزیت اصلی این رویکرد، ارائه یک جایگزین سهل، بدون هزینه و با راهاندازی سریع برای محکهای پیچیده و پرهزینه رسمی TPC است که در عین حال اجراهایی با کارایی و قابلیت اطمینان بالا را فراهم میکند. HammerDB از طیف وسیعی از پایگاههای داده محبوب پشتیبانی میکند که شامل موارد زیر است:
.jpg)
شکل : پایگاههای داده قابل پشتیبانی از HammerDB
بر اساس Release Notes رسمی، آخرین نسخه آن نسخه 5.0.0 هست و مهمترین تغییرات این نسخه نسبت به نسخه ۴.۱۲ شامل موارد زیر است:
- بهبود عملکرد در SQL Server
- جایگزینی ابزار BCP با Bulk Insert
- فرآیند بارگذاری دادهها سریعتر شده
- کارایی تستها افزایش پیدا کرده
- وابستگی به ابزارهای خارجی کمتر شده
- اضافه شدن ایندکسها به جدول Orders در تست TPROC-H
- بهینهتر شدن اجرای Queryهای تحلیلی
- افزایش دقت تستهای Partitioned Row Store
- افزایش کارایی شبیهسازی سناریوهای واقعی
- ارتقا نسخه Docker به 4.12
- سازگاری بهتر با محیطهای Container
- سادهتر شدن استقرار در محیط Cloud و DevOps
- افزایش پایداری اجرا در تستهای مقیاس بزرگ
- اصلاح خطای اجرای TPCH در حالت Single User
- افزایش قابلیت اعتماد تست
- جلوگیری از خطا در سناریوهای تست محدود
- اضافه شدن قابلیت Keepalive در datagenrun
- جلوگیری از قطع اجرای تولید داده
- افزایش پایداری تستهای طولانیمدت
ارزیابی عملکرد با ابزار HammerDB
خروجی محک HammerDB شامل دو مورد: (1) TPM و (2) NOPM است. TPM عبارت است از تعداد تراکنشهایی که در واحد زمان انجام شده و سامانه نسبت به آنها پاسخگو بوده است. توجه به این نکته ضروری است که TPMهای گزارششده برای سامانههای مختلف تنها زمانی قابلمقایسه است که بر روی پایگاه دادههای یکسان بهدستآمده باشند. از طرف دیگر، معیار NOPM یا New Orders per Minute معیاری است که مستقل از پایگاه داده موردمطالعه و تعداد سفارشهای وارده در هر دقیقه را مشخص میکند. در آزمون پایگاه داده با استفاده از محک HammerDB، اجرای برنامه محکهای TPCC و نظایر آن به همراه شبیهسازی پایگاه داده نظیر MySQL و یا هر پایگاه داده دیگری قابل انجام است. بدین منظور باید این پایگاه داده بر روی دیسک و یا حجم اختصاصیافته از سوی سامانه ذخیرهسازی داده قرار بگیرد. این روند در نمایش داده شده است. در نهایت مواردی نظیر پهنای باند، تأخیر و TPS بهعنوان خروجی این محک قابل گزارش است.
.jpg)
شکل : نمایی از آزمون پایگاه داده روی سامانه ذخیرهسازی
