اذهب إلى المحتوى

السؤال

نشر

مرحبا 

لدي تساؤل عن جلب البيانات من قاعدة البيانات بإستعمال جانغو

لنفترض انه لدي قاعدة بيانات واريد جلب بعض المعلومات وعرضها  وفقا لفلاتر معينة ،هل من الافضل ان اقوم بتطبيق الفلاتر قبل جلب البيانات من قاعدة البيانات وبالتالي جلب جميع البيانات وثم عرض البيانات التي اريدها وفقا للفلاتر  داخل القالب ، مثل 

()Example = MODEL.objects.all

ام جلب البيانات وفلترتها اثناء الاستعلام؟

 ( الفلاتر هنا)Example = MODEL.objects.filter

حيث اني اريد ان اعلم اي الطريقتين افضل واسرع من ناحية الاداء 

Recommended Posts

  • 1
نشر

من ناحية الأداء والفعالية من الأفضل دائما تطبيق الفلاتر أثناء الاستعلام عن البيانات مباشرة من قاعدة البيانات باستخدام الطريقة الثانية:

example = MODEL.objects.filter(الفلاتر هنا)

السبب في ذلك هو أن تصفية البيانات في قاعدة البيانات قبل جلبها إلى التطبيق يؤدي إلى جلب عدد أقل من السجلات وبالتالي تقليل الحمل على الذاكرة والشبكة، فقاعدة البيانات تمتلك محركات تصفية واستعلام فعالة جدا تستطيع تحديد البيانات المطلوبة بسرعة كبيرة مقارنة بمحاولة جلب جميع البيانات ثم تصفيتها على مستوى التطبيق.

أما إذا قمت بجلب جميع السجلات ثم قمت بتصفية البيانات داخل القالب أو بعد جلبها في الكود، فسيؤدي ذلك إلى تحميل جميع السجلات في الذاكرة، مما قد يؤدي إلى بطء الأداء وزيادة استخدام الموارد، خصوصا إذا كانت قاعدة البيانات تحتوي على عدد كبير من السجلات.

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

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

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...