الانتقال إلى المحتوى

ٍسؤال حول افضل حل لتخزين الصور مع اوراكل


samehsh1

Recommended Posts

اعمل على نظام ارشفة اليكترونية وهناك الالاف من الوثائق هل من الافضل تخزين صور الوثائق داخل قاعدة البيانات ام تخزينها على السيرفر  خارج قاعدة البيانات مع تخزين الاسماء ومعلومات المستند فقط داخل قاعدة البيانات ؟؟؟

 

اتمنى من الزملاء الذين لديهم خبرة بالامر ان يوضح لنا الافضل ولماذا ؟؟

تم تعديل بواسطة samehsh1
رابط هذا التعليق
شارك

وعليكم السلام ..

الأفضل من وجهة نظري هو تخزين الوثائق والمستندات في السيرفر عبر مسار معين

مع تخزين اسماء ومعلومات المستند ومساره داخل قاعدة البيانات

 

السبب في ذلك يرجع الى بطئ قاعدة البيانات عند تحميلها بمستندات ومرفقات 

ولكن استدعاء صورة من مسار معين أفضل وأسرع وأأمن 

تم تعديل بواسطة Faisal Matari
رابط هذا التعليق
شارك

بهذا الحجم سيسبب بطء شديد بقاعدة البيانات الافضل تخزين الصور داخل مسار مستقل بعيد عن قاعدة البيانات 

رابط هذا التعليق
شارك

يمكنك البحث في جوجل لمعرفة المميزات والعيوب لكل طريقة .

ملحوظة :- ( مع احترامى للجميع ) .

- كل كائنات قاعدة البيانات هى في النهاية ضمن ملفات على القرص الصلب .

- لا اعلم ان للحجم علاقة بالبطئ .

تم تعديل بواسطة eslam elbyaly
رابط هذا التعليق
شارك

  • بعد 2 أسابيع...

المفروض تعمل partitions  وتقسم الصور على البارتشنز حسب شرط او شروط حتى تتوزع الصور بنسب متكافئة . بهذه الطريقة سوف تتخلص من مشكله البطي وتكون الصور او الوثائق من جميع الانواع مخزونه في قاعده البيانات وليس خارجها.

رابط هذا التعليق
شارك

- لا اعلم ان للحجم علاقة بالبطئ .

ولك كل الإحترام أخي الكريم

 

ولكن ما نقصد به البطئ هو أثناء عملية استرجاع البيانات خاصة لو كانت بأحجام كبيرة،

فكما تعلم أن النص مثلاً c:\imegse\img1.jpg لا يتعدى 187 (بت) بقاعدة البيانات

بينما لو حفظ الصورة img1.jpg بقاعدة البيانات سيكون حجها على الأقل (1 كيلو بايت) اي ما يعادل 1024 بت.

 

وتبقى هذه وجهات نظر منزوايا مختلفه .

رابط هذا التعليق
شارك

 

- لا اعلم ان للحجم علاقة بالبطئ .

 

ولكن ما نقصد به البطئ هو أثناء عملية استرجاع البيانات خاصة لو كانت بأحجام كبيرة،

فكما تعلم أن النص مثلاً c:\imegse\img1.jpg لا يتعدى 187 (بت) بقاعدة البيانات

بينما لو حفظ الصورة img1.jpg بقاعدة البيانات سيكون حجها على الأقل (1 كيلو بايت) اي ما يعادل 1024 بت.

 

وتبقى هذه وجهات نظر منزوايا مختلفه .

 

كل الاحترام لك ,

لكن في النهاية حجم الصورة واحد في الحالتين .

يعنى في حالة تخزينها في قاعدة البيانات هيزيد عليها حجم النص c:\imegse\img1.jpg

رابط هذا التعليق
شارك

تخزين الملفات  خارج  و داخل قاعدة البيانات ..

لكل منهما له عيوبه و مميزاته و لكن باختصار  لو أن الملفات داخل قواعد البيانات فيجب أن تواجه بطء شديد في عملية الحفظ و الاسترجاع ( فليس حفظ 100ميجا من البيانات كحفظ 5 جيجا ) و بطء في الآداء العام لقاعدة البيانات (لان قاعدة البيانات دائما مشغولة في نقل البيانات و لان عدد الاتصالات لقاعدة البيانات غير مفتوحة فانها تظل في  حالة كتابة دائما لان الاستعلام عن بيانت بحجم 1-2 كيلو ليس كاستعلام عن 1-2 ميجا)  لأن أوراكل لا تجيب علي اي طلب منك بدون كتابة البيانات الخاصة به عبر ذاكرتها الخاصة سواء SGA أو PGA وليس الاعتماد علي تخزين الجهاز ذاته و فقط  و أيضا تحد من استخدام database links لانها لا تكتب في الذواكر الخاصة بالقاعدة المضيفة  و لكن علي الجانب الآخر يمكنك إدارة الملفات باحترافية و تقسيمها و أيضا تشفير الملفات و تأمينها و فعل ما تشاء ..

أما تخزينها بالخارج (خارج قاعدة البيانات) و استخدام اي طريقة للحصول علي الملف فيجعل قاعدة البيانات حرة و سريعة  سواءا في الاستعلام أو النسخ الاحتياطي و الاسترجاع و لكن يجب عليك ان تعلم بأن ملفات النظام غير مؤمنة و غير مرتبة و ستبذل مجهود إضافي لحفظها و التأكد من سلامتها و ضمانية اتاحتها ..

 

و آسف علي الاطالة ...

 

* بالنسبة لسؤال م اسلام .. البطء لا يأتي من التخزين ذاته و لكن البطء يأتي من طريقة تخزين الملفات داخل قاعدة البيانات فقاعدة البيانات تقوم بتحويل الملفات الي صيغة ,Hex decimal  binary لكي تقوم بتخزينة و لكي تقوم باسترجاعه تقوم ثانية بعكس العملية من binary أو اي صيغة أخري الي byte []   و من هنا يأتي البطء ...

رابط هذا التعليق
شارك

  • بعد 1 شهر...

اعمل على نظام ارشفة اليكترونية وهناك الالاف من الوثائق هل من الافضل تخزين صور الوثائق داخل قاعدة البيانات ام تخزينها على السيرفر  خارج قاعدة البيانات مع تخزين الاسماء ومعلومات المستند فقط داخل قاعدة البيانات ؟؟؟

 

اتمنى من الزملاء الذين لديهم خبرة بالامر ان يوضح لنا الافضل ولماذا ؟؟

الافضل ان تقوم بحفظ الصور والوثائق خارج قاعدة البيانات فى مسار معين هذا افضل واسرع عن تجربة

رابط هذا التعليق
شارك

  • بعد 1 سنة...

ممكن حد يشرح للعبد لله ازاي احفظ الصور في ملف علي السيرفر و اربط الصور ده مع الdatabase عن طريق path لكي يتم استدعائه مجدد و لكم كامل الشكر

رابط هذا التعليق
شارك

  • بعد 2 شهور...

قم بعمل فولدر على الجهاز وليكن في ال c تحت مجلد اسمه images وقم بوضع الصور فيه بنفس كود الموظف واكتب مايلي
declare

 V_photo_filename varchar2(80);

 V_empID number;

begin

 V_empID :=:EMPNO;

 V_photo_filename :='C:\Images\'||to_Char(V_empID)||'.jpg';

 read_image_file(v_photo_filename,'jbg','IMAGE20');

end;

رابط هذا التعليق
شارك

  • بعد 8 شهور...

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   تمت استعادة المحتوى السابق الخاص بك.   مسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

جاري التحميل
×
×
  • أضف...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية