بررسی و ارزیابی چند Embedded Database رایج، بخش دوم

tstII در پست قبلی آزمون تداد رکورد بر ثانیه رو در مورد چندین Embedded Database رایج برای 1 میلیون رکورد را انجام دادم، تو تست دوم زمان انجام همان تست ها را برای 250.000 رکورد خواهید دید.

خیلی خوشحالم که پست قبلی مورد توجه دوستان قرار گرفت و ایمیل و بعضا کامنت اظهار لطف کردند… انشاء الله در آینده ای نچندان دور در صورت محیا شدن امکانات سعی خواهم کرد تا تست بین اراکل 11g و SQL Server 2008 R2 را بر روی سرور واقعی با حداقل 24 گیگ رم و دوتا پردازنده ی 5560 Xeon یعنی 16 پردازنده منطقی و دیسک های 15k SAS انجام بدم، ولی دوتا مانع فعلا وجود داره، اولیش وقت من و دومیش هم وقت من 🙂 چون طراحی تست که نیازمند سنجیدن پارامترهای زیادیه که ما رو به شرایط عادلانه و عدد واقعی تر نزدیک کنه بسیار وقتگیره. (هدف آزمونی متفاوت با آزمون های استاندارد TPC.org خواهد بود)

–> و اما تست دوم که زمان رو معیار سنجش قرار دادم… در بخش بعدی تست سایز خواهد بود و در پست چهارم این سری از آزمون ها به ارزیابی نهایی و مقایسه امکانات هر دیتابیس و بیان شرایطی که تست ها رو انجام دادم خواهم پرداخت.

در تست دوم (زمان) آزمون برای موارد زیر انجام گرفته است:

  • افزودن رکورد به جدول (Append)
  • مرور یک به یک رکوردها (Enumerate)
  • ویرایش داده ها (Update)
  • کپی داد های جدول (Clone)
  • مرتب سازی (Double Type Sort)
  • مرتب سازی (String, DateTime types Sort)
  • ورود همزمان داده ها به چند جدول (Multitable insert)
  • مرور داده ی زمان-تاریخ صعودی (DateTime Enumeration ASC)
  • مرور داده ی زمان-تاریخ نزولی (DateTime Enumeration DSC)
  • ورود داده با ترتیب تصادفی (Random Insert)
  • مرور داده ها به صورت بخش های جداگانه و بدون ترتیب (Fragmented Enumerate)
  • دسترسی تصادفی داده ها (Random Access)
  • حذف داده ها (Delete)

Summery summery

Append
Append

Enumerate
Enumerate

Update
Update

Clone 
Clone

Sort-Double
Sort – Double

Sort-String-date
Sort – String, DateTime

Insert-MultiTable
Insert – MultiTable

Insert-date
Insert – DateTime

Enumerate-date-dsc
DateTime – Enumerate – DSC

Enumerate-date
DateTime – Enumerate – ASC

insert-random
Random Insert

Enumerate-fragmented 
Fragmented Enumerate

RandomAccessRandom Access

delete
Delete

