ما هي أفضل طريقة للحصول على رقم تقريبي من نتائج البحث من استعلام؟

StackOverflow https://stackoverflow.com/questions/600972

سؤال

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

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

مشكلتي هي كيف يمكنني تخزين؟ أو الحصول على هذا العدد بشكل كبير دون استنفاد موارد ذاكرة الخادم الخاص بي؟

ايم راجع للشغل باستخدام PHP و MySQL إذا كان هذا هو والمعلومات اللازمة.

هل كانت مفيدة؟

المحلول

هل يمكن تنفيذ بشكل دوري الاستعلام ثم تخزين النتائج (على سبيل المثال، في جدول مختلف).

وقال إن النتائج لن تكون تماما ما يصل إلى التاريخ، ولكن سيكون تقريب جيد ومن شأنه أن يقلل من الحمل على الخادم.

نصائح أخرى

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

وتشغيل الاستعلام مع 'شرح' قبل 'SELECT "، ثم تتضاعف كل النتائج في العمود الصفوف.

ودقة هو متغير بدرجة كبيرة. وقد عمل مع بعض أنواع من الاستعلامات، ولكن تكون ذات جدوى على الآخرين. فإنه يجعل من استخدام إحصاءات حول البيانات التي محسن الخلية يحافظ.

ملحوظة: استخدام ANALYZE TABLE على جدول دوري (أي مرة واحدة في الشهر) قد تساعد في تحسين دقة هذه التقديرات

هل يمكن إنشاء جدول آخر مع معرف من المناطق، ومن ثم إنشاء برنامج نصي الذي يمتد على جميع المناطق في وقت بطيء (ليلة على سبيل المثال) وبملء هذا الجدول الإضافي مع البيانات.

وبعد ذلك عندما كنت تحوم تحصل على ID من هذا الجدول الجديد، ولها في معظم يوميا من العمر.

وهذه المسألة مع أن يمكن أن يكون ذلك لم يكن لديك الوقت بطيئا أو أن التشغيل من خلال ذلك يتم في الليل وقتا طويلا وهو جدا الثقيلة العملية.

وتحرير على تعليقك.

ونلقي منطقة كبيرة أو دولة إذا كنت تستطيع، هل استعلام تلك المنطقة داخل المتصفح SQL لكم الاختيار والتعرف على الوقت الذي سيستغرقه.

إذا كان لها أن المبلغ الذي يمكن توزيعه حتى بعض البلدان سيتم تنفيذ في ساعات معينة، البلدان الصغيرة معا والبلدان الكبيرة وحدها في بعض الفترة.

هل لديك قلق ان كنت لا أريد أن أذهب إلى قاعدة بيانات لهذه المعلومات على الإطلاق عند حدوث الحدث لفة من أي وقت مضى، أم أنها سوف تظن أن الاستعلام سيكون بطيئا جدا وتريد معلومات من قاعدة البيانات ، ولكن بشكل أسرع؟

إذا كان لديك استفسار بطيئة، يمكنك ضبط ذلك، أو استخدام بعض الاقتراحات الأخرى التي قدمت فعلا.

وبدلا من ذلك، وتجنب قاعدة بيانات ضرب تماما، يبدو أن لديك عدد محدود من المناطق على هذه الخريطة، ويمكنك تشغيل استعلام دوريا لجميع المناطق والحفاظ على أرقام في الذاكرة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top