30304 ব্যবহারকারীর পরামর্শের পরে , পল রামসে এবং আমার নিজের পরীক্ষাগুলি। আমি এই প্রশ্নের উত্তর দেওয়ার সিদ্ধান্ত নিয়েছি।
আমি এই প্রশ্নে উল্লেখ করতে ব্যর্থ হয়েছি যে আমি একটি রিমোট সার্ভারে ডেটা আমদানি করছি। (যদিও আমি উল্লেখ করি এটি ব্লগ পোস্টে বর্ণিত হয়েছে)। ইন্টারনেটের মাধ্যমে সন্নিবেশকরণের মতো অপারেশনগুলি কোনও নেটওয়ার্কের বিলম্বের বিষয়। সম্ভবত এটি উল্লেখ করা অপ্রাসঙ্গিক নয় যে এই সার্ভারটি আমাজন আরডিএসে রয়েছে , যা আমাকে মেশিনে এসএসআই হতে বাধা দেয় এবং স্থানীয়ভাবে অপারেশন চালায়।
এটি মনে রেখে, আমি নতুন পদ্ধতিতে ডেটা ডাম্পের প্রচারের জন্য "\ অনুলিপি" নির্দেশিকা ব্যবহার করে আমার পদ্ধতির পুনরায় ইঞ্জিনিয়ার করেছি। আমি মনে করি এই কৌশলটি একটি অত্যাবশ্যক কী, যা এই প্রশ্নের মন্তব্য / উত্তরগুলিতেও উল্লেখ করা হয়েছিল।
psql database -U user -h host.eu-west-1.rds.amazonaws.com -c "\copy newt_table from 'data.csv' with DELIMITER ','"
এই অপারেশনটি অবিশ্বাস্যভাবে দ্রুত ছিল। যেহেতু আমি একটি CSV আমদানি করা, আমি তখন জ্যামিতি পূর্ণ সমস্ত কাজে ছিল, একটি স্থানিক সূচক, ইত্যাদি যোগ করলে তা এখনও ছিল সাতিশয় দ্রুত, যেহেতু আমি তখন প্রশ্ন চলমান ছিল সার্ভারে ।
আমি বেঞ্চমার্ক থেকেও পরামর্শ করার সিদ্ধান্ত নিয়েছে user30184 , পল রামসে । আমার ডেটা ফাইলটি 3035369 রেকর্ড এবং 82 এমবি সহ পয়েন্ট শেফাইল ছিল।
Ogr2ogr পদ্ধতির (PG_USE_COPY নির্দেশিকা ব্যবহার করে) 1:03:00 মি তে সমাপ্ত হয়েছে, যা এখনও আগের চেয়ে অনেক ভাল।
Shp2pgsql পদ্ধতির (-D নির্দেশিকা ব্যবহার করে) কেবলমাত্র 00:01:04 মিটারে শেষ হয়েছে।
এটি বলার অপেক্ষা রাখে না যে ogr2ogr অপারেশনের সময় একটি স্থানিক সূচক তৈরি করেছিল, যখন shp2pgsql তা করেনি। আমি জানতে পেরেছি যে এই ধরণের অনুরোধের সাথে আমদানি ক্রিয়াকলাপটি স্ফীত করার চেয়ে আমদানি করার পরে সূচক তৈরি করা আরও বেশি দক্ষ ।
উপসংহারটি হ'ল: shp2pgsql, সঠিকভাবে প্যারামিটারাইজড হলে বড় আমদানি সম্পাদনের জন্য অত্যন্ত উপযুক্ত , যাকে অ্যামাজন ওয়েব পরিষেবাদিগুলির মধ্যে অন্তর্ভুক্ত করা যায়।
আপনি এই পোস্টের আপডেটে এই সিদ্ধান্তে আরও বিস্তারিত বিবরণ পড়তে পারেন ।