আপনি উপরের মন্তব্যে লিখেছেন:
"ডেটাবেস সিস্টেমগুলির ফান্ডামেন্টালস" বইটি [...] বলেছে [...] যে বিদেশী কী কলামে অনেকগুলি নূন্যমূল্য উপস্থিত থাকলে একটি ছেদ সারণি ব্যবহার করার পরামর্শ দেওয়া হয় (উদাহরণস্বরূপ: যদি 98% কর্মচারী থাকে) একটি বিভাগ পরিচালনা করবেন না)
বিদেশী কী কলামে যখন অনেকগুলি নূন্যমূল্য থাকে, তখন আপনার প্রোগ্রামগুলিকে প্রতিটি প্রক্রিয়া রেকর্ড করার জন্য এটি বেশিরভাগ খালি কলামটি মোকাবেলা করতে হবে। কলামটি সম্ভবত কিছুটা ডিস্ক স্পেস দখল করবে যদিও 98% ক্ষেত্রে এর শূন্য, সম্পর্কের সন্ধানের অর্থ সেই কলামটি জিজ্ঞাসা করা যা আপনাকে আরও বেশি নেটওয়ার্ক ট্র্যাফিক দেয় এবং যদি আপনি কোনও ওআরএম ব্যবহার করে যা আপনাকে আপনার টেবিলগুলি থেকে ক্লাস জেনারেট করে, আপনার প্রোগ্রামগুলি প্রয়োজনের তুলনায় ক্লায়েন্টের পাশে আরও জায়গা প্রয়োজন। ছেদ টেবিল ব্যবহার এড়ানো যায়, কেবলমাত্র লিঙ্কের রেকর্ড থাকবে যেখানে সমতুল্য বিদেশী কী অন্যথায় NULL হবে না।
এর বিপরীতে, যদি আপনার কাছে কয়েকটি নূন্যমূল্য না থাকে তবে আপনাকে বলতে দিন যে 50% বা তার বেশি সম্পর্ক নুল নয়, ছেদ টেবিলটি আপনাকে বিপরীত প্রভাব দেয় - বেশি ডিস্কের স্থান, উচ্চতর জটিলতা যার ফলে আরও বেশি নেটওয়ার্ক ট্র্যাফিক ইত্যাদি ঘটে etc.
সুতরাং ছেদ টেবিলটি ব্যবহার করা কেবলমাত্র অনুকূলতার একটি ফর্ম, নির্দিষ্ট ক্ষেত্রে কেবল বোধগম্য এবং বিশেষত আজকাল যেখানে ডিস্কের স্থান এবং মেমরি সস্তার হয়ে যায়, খুব কম ঘন ঘন প্রয়োজন হয়। নোট করুন যে "ফান্ডামেন্টালস অফ ডাটাবেস সিস্টেমগুলি" মূলত 20 বছর আগে লেখা হয়েছিল (আমি 1994 সালের দ্বিতীয় সংস্করণের একটি রেফারেন্স পেয়েছি) এবং আমি অনুমান করি যে সেই সময়টিতে প্রস্তাবনাটি ইতিমধ্যে ছিল। ১৯৯৪ সালের আগে স্পেস অপটিমাইজেশন সম্ভবত আজকের চেয়ে অনেক বেশি গুরুত্বপূর্ণ, যেহেতু ভর স্টোরেজটি এখনও বেশি ব্যয়বহুল ছিল এবং কম্পিউটার এবং নেটওয়ার্কগুলি আজকের তুলনায় অনেক ধীর গতিতে ছিল।
একটি পিক মন্তব্যটির পার্শ্ব দ্রষ্টব্য হিসাবে: উপরের বিবৃতিটি "ফান্ডামেন্টালস অফ ডেটাবেস সিস্টেমস" এর লেখক তার সুপারিশের সাথে কী মনে করেছিলেন তা অনুমান করার চেষ্টা করা হচ্ছে, আমি অনুমান করি যে তিনি বেশিরভাগ সিস্টেমে বৈধ, একটি সাধারণ বক্তব্য রেখেছিলেন। কিছু ডাটাবেসে "স্পার্স কলাম" এর মতো অন্যান্য সম্ভাব্য অপ্টিমাইজেশন রয়েছে যা একটি ছেদ সারণির ব্যবহারকে আরও অচল করে দেয়।
সুতরাং যে সুপারিশ ভুল পাবেন না। বইটি আপনাকে {0,1}:n
সম্পর্কের জন্য ছেদ ছকগুলি সাধারণত পছন্দ করতে বলে না , বা - যেমন আপনি লিখেছেন - এটি "সঠিক উপায়"। এর মতো অপ্টিমাইজেশন ব্যবহার করুন যা আপনার প্রোগ্রামগুলি কেবল তখনই প্রয়োজন হয় যখন আপনার প্রোগ্রামগুলিকে আরও জটিল করে তুলবে।