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

हाइबरनेट पैरामीटरयुक्त sql क्वेरी धीमी और सक्रिय ऑरैकल सत्र

मुझे नहीं पता कि यह आपकी समस्या है, लेकिन Oracle किसी क्वेरी को पार्स करते समय बाइंड वैरिएबल मानों पर नज़र रखता है और फिर भविष्य के निष्पादन के लिए क्वेरी प्लान को सहेजता है, इसलिए इसे हर बार नए के साथ चलने पर क्वेरी को पार्स करते रहने की आवश्यकता नहीं है बाइंड वैरिएबल का सेट। लेकिन हर बार और थोड़ी देर में क्वेरी को फिर से पार्स किया जाता है। यदि कुछ असामान्य बाइंड वैरिएबल मान किसी पार्स के दौरान पारित होते हैं तो एक खराब योजना संग्रहीत और उपयोग की जाती है। यह बाइंड वेरिएबल्स का अभिशाप है। वे पार्सिंग को कम करते हैं लेकिन जब प्रश्नों को फिर से पार्स किया जाता है तो योजना को एटिपिकल बाइंड वैरिएबल वैल्यू पर फ़्लिप कर सकते हैं। संकेत मदद कर सकते हैं। हम एसक्यूएल प्रोफाइल का उपयोग बाइंड वेरिएबल्स वाले प्रश्नों की योजनाओं में लॉक करने के लिए करते हैं जो योजनाओं को बदलते हैं। कभी-कभी आप अनुकूलित कर सकते हैं कि अनुकूलक आंकड़े कब और कैसे एकत्र किए जाते हैं ताकि एक अच्छी योजना बनाई जा सके, भले ही बाइंड वेरिएबल्स में कौन से मान पारित किए गए हों।

वैसे भी, यह कुछ ऐसा है जो मैं हर समय देखता हूं और आपकी समस्या हो भी सकती है और नहीं भी।

बॉबी




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle - dbms_utility.exec_ddl_statement का उपयोग कर कर्सर ठीक से क्रियान्वित नहीं कर रहा है

  2. ओरेकल में टेबल को कैसे अपडेट करें

  3. सभी रिकॉर्ड देखने के लिए Oracle SQL डेवलपर में बफर आकार कैसे बढ़ाएं?

  4. SQL - एक आदेशित सूची में परिवर्तनों की संख्या की गणना करें

  5. Oracle ने बाहरी सम्मिलित क्वेरी को छोड़ दिया