نمایش نتایج 1 تا 2 از 2

نام تاپیک: بهترین روش ذخیره عکس

  1. #1
    کاربر دائمی آواتار mtnam1372
    تاریخ عضویت
    آذر 1390
    محل زندگی
    کاشان
    سن
    30
    پست
    162

    بهترین روش ذخیره عکس

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

  2. #2
    کاربر دائمی آواتار mazoolagh
    تاریخ عضویت
    اردیبهشت 1384
    سن
    71
    پست
    3,061

    نقل قول: بهترین روش ذخیره عکس

    سلام و روز خوش

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

    ولی بطور کلی یه مواردی رو میشه گفت (هرچند در ریز موارد شاید هنوز بالا پایین بشه کرد):
    اگر عکس رو در دیتابیس ذخیره کنین:
    کار backup/restore رو راحتتر میکنه و
    امنیت عکسها و یکپارچگی اونها با بقیه دیتابیس بهتر هست،
    ولی در مقابل هزینه خود دیتابیس بالا میره،
    و طراحی دیتابیس و عملیات پیچیده تر میشه،
    و از همه مهمتر (به احتمال خیلی زیاد) روی پرفورمنس اثر منفی داره.
    این تاثیر پرفورمنس رو باید خیلی دقیق بررسی کنین چون به تعداد و اندازه متوسط عکس ها و حتی این که سیستم عامل چی هست بستگی داره.
    چون اگر عکسهای شما سایزش کوچک باشه (در حد چند 100 کیلوبایت) ذخیره در دیتابیس پرفورمنس بهتری میتونه داشته باشه،
    در مقابل برای عکسهای بزرگ (چند مگابایتی) ذخیره در فایل پرفورمنس بهتری داره.

    از طرفی اگر عکس ها رو به صورت فایل ذخیره کنین:
    پرفورمنس میتونه خیلی بهتر باشه (یک اما داره - که پاراگراف بالا اشاره شد)،
    هزینه کمتر هست - چون معمولا قیمت هر گیگ فضای دیسک خیلی از کمتر هر گیگ فضای دیتابیس هست،
    عکس ها میتونه در جاها (سرورها)ی مختلف ذخیره بشه که قابلیت انعطاف و مقیاس پذیری رو راحتتر میکنه،
    کدنویسی خیلی راحتتر و ساده تر هست،
    در مقابل عملیات backup/restore پیچیده تر میشه.

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

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

    در مورد MYSQL اطلاع ندارم، ولی در MSSQL یک تکنیکی هست به اسم file stream،
    به این صورت که دیتا فیلدهای باینری بزرگ رو پشت پرده به صورت فایل ذخیره میکنه (البته خودکار نیست و باید دیتابیس رو تنظیم کنین)
    در نتیجه مزایای ذخیره در دیتابیس (یکپارچگی) و ذخیره در فایل (پرفورمنس) رو با هم دارین.
    =========
    در بحث مقایسه، چیز بد یا خوب مطلق نداریم،
    اما انتخاب بد و خوب داریم (با توجه به شرایط و وزن پارامترها).

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •