2010-12-13 13 views
9

मेरे पास एक डेटाबेस है, जो मैं पूछता हूं, और मुझे यकीन है कि परिणामों को क्रमबद्ध करने के लिए कहां से निष्पादित किया जाना है, अब तक मेरे पास निम्नलिखित विकल्प हैं।मैं कहां क्रमबद्ध हूं?

  • MySQL क्वेरी पर।
  • सूची स्तर पर
  • (एक LinkedList का उपयोग करना) परिणाम दिखा रहा है (मूल रूप से jsp में) से पहले comparators का उपयोग एक अवर्गीकृत सूची

सूची ObjectDTO द्वारा रचित है तो जहां यह और अधिक कुशल हो जाएगा छंटाई। कोई विचार?

+2

ध्यान दें कि आप आमतौर पर JSP फाइलों में जावा कोड से बचने के लिए चाहते हैं कर सकते हैं का मानना ​​है की है। तो, आखिरी बिंदु "मूल रूप से सर्वलेट में" हो सकता है। – BalusC

उत्तर

13

यदि संभव हो तो आपको डेटाबेस में सॉर्टिंग करना चाहिए।

  • डेटाबेस अनुक्रमणिका का उपयोग कर सकते हैं। यदि कोई उपयुक्त इंडेक्स उपलब्ध है तो परिणामों को पहले से क्रमबद्ध क्रम में डिस्क से पढ़ा जा सकता है, जिसके परिणामस्वरूप प्रदर्शन में वृद्धि होती है - कोई अतिरिक्त ओ (एन लॉग (एन)) सॉर्टिंग चरण आवश्यक नहीं है।
  • यदि आपको केवल पहले x परिणामों की आवश्यकता है तो आप डेटा ट्रांसफर को भी कम कर सकते हैं (दोनों नेटवर्क ट्रांसफर को कम कर सकते हैं, और उपयुक्त इंडेक्स होने पर डिस्क एक्सेस भी कम कर सकते हैं)।
+0

तो क्या मुझे सम्मिलन आदेश रखने के लिए एक लिंक्डलिस्ट का उपयोग करना चाहिए? – Triztian

+2

@Triztian: तेजी से पुनर्प्राप्ति के लिए एक 'ArrayList' बेहतर है। एक 'लिंक्डलिस्ट' हटाने के लिए केवल तेज़ है (यदि आपको परिणाम प्रदर्शित करने का एकमात्र उद्देश्य है तो आपको आवश्यकता नहीं है)। – BalusC

+0

हम्म, मुझे नहीं पता था, मैंने सूची और संग्रह के बारे में इंटरफेस और सार तत्व पढ़े हैं, लेकिन कभी-कभी इसके भ्रमित – Triztian

16

डेटाबेस। इंडेक्स और डेटा के बारे में अन्य जानकारी का उपयोग करके, डीबी इस पर बहुत अच्छे हैं।

+0

हाँ मैंने फैसला किया है कि जिस तरह से मैं इसे धन्यवाद दूंगा। – Triztian

0

सर्वश्रेष्ठ MySQL क्वेरी पर है।

एक) यह

ख) ऐसा करने के लिए आप एक सूचकांक तरह होता है जब सूचकांक बनाई गई है या जब नई पंक्तियाँ स्वचालित रूप से डाला जाता है (कभी कभी एक सूचकांक एक पुनर्गठन की जरूरत का उपयोग करते हैं आसान है, लेकिन यह एक डाटाबेस व्यवस्थापक है दैनिक व्यापार। यह लागू होता है यदि तालिका बहुत बड़ी है।)।

ङ) यदि सूचकांक जहां खंड सामान्य रूप में उपयोग कर सकते है में प्रयोग किया जाता कॉलम शामिल हैं तेजी से

घ) आप पूरी तालिका अपने आप के लिए

तरह करने के लिए हर बार पढ़ने की जरूरत नहीं है ई) यहां तक ​​कि अगर आप कोई सूचकांक मैं डीबी छँटाई सबसे अच्छा

आशा है कि यह मदद करता है

संबंधित मुद्दे