আমি অ্যালগরিদমগুলি বাছাইয়ের জন্য খুঁজছি যা প্রচুর পরিমাণে ডেটাতে কাজ করতে পারে, অর্থাত্ যখন পুরো ডেটা সেটটি একবারে মূল স্মৃতিতে রাখা যায় না তখনও এটি কাজ করতে পারে।
আমি এখন পর্যন্ত পাওয়া একমাত্র প্রার্থী হ'ল মার্জ সাজান: আপনি অ্যালগরিদমটি এমনভাবে প্রয়োগ করতে পারেন যে এটি একবারে মুখ্য স্মৃতিতে সমস্ত ডেটা না রেখে প্রতিটি মার্জে আপনার ডেটা সেটটিকে স্ক্যান করে। আমার মনে থাকা মার্জ সাজানোর বিভিন্নতা এই নিবন্ধে টেপ ড্রাইভের সাথে ব্যবহার বিভাগে বর্ণিত হয়েছে ।
আমি মনে করি এটি একটি ভাল সমাধান (জটিলতায় ও (এনএক্স লগ (এন)) সহ তবে আমি জানতে আগ্রহী যে অন্য কোনও (সম্ভবত দ্রুত) বাছাই করা অ্যালগরিদমগুলি রয়েছে যা বড় ডেটা সেটগুলিতে কাজ করতে পারে যা মূল স্মৃতিতে খাপ খায় না।
সম্পাদনা
উত্তরের প্রয়োজন অনুসারে এখানে আরও কিছু বিবরণ দেওয়া হল:
- ডেটা পর্যায়ক্রমে বাছাই করা প্রয়োজন, যেমন মাসে একবার a আমার কয়েকটি রেকর্ড সন্নিবেশ করার প্রয়োজন নেই এবং ডেটা বর্ধিতভাবে সাজানো দরকার have
- আমার উদাহরণ পাঠ্য ফাইলটি প্রায় 1 গিগাবাইট ইউটিএফ -8 পাঠ্য, তবে আমি সাধারণভাবে সমস্যাটি সমাধান করতে চেয়েছিলাম, যদিও ফাইলটি ছিল, বলুন, 20 জিবি।
- এটি কোনও ডাটাবেসে নেই এবং অন্যান্য বাধাগুলির কারণে এটি হতে পারে না।
- পাঠ্য ফাইল হিসাবে অন্যরা ডেটা ফেলে দেয়, এই পাঠ্য ফাইলটি পড়ার জন্য আমার নিজের কোড রয়েছে।
- ডেটা ফর্ম্যাট একটি পাঠ্য ফাইল: নতুন লাইন অক্ষর রেকর্ড বিভাজক হয়।
একটি সম্ভাব্য উন্নতি যা আমি মনে রেখেছিলাম তা হ'ল মেমরির আকারে বাছাই করার জন্য যথেষ্ট ছোট ফাইলগুলিতে ফাইলটি বিভক্ত করা এবং অবশেষে আমি উপরে বর্ণিত অ্যালগরিদম ব্যবহার করে এই সমস্ত ফাইলগুলি মার্জ করে।