Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

खराब हाइबरनेट सीधे चलने की तुलना में प्रदर्शन का चयन करें - कैसे डिबग?

मदद के लिए आप सभी का धन्यवाद। लंबे समय तक उस समस्या से जूझने के बाद, आखिरकार kaliatech के जवाब ने मुझे समस्या को दूर करने में मदद की।

सबसे पहले, मैंने अपने प्रश्न में एक भयानक गलती की है। मैंने लिखा है कि:

<ब्लॉकक्वॉट>

इस क्वेरी को स्थानीय डेटाबेस के साथ चलाना वास्तव में तेज़ है, लेकिन इसे दूरस्थ रूप से उपयोग करना वास्तव में खराब है।

चूंकि यह पूरी तरह सच नहीं है। जो प्रश्न मैंने हाइबरनेट में किया था वह एक जैसा दिखता है:

select s.* from sales_unit s left join sales_unit_relation r on (s.sales_unit_id = r.sales_unit_child_id) where r.sales_unit_child_id is null

लेकिन वास्तविक क्वेरी जो मैंने उदाहरण के लिए SQL PLus या Navicat के साथ की थी:

select * from sales_unit s left join sales_unit_relation r on (s.sales_unit_id = r.sales_unit_child_id) where r.sales_unit_child_id is null

कृपया ध्यान दें कि पहली क्वेरी का चयन शुरू होता है:select s.* ... और दूसरा है select * ... . और यही कारण था इतने खराब प्रदर्शन का। अब दोनों प्रश्न कुछ ही समय में पूरे हो जाते हैं। सवाल यह है कि क्या अंतर है:प्रदर्शन मुद्दा:चुनिंदा एस के बीच अंतर। * बनाम चयन *



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. पाइथन cx_Oracle के लिए डॉकर कंटेनर में Oracle इंस्टेंट क्लाइंट स्थापित करें

  2. Oracle डेटाबेस में सेलेक्ट INTO स्टेटमेंट के साथ बल्क कलेक्ट क्लॉज का उपयोग कैसे करें

  3. Oracle में समय के बिना दिनांक प्रकार

  4. जब कोई परिणाम नहीं लौटाया जाता है तो ExecuteScalar () को संभालना

  5. एसक्यूएल स्ट्रिंग में एम्पर्सेंड चरित्र से बचना