কিছু সহকর্মী এবং আমি historicalতিহাসিক ডেটা সঞ্চয় করার সর্বোত্তম উপায় নিয়ে বিতর্কে জড়িয়ে পড়েছি। বর্তমানে কিছু সিস্টেমের জন্য, আমি historicalতিহাসিক ডেটা সঞ্চয় করার জন্য একটি পৃথক টেবিল ব্যবহার করি এবং আমি বর্তমান, সক্রিয় রেকর্ডের জন্য একটি মূল টেবিল রাখি। সুতরাং, ধরা যাক আমার কাছে টেবিল এফও আছে। আমার সিস্টেমের অধীনে, সমস্ত সক্রিয় রেকর্ডগুলি এফওতে চলে যাবে, এবং সমস্ত recordsতিহাসিক রেকর্ডগুলি এফইওহাইস্টে যাবে। এফইও-র বিভিন্ন ক্ষেত্রে ক্ষেত্রটি ব্যবহারকারী আপডেট করতে পারে, তাই আমি আপডেট হওয়া সমস্ত কিছুর একটি সঠিক অ্যাকাউন্ট রাখতে চাই want একটি স্বয়ংক্রিয়-বৃদ্ধিকারী HIST_ID ব্যতীত এফইউইহিস্ট এফইও-র ঠিক একই ক্ষেত্র ধারণ করে। প্রতিবার এফইও আপডেট করা হলে, আমি এফও_এইচএস্টের মতো সন্নিবেশ বিবৃতিটি সম্পাদন করি:insert into FOO_HIST select * from FOO where id = @id
।
আমার সহকর্মী বলছেন যে এটি খারাপ নকশা কারণ Iতিহাসিক কারণে আমার কোনও টেবিলের সঠিক কপি থাকা উচিত নয় এবং এটি সক্রিয় টেবিলের সাথে অন্য একটি রেকর্ড সন্নিবেশ করা উচিত যাতে এটি চিহ্নিত করা হয় যে এটি forতিহাসিক উদ্দেশ্যে রয়েছে।
Historicalতিহাসিক ডেটা স্টোরেজ মোকাবেলার জন্য কি কোনও মানদণ্ড রয়েছে? এটি আমার কাছে মনে হয় যে আমি দশ লক্ষেরও বেশি রেকর্ড (আমি দীর্ঘমেয়াদে ভাবছি) এর চেয়ে ভাল হতে পারে তা বিবেচনা করে একই সারণীতে আমার সমস্ত historicalতিহাসিক রেকর্ডের সাথে আমার সক্রিয় রেকর্ডগুলি বিশৃঙ্খলা করতে চাই না।
আপনি বা আপনার সংস্থা কীভাবে এটি পরিচালনা করবেন?
আমি এমএস এসকিউএল সার্ভার ২০০৮ ব্যবহার করছি তবে আমি উত্তরটি জেনেরিক এবং যে কোনও ডিবিএমএসের স্বেচ্ছাসেবী রাখতে চাই।