मैं पिछली नौकरी में डेटा वेयरहाउसिंग वातावरण में इसी तरह की स्थिति में भाग गया था।
क्या आपके डीबीए ने pga_aggregate_target या _pga_max_size या दोनों बनाए हैं? ध्यान रखें कि जब DBA pga_aggregate_target को 150MB तक बढ़ा देता है, तो इसका मतलब यह नहीं है कि आपका सत्र उस सभी 150MB को हथियाने में सक्षम होगा। Oracle किसी दिए गए सत्र को केवल उस स्थान का एक छोटा सा अंश लेने की अनुमति देगा। pga_aggregate_target को 150एमबी से बढ़ाकर 200एमबी करने से आपके सत्र को केवल कुछ अतिरिक्त मेग मेमोरी मिलेगी जिसे इन-मेमोरी संचालन IIRC के साथ चलाया जा सकता है।
यदि आपके DB सर्वर में अधिक उपलब्ध मेमोरी है, तो आपको अपने DBA को pga_aggregate_target और _pga_max_size दोनों को बढ़ाना होगा, अन्यथा आपको GTT का उपयोग करना होगा या अपने डेटा को डंप करने के लिए एक स्क्रैच टेबल बनाना होगा और फिर उस पर काम करना होगा वहाँ।