উত্তর:
আপনার যতদূর যাওয়া উচিত এবং আরও কিছু করা উচিত নয়। অবশ্যই. ~ সমস্যাটি হতে পারে যে এটি একটি শিল্পের কিছুটা, এবং এই কারণেই এটি খাঁটি বিজ্ঞান নয়।
আমাদের প্রধান পণ্য হ'ল একটি বিশ্লেষণ এবং প্রতিবেদনের ব্যবস্থা, এবং সেই ক্ষেত্রে আমাদের কাছে বেশ কয়েকটি বিশদ রেকর্ড রয়েছে। আমরা প্রাথমিকভাবে এটি কয়েকটি শিশু রেকর্ডের জন্য একটি প্রচলিত আইডিতে প্রচুর যোগদানের সাথে ডিজাইন করেছিলাম, তবে আমরা দেখতে পেয়েছি যে আমরা কয়েকটি ক্ষেত্রকে অস্বীকৃতি জানাতে পারলে আমরা প্রচুর যোগদান করতে পারি এবং আমরা প্রচুর পারফরম্যান্সের মাথা ব্যথা দূর করতে পারি।
তবে আমরা কেবল জানতাম যে আমরা 1) একটি "নরমালাইজড" ডিজাইন তৈরি করেছি, 2) এটি ব্যবহার শুরু করেছি, 3) কয়েক মিলিয়ন টেবিল জুড়ে কয়েক মিলিয়ন সারি পরে আসল পারফরম্যান্সটির প্রোফাইল দেয়।
শেষের গল্পটি হ'ল আমরা প্রোফাইলিং না করা পর্যন্ত আমরা নিশ্চিতভাবে জানতে পারি না যে আমাদের জন্য কী কাজ করবে। আমরা সাধারণকরণের ধারণাটি পছন্দ করি যাতে আমরা আরও সহজেই আপডেট করতে পারি তবে শেষ পর্যন্ত প্রকৃত পারফরম্যান্সই ছিল সিদ্ধান্ত নেওয়া ফ্যাক্টর। এটি আপনার জন্য আমার পরামর্শ: প্রোফাইল, প্রোফাইল, প্রোফাইল।
in ('forgiven','pardoned')
;): পি
সাধারণকরণ কেবল তখনই একটি লক্ষ্য যখন এটি আপনার ডেটা মডেলটিকে যথাযথভাবে সমর্থন করে তা সমর্থন করে। এটি বৃদ্ধি, পরিচালনা এবং রক্ষণাবেক্ষণের অনুমতি দেওয়ার জন্য গাইড হতে বোঝানো হয়েছে। মনে রাখবেন নরমালাইজেশন সম্পর্কিত বইটি, না এর লেখক আপনার ডেটাবেস বা এর প্রয়োগ তৈরি বা রক্ষণাবেক্ষণ করতে চলেছেন।
"অত্যধিক নরমালাইজেশন" বিষয়ে একটি ভাল পঠন এখানে।
এবং, হ্যাঁ খুব স্বাভাবিকীকরণের পারফরম্যান্সের প্রভাব থাকতে পারে। স্থিতি সূচক টেবিলের মতো জিনিসগুলি যখন আলাদা টেবিলে টানা হবে তখন এটি বাছাইয়ের জন্য এটি গভীরতর টেবিল ট্র্যাভারসাল হবে in কেউ বলবেন এটি আপডেট আপডেটের গতিতে ("ভাল" থেকে "ভাল" বা এর মতো কোনও কিছুতে স্থিতির পাঠ্য পরিবর্তন করা) বা রক্ষণাবেক্ষণের ক্ষেত্রে অবহেলিত।
ক্রিস ডেটের আরও কয়েকটি সাম্প্রতিক বইয়ের মধ্যে নিম্নলিখিত পরিশিষ্ট পড়ার পরামর্শ দিচ্ছি :
সাধারণীকরণ হ'ল পেনেসিয়া হওয়া তো দূরের কথা, কারণ এর লক্ষ্যগুলি কী এবং এটি তাদের বিরুদ্ধে কীভাবে ব্যবস্থা গ্রহণ করে আমরা সহজেই তা বিবেচনা করে দেখতে পারি ...
আমাকে অবশ্যই এটি পরিষ্কার করে দিতে হবে যে আমি চাই না যে এই বিভাগে আমার মন্তব্যগুলি কোনও ধরণের আক্রমণ হিসাবে দেখা উচিত। আমি দৃly়ভাবে বিশ্বাস করি যে সম্পূর্ণরূপে সাধারণ নকশার চেয়ে কম কিছু দৃ়ভাবে বিপরীত হয় ...
আমি মনে করি সুস্পষ্ট যুক্ত সংযোজনগুলি দেখার জন্য এটি সমান গুরুত্বপূর্ণ, বিবরণী অনুলিপিতে অনুলিপি করা একটি মাস্টার টেবিল থেকে মোট মান বা কিছু ক্ষেত্র যুক্ত করা উচিত।
যুক্তি বেশিরভাগ কার্যকারিতা যুক্তি being
আপনি যদি এমনটি প্রয়োগ করেন তবে সেই ক্ষেত্রগুলি ট্রিগার দ্বারা আপডেট করা হয়েছে এবং এগুলি ধারাবাহিক রাখতে ডেটাবেসের উপর নির্ভর করে।
আমি @ jcolebrand এর সাথে পুরোপুরি একমত আপনি যখন নিজের অ্যাপ্লিকেশনটির জন্য মডেল ডিজাইন করছেন, আপনার যা করা সম্ভব সবগুলি স্বাভাবিক করা উচিত। তবে তারপরে আপনার মডেলকে কেন্দ্র করে তৈরি করা প্রশ্নগুলি প্রোফাইল করা উচিত, বিশেষত ঘন ঘন মৃত্যুদন্ড কার্যকর করা।
আমার নিজস্ব অভিজ্ঞতা: যে গুণাবলী পৌঁছাতে দুটি যোগদান করেছে (তার মানে তিনটি টেবিল যোগ হয়েছে) বেশিরভাগই পারফরম্যান্স হগ হবে। এবং জিনিসগুলি সবচেয়ে খারাপ করতে, এটি লাইন লেনদেনে ব্যবহৃত হয়। আমি বৈশিষ্ট্যটিকে অস্বীকৃতি জানাই, সুতরাং এটির জন্য কেবল একটি যোগ হওয়া প্রয়োজন এবং প্রোগ্রামারকে কোয়েরি এবং বৈশিষ্ট্যটি আপডেট করার জন্য তাদের অ্যাপ্লিকেশনটি সামঞ্জস্য করতে বলে। এখন এটি আরও ভাল কাজ করে ...
অন্য কথায়, আপনার পারফরম্যান্সের সাথে স্বাভাবিককরণের ভারসাম্য বজায় রাখা উচিত।