كم كمية البيانات المتدفقة عبر الشبكة
#1
السلام عليكم ورحمة الله


عذرا لاني لا اتواجد وهذا لانشغالي ببعض الاعمال البرمجية

على العموم اريد ان استشيركم بحسبة حسبتها

لنفرض عندي 10 الالاف سجل لموظفين على السيرفر واريد عرض بيانات كل السجلات في جهاز طرفي وفي السجل حقل مثلا بالمؤهل الدراسي

الحالة الاولى : يوجد جدول به كل المؤهلات يرتبط بحقل المؤهل الدراسي والذي هو طبعا رقمي لتخزين رقم ID المؤهل وسيكون حجمه على ما عتقد 1 بايت
اذا واحد بايت ضرب 10 الالاف يساوي 10 الالاف بايت كمية البيانات المتدفقة عبر الشبكة

الحالة الثانية : حقل المؤهل الدراسي نصي ويتكرر فيه اسم المؤهل وتقريبا الحقل النصي سيأخذ 8 بايت
اذا 8 بايت في 10 الالاف بايت يساوي 80 الف بايت وهي كمية البيانات المتدفقة عبر الشبكة

فهل هذا صحيح ام ان خيالي طفح بعيداً
قل: اللهم فاطِرَ السماوات والأرض عالم الغيبِ والشهادة، ربَّ كُلِّ شَيءٍ ومَلِيكَه، أَشْهد أن لا إله إلا أنت، أعوذ بك من شرِّ نفسي وشرِّ الشيطان وشِرْكِهِ وأن أقترف على نفسي سوءًا أو أجرُّه إلى مسلم
الرد
#2
سلام عليكم

الخيار الاول : اسرع وانسب لعمل الاستعلام (رغم تواجد join ) 
الخيار الثاني : انت مضطر لعمل DISTINCT وهو ما لا ينصح به لانه يبطي الاستعلام 
طبعا نحن نتكلم عن 5 الاف سجل فما فوق ؟ 

عموما : هذه بعض النصائح لتحسين الاستعلام

النصيحة 1: أضف الفهارس
النصيحة 2: تحقق من الفهارس غير المستخدمة
النصيحة 3: تجنب استخدام OR متعددة 
النصيحة 4: استخدم أحرف البدل او العلامة % في نهاية العبارة فقط .
النصيحة 5: تجنب الكثير من عمليات JOINs.
النصيحة 6: تجنب استخدام SELECT DISTINCT.
النصيحة 7: استخدم حقول التحديد بدلاً من التحديد *
النصيحة 8: استخدم TOP لأخذ عينات من نتائج الاستعلام.
نصيحة 10: تقليل من استخدام تلميح الاستعلام اثناء الفلترة (النصيحة 4)
نصيحة 11: اختصر الكود قدر الامكان
....
الفاشلون نوعان : الأول : فكر ولم يفعل .. والآخر: فعل ولم يفكر
[-] كل من 1 user says قال شكرا ل Mr.DOS على المشاركة المفيدة
  • Delphi4Us
الرد


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم