প্রশ্ন ছোট ফাইল 5TB বৃহৎ ডেটাসেট, + এম ছোট ফাইল


আমি একটি পরিস্থিতি সম্মুখীন যেখানে একটি অ্যাপ্লিকেশন সার্ভার misconfig প্রায় 5TB ডেটাসেট তৈরি নেতৃত্বে যেখানে প্রতিটি dir মধ্যে বিপুল সংখ্যক ছোট ফাইল রয়েছে। আমরা ফাইলগুলি স্থানান্তরিত করার এবং অ্যাপ্লিকেশনটি পরিবর্তন করার প্রক্রিয়াতে রয়েছি তবে rsync তথ্য স্থানান্তর করতে ব্যর্থ হয়। এটি এমনকি স্থানীয় ড্রাইভের মধ্যেও স্থানীয়ভাবে ব্যর্থ হয়। আমি মাত্র 3.5 জি কপি করতে পেরেছি! আমি rsync সুইচ এবং এখনও কোন ভাগ্য পরিবর্তন করার চেষ্টা। বর্তমানে কোন অগ্রগতি ইঙ্গিত ছাড়াই সার্ভারে চলছে: rsync -avhWc --no-compress - অগ্রগতি উৎস গন্তব্য কিছু gigasync প্রস্তাবিত কিন্তু github এবং সাইট অনুপলব্ধ। যে কেউ ফাইল স্থানান্তর করার একটি পদ্ধতি সুপারিশ করতে পারেন? Anyhelp কৃতজ্ঞ


6
2018-05-29 06:15


উত্স


কেন আপনার প্রশ্নের কোন সঠিক ত্রুটি বার্তা আছে? - Michal Sokolowski
পৃথক ফাইলগুলি অনুলিপি করার পরিবর্তে, খুব ছোট ফাইলের বিশাল পরিমাণে প্রচুর পরিমাণে ওভারহেড সহ ধীর গতির, আপনি পুরো ব্লক ডিভাইসটিকে অনুলিপি করতে পারেন dd, netcat, সম্ভব কিছু কম্প্রেশন এবং // বা ssh serverfault.com/q/51567/37681 - HBruijn


উত্তর:


Xargs + rsync চেষ্টা করুন:

 find . -type f -print0 | xargs -J % -0 rsync -aP % user@host:some/dir/

Rsync এর প্রতিটি কলটিতে উত্স হিসাবে কত ফাইল প্রেরণ করা যায় তা আপনি নিয়ন্ত্রণ করতে পারেন -n  উদাহরণস্বরূপ প্রতি rsync 200 ফাইল অনুলিপি করতে:

 find . -type f -print0 | xargs -n 200 -J % -0 rsync -aP % user@host:some/dir/

এটি খুব ধীরে ধীরে আপনি সমান্তরাল rsync একাধিক কপি চালাতে পারেন -P বিকল্প:

find . -type f -print0 | xargs -P 8 -n 200 -J % -0 rsync -aP % user@host:some/dir/

এই সমান্তরাল rsync 8 কপি শুরু হবে।


3
2018-05-29 06:34



অবশেষে আমি মূলত Rsync থেকে আপনার কাছে কিছুটা ভিন্ন পাইপের সন্ধান পাইনি তবে সমস্যাটা স্থানান্তরিত হওয়ার সময় ... এটি খুব ধীর এবং সার্ভারের পক্ষে 0 লোড ... এখানে যা আমি ব্যবহার করেছি পাইপ: # ফাইন্ড / স্থানীয় / তথ্য / পথ / -মিন্ডপথ 1 -টিটাইম -0-প্রিন্ট 0 | xargs -0-n 1 -I {} - rsync -a {} remote.host:/remote/data/path/। - h.safe
দ্রুত কপি করতে rsync সমান্তরাল কিভাবে একটি উদাহরণ যোগ করা হয়েছে - Luca Gibelli


এটি যদি একটি বিশ্বস্ত / সুরক্ষিত নেটওয়ার্ক এবং আপনি লক্ষ্য হোস্টে একটি পোর্ট খুলতে পারেন তবে অন্য মেশিনে একটি গাছ পুনরুত্পাদন করার একটি ভাল উপায় হল টার এবং নেটক্যাটের সমন্বয়। আমি একটি টার্মিনাল এ তাই একটি পূর্ণ বিক্ষোভ লিখতে পারে না কিন্তু এই পাতা একটি চমত্কার ভাল কাজ করে না:

http://toast.djw.org.uk/tarpipe.html

নিশ্চিতভাবে কম্প্রেশন ব্যবহার করুন। সেরা ক্ষেত্রে আপনি থ্রুপুট হারে তিনটি সম্ভাব্য সমস্যাগুলির মধ্যে সবচেয়ে ধীর গতিতে তথ্য স্থানান্তর করতে পারেন - উৎস, নেটওয়ার্ক, লক্ষ্য-অনুমতিতে লিখতে পড়ুন।


2
2018-05-29 14:56





সার্ভার অপারেটিং সিস্টেম নির্দিষ্ট না - আপনি robocopy বিবেচনা করেছেন? তার উইন্ডোজ ভিত্তিক যদিও। থ্রেডিং সমর্থন করে, এবং retries, এবং ব্যান্ডউইথ সীমাবদ্ধতা। UNC সক্ষম ইউএনসি। RoboCopy ডক্স

rsync এর দ্রুত google ইউনিক্স / উইন্ডো দেখায় ... সম্ভবত আপনি উইন্ডোজ ব্যবহার করছেন।


0
2018-05-29 11:57



জিএনইউ / লিনাক্স ভিত্তিক সার্ভার অন্তর্নিহিত fs এটির উপরে zfs এবং glusterfs রান করে। - h.safe


যদি আপনার ZFS থাকে, তবে আপনি একটি নতুন গন্তব্যে ফাইল সিস্টেম পাঠাতে ZFS- স্তর প্রতিলিপি ব্যবহার করতে পারেন।

যদি এটি একটি বিকল্প না হয়, তাহলে UDR + rsync বিবেচনা করুন, এখানে বিস্তারিত: ছোট ফাইল বড় পরিমাণ স্থানান্তর করুন


0
2018-05-29 13:29



আপনি এসএসএইচ মাধ্যমে রিমোট স্টোরেজ স্ন্যাপশটটিং সম্পর্কে কথা বলছেন? যদি তাই হয় যে খুব ধীর ... এবং শুধুমাত্র দুর্যোগ-পুনরুদ্ধার প্রদানের একটি উপায় - h.safe