۱۴ دیدگاه دربارهٔ «بررسی و ارزیابی چند Embedded Database رایج، بخش دوم;

  1. َخوب راستش مقداری گیج شدم. واحدسنجش در این تست زمان هست، پس در هر یک از آزمون ها عدد کمتر بهینه تره.اما در نمودار نهایی که بر حسب Rec/Sec محاسبه شده DB4 از بقیه بهتر نمود پیدا کرده در حالیکه در اکثر تست ها بیشترین زمان رو به خودش اختصاص داده همینطور Firebird.
    میشه راهنمایی کنید من کجای کارو اشتباه فهمیدم!؟!

    پاسخ
  2. جناب عابدین زاده عزیز، نمودار جمع بندی همون نمودار ردیف اول که پشت زمینه ی سیاه و ستون های نارنجی داره است، همون طور اگر دقت کنید اونجا هم مثل بقیه نمودارها، اوضاع DB4O, Firebird خوب نیست… احتمالا مشکل بی دقتیت بوده که عنوان تصاویر رو نخوندی و تو ردیف آخر دنبال نتیجه گیری بودی…
    امیدوارم که مطلب ها مفید باشن و مورد استفاده، اگر پیشنهادی برای کارهای مشابه به این مقایسه ها داشتی خوشحال میشم در میون بگذاری… 🙂

    پاسخ
  3. من همه رو دیدم اما همونطور که عرض کردم واحد نمودارنهایی Rec/Sec درج شده. خوب من استنباطم این بود که این نمودار هم مثل نمودار تست اول معیار رو تعداد رکورد های درج شده در ثانیه در نظر گرفته که الان که به اعداد دقت میکنم میبینم که اشتباه کردم.
    اما جسارت نباشه فکر میکنم در نمودار نهایی summary Rec/Sec رو باید به Summary Sec تغییر بدید.باز هم عذر خواهی میکنم اگر هنوز کج فهمی میکنم

    پاسخ
  4. کاملا درسته چون من برای زیباتر شدن چارت ها، اطلاعات نورم افزار تست ام رو و چارت هاش رو به اکسل منتقل کردم و یادم رفته اون رو از تست اولی اصلاح کنم. ممنون از یادآوریت در اولین فرصت اصلاح خواهم کرد.
    از اتهام بی دقتیت عذرخواهی میکنم و از دقتت تقدیر و تشکر 🙂

    پاسخ
  5. سلام. ممنون به خاطر مطالب خوبتون
    من می خواستم بدونم این نمودارهایی که گذاشتید و تفاوتهایی که بیت نرم افزارها نشان دادید بین خود نرم افزارها هم وجود داره یعنی مثلا MS SQL server 2008 با اراکل هم به همین نسبت در موارد مختلف متفاوتند.

    پاسخ
  6. تستی که من طراحی کردم همون طور که در مطلب هم اشاره شده، مربوط به Embedded DB ها میشه برای تست سرور ها مثل Oracle 11g, SQL Server 2008 تست ها کاملا متفاوته.

    در صورتی که منظورتون رو درست متوجه نشدم، لطفا بیشتر توضیح بدید… 🙂

    پاسخ
  7. ممنون. منظور من دقیقا همین بود .
    آیا شما سایت یا منبعی سراغ دارید که بتونه کلا نرم افزارهای مدیریت پایگاه داده رو مثل کاری که شما کردین با هم مقایسه کرده باشه.
    من در واقع در یه گزارش نیاز دارم که با دلیل بگم MS SQL Server 2008 بهترین ابزار برای مدیریت پایگاه دادس.

    پاسخ
  8. یکی از منابع مستقل ارزیابی دیتابیس ها در حوزه ی OLTP سایت http://tpc.org است.
    تست های متنوع وزیادی وجود داره…
    روی پلتفرم ویندوز SQL Server حرف اول رو میزنه ولی روی پلتفرم های دیگه اراکل با بهره گیری از RAC که توی همین بلاگ راجع بهش قبلا نوشتم…
    البته اینها فقط تست های خاص و محدود به ارزیابی مولفه های مورد نظرشونه…
    اگر مورد استفادتون رو توضیح دهید میتونم راجع به مقایسه با اراکل و انتخاب ارجح کمک کنم

    پاسخ
  9. سلام.بازم ممنون از پاسختون.
    من بر روی امنیت SQL SERVER 2008 کار می کنم و حالا باید از کارایی که کردم یه گزارش تهیه کنم در ابتدای گزارش باید بگم که چرا برای کار این نرم افزار را انتخاب کردم .حالا نیاز به یک منبع علمی دارم تا بگم SQL ار همه نرافزارها بهتره مثلا نمودارهای آماری که شما توی سایتتون ارائه کرده بودین اگر در مورد خود نرم افزارها بود و نه Embedded DB عالی … بود.
    در ضمن سایتی که لطف کرده بودین و معرفی فرموده بودید رو سر زدم ولی به قول ما اصفانیا خیلی چیزی اِزش دسگیرم نشد.
    به هر حال اگر بتونید در این زمینه راهنمایی بفرمایید ممنون میشم.

    پاسخ
  10. جناب آقای امین مصباحی سلام
    خیلی ممنون واقعا خیلی مفید بود و من مطمئنم که وقت زیادی گذاشتید
    من خیلی دنبال یک دیتابیس embedded گشتم یعنی حدود ۲ هفته تو اینترنت وقت گذاشتم از صبح تا شب و در نهایت دیتابیس vistadb را انتخاب کردم ولی من نتونستم براش کرک پیدا کنم و هنوزم مشکلم حل نشده اگه شما از این دیتابیس کرکی سراغ دارید خواهشا به من بگید.
    نظرتون راجع به Firebird چیه؟

    پاسخ
  11. سلام
    VistaDB به جز برخی ورژن هاش که دارای کرک هستند، فاقد کرک معتبری است.
    گزینه های کدباز من بعد از SQL Compact، از SQLlite و در گام سوم FireBird رو توصیه میکنم

    پاسخ
  12. مقایسه جالبی بود ولی نکات زیر در مورد آن وجود دارد.
    ۱- معمولا در چنین مقایسه هایی مشخص می کنند که از چه سیستم سخت افزاری و با چه مشخصاتی استفاده شده است تا مستند باشد.
    ۲- دستورات و ساختار جداول مرتبط با آزمایش را معرفی می کنند تا فرد خواننده بتواند با دقت بیشتری به عملیات اجرا شده و آمارهای مربوطه توجه کند.
    ۳- آیا در زمان اجرای این آزمایش، شرایط آزمایشگاهی مناسب برقرار بوده است؟

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

    با تشکر

    پاسخ
  13. استاد مصباحی
    سلام و عرض ادب ..
    مقایسه جالبی بود ولی نکات زیر در مورد آن وجود دارد.
    ۱- معمولا در چنین مقایسه هایی مشخص می کنند که از چه سیستم سخت افزاری و با چه مشخصاتی استفاده شده است تا مستند باشد.
    ۲- دستورات و ساختار جداول مرتبط با آزمایش را معرفی می کنند تا فرد خواننده بتواند با دقت بیشتری به عملیات اجرا شده و آمارهای مربوطه توجه کند.
    ۳- آیا در زمان اجرای این آزمایش، شرایط آزمایشگاهی مناسب برقرار بوده است؟

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

    با تشکر

    پاسخ

پاسخ دادن به Amin Mesbahi لغو پاسخ