मैं एक postgresql डेटाबेस के लिए एक बहुत बड़ी फ़ाइल लोड कर रहा हूँ। इस मैं पहली बार उपयोग करने के लिए splitफ़ाइल में छोटे फ़ाइलें (30GB प्रत्येक) प्राप्त करने के लिए और फिर मैं का उपयोग कर डेटाबेस के लिए प्रत्येक छोटे फ़ाइल लोड GNU Parallelऔर psql copy।
समस्या यह है कि फ़ाइल को विभाजित करने में लगभग 7 घंटे लगते हैं, और फिर यह प्रति कोर फ़ाइल लोड करना शुरू कर देता है। मुझे यह बताने splitका तरीका है कि फाइल का नाम प्रिंट करने के लिए एसटीडी आउटपुट हर बार फाइल लिखने के बाद मैं इसे पाइप कर सकता हूं Parallelऔर यह फाइल splitलिखने के समय पर फाइल लोड करना शुरू कर देता है। कुछ इस तरह:
split -l 50000000 2011.psv carga/2011_ | parallel ./carga_postgres.sh {}
मैंने splitमैन पेज पढ़े हैं और मुझे कुछ नहीं मिल रहा है। क्या ऐसा करने का कोई तरीका है splitया किसी अन्य उपकरण के साथ?