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

Microsoft SQL Server 2012 क्वेरी प्रबंधन स्टूडियो में JDBC 4.0 से अधिक लेकिन सेकंड (सेकंड) क्यों लेती है?

अनुकूली बफरिंग एक अच्छा जवाब है। मैं कनेक्शन की जांच करने की भी सिफारिश करता हूं' SET SQL सर्वर प्रोफाइलर के माध्यम से विकल्प।

जब आप कोई ट्रेस प्रारंभ करते हैं, तो सुनिश्चित करें कि ExistingConnections चूना गया। JDBC कनेक्शन और SSMS कनेक्शन से SPID की तुलना करें। ARITHABORT एक के रूप में दिमाग में आता है कि मैंने SSMS और JDBC ड्राइवर के बीच प्रदर्शन में अंतर देखा है। माइक्रोसॉफ्ट ने यहां संक्षेप में इसका उल्लेख किया है:http://msdn.microsoft.com/en-us/library/ms190306.aspx। यहां स्टैक एक्सचेंज की जानकारी:https://dba.stackexchange.com/questions/9840/why-would-set-arithabort-on-dramatically-speed-up-a-query

Oracle पर, मैंने setFetchSize . के साथ खेलकर बड़े प्रभाव देखे हैं Statement पर विधि / PreparedStatement वस्तु। जाहिर है, SQL सर्वर ड्राइवर उस पद्धति का समर्थन नहीं करता है। हालाँकि, इसके लिए ड्राइवर में एक आंतरिक विधि है। विवरण के लिए JDBC ड्राइवर का उपयोग करके SQL सर्वर में डिफ़ॉल्ट पंक्ति प्रीफ़ेच सेट करें देखें।

साथ ही, आप अपने while (rs.next()) . में क्या कर रहे हैं? कुंडली? एक कॉलम पढ़ने के अलावा कुछ नहीं करने की कोशिश करें, जैसे rs.getInt(1) . देखते हैं क्या होता है। यदि यह उड़ जाता है, तो इसका मतलब है कि बाधा परिणाम सेट के आपके पूर्व प्रसंस्करण में है। यदि यह अभी भी धीमा है, तो समस्या ड्राइवर या डेटाबेस में होनी चाहिए।

आप निष्पादन की तुलना करने के लिए SQL सर्वर प्रोफाइलर का उपयोग कर सकते हैं क्योंकि वे जेडीबीसी के माध्यम से आते हैं और जैसे ही आप इसे एसएसएमएस के माध्यम से चलाते हैं। सीपीयू की तुलना करें, पढ़ता है, लिखता है और अवधि। यदि वे अलग हैं, तो निष्पादन योजना शायद अलग है, जो मुझे पहली बात की ओर इशारा करती है जिसका मैंने उल्लेख किया था:SET विकल्प।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर में डेटटाइम 2 बनाम डेटटाइम

  2. लेखांकन आवेदन डॉलर राशि के लिए फ्लोट या दशमलव का प्रयोग करें?

  3. एक कॉलम (टी-एसक्यूएल) में एकाधिक मान कैसे वापस करें?

  4. SQL तालिका में SQL DELETE कथन का उपयोग करने के सर्वोत्तम तरीके

  5. क्या विंडो फ़ंक्शंस (ओवर) के साथ उपयोगकर्ता परिभाषित समुच्चय (clr) का उपयोग करना संभव है?