मान लें कि आपने पहले से ही बुनियादी नेटवर्क सामग्री जैसे इंटरफेस, फायरवॉल, प्रॉक्सी, साथ ही डीबी सर्वर के हार्डवेयर तत्वों की जांच कर ली है।
विकल्प 1 :
इसके बजाय :
Class.forName("oracle.jdbc.OracleDriver");
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@//xxx.xxx.xxx.xxx:1521/orcl", "user", "pass");
उपयोग करने का प्रयास करें:
OracleDataSource ods = new OracleDataSource();
java.util.Properties prop = new java.util.Properties();
prop.setProperty("MinLimit", "2");
prop.setProperty("MaxLimit", "10");
String url = "jdbc:oracle:oci8:@//xxx.xxx.xxx.xxx:1521/orcl";
ods.setURL(url);
ods.setUser("USER");
ods.setPassword("PWD");
ods.setConnectionCachingEnabled(true);
ods.setConnectionCacheProperties (prop);
ods.setConnectionCacheName("ImplicitCache01");
अधिक विवरण यहां
विकल्प 2 :प्राप्त करें
जैसा कि स्टीफन द्वारा दृढ़ता से बताया गया है, भ्रूण आकार बहुत बड़ा लगता है।
और, 500,000 के आकार के लिए आपका -Xms और -Xmx क्या है। इसके अलावा, प्रोफाइलर में, उच्चतम ढेर आकार क्या है?
विकल्प 3:डीबी
-
src_schema.big_table_view
. के लिए अनुक्रमणिका और क्वेरी योजना देखें -
क्या यह एक उपकरण या एक अनुप्रयोग प्रणाली है। यदि सिर्फ एक उपकरण है, तो आप DB सिस्टम क्षमताओं के आधार पर समानांतर डिग्री, सूचकांक संकेत, विभाजन आदि जोड़ सकते हैं
विकल्प 4 :थ्रेड्स
कहें n
<एप्लिकेशन सर्वर पर कोर की संख्या
आप n
शुरू कर सकते हैं लेखक के धागे, प्रत्येक एक निश्चित बाल्टी को संसाधित करने के लिए कॉन्फ़िगर किया गया उदा। थ्रेड 1 0 से 10000 तक की प्रक्रिया करता है, n
. पर लिखता है अलग-अलग फाइलें, और एक बार सभी थीड्स हो जाने के बाद, पोस्ट जॉइन करें, फाइलों को एक साथ मर्ज करें, अधिमानतः निम्न स्तर के ओएस कमांड का उपयोग करके।
उस ने कहा, यह सब अब की तरह पूर्व-परिभाषित कोड कभी नहीं होना चाहिए। 'n'
और बाल्टी की गणना रनटाइम पर की जानी चाहिए। और आपके सिस्टम के समर्थन से अधिक थ्रेड्स बनाना केवल स्क्रू अप करता है।
विकल्प 5:
इसके बजाय
select * from src_schema.big_table_view
आप उपयोग कर सकते हैं
SELECT column1||CHR(9)||column2||CHR(9).....||columnN FROM src_schema.big_table_view
यह 500000 StringBuilders
creating बनाने से बचता है और Strings
. (यह मानते हुए कि कोई अन्य जटिल स्वरूपण शामिल नहीं है)। CHR(9) टैब कैरेक्टर है।
विकल्प 6:
इस बीच, आप किसी भी DB सिस्टम समस्या के लिए अपने DBA से जांच कर सकते हैं और Oracle समर्थन के साथ एक SR बढ़ा सकते हैं। ।