আমি রিলেশনাল ডাটাবেসগুলির সাথে মোটামুটি কাজ করেছি এবং মনে করি আমি ভাল স্কিমা ডিজাইনের প্রাথমিক ধারণাটি বেশ ভালভাবে বুঝতে পেরেছি। আমাকে সম্প্রতি এমন একটি প্রকল্প গ্রহণ করার দায়িত্ব দেওয়া হয়েছিল যেখানে একটি উচ্চ বেতনের পরামর্শদাতা দ্বারা ডিবি ডিজাইন করেছিলেন। আমার অন্ত্রে অন্তর অন্তর অন্তর্ভুক্ত কিনা দয়া করে আমাকে জানাবেন - "ডাব্লুটিএফ ??!?" - ওয়্যারেন্টেড, নাকি এই লোকটি কি এমন প্রতিভাবান যে সে আমার রাজ্য থেকে বেরিয়েছে?
প্রশ্নে থাকা ডিবি হ'ল একটি অভ্যন্তরীণ অ্যাপ্লিকেশন, যা কর্মীদের কাছ থেকে অনুরোধগুলি প্রবেশ করানোর জন্য ব্যবহৃত হয়। এটির একটি ছোট্ট অংশটি দেখলে আপনার কাছে ব্যবহারকারীদের তথ্য এবং অনুরোধ সম্পর্কিত তথ্য রয়েছে। আমি এই মত ডিজাইন করতে হবে:
ব্যবহারকারী সারণী:
UserID (primary Key, indexed, no dupes)
FirstName
LastName
Department
অনুরোধ সারণী
RequestID (primary Key, indexed, no dupes)
<...> various data fields containing request details
UserID -- foreign key associated with User table
সরল, তাই না?
পরামর্শদাতা এটির মতো নকশা করেছেন (নমুনা ডেটা সহ):
UsersTable
UserID FirstName LastName
234 John Doe
516 Jane Doe
123 Foo Bar
DepartmentsTable
DepartmentID Name
1 Sales
2 HR
3 IT
UserDepartmentTable
UserDepartmentID UserID Department
1 234 2
2 516 2
3 123 1
RequestTable
RequestID UserID <...>
1 516 blah
2 516 blah
3 234 blah
পুরো ডাটাবেসটি এইভাবে তৈরি করা হয়, প্রতিটি টুকরা তার নিজস্ব টেবিলে আবদ্ধ করে, সংখ্যাসূচক আইডিগুলি সবকিছুকে একত্রে সংযুক্ত করে। স্পষ্টতই পরামর্শদাতা ওএলএপি সম্পর্কে পড়েছিলেন এবং 'পূর্ণসংখ্যার অনুসন্ধানের গতি' চেয়েছিলেন
এই সমস্ত টেবিলের রেফারেন্সটি অতিক্রম করার জন্য তাঁর কাছে প্রচুর পরিমাণে সঞ্চিত প্রক্রিয়া রয়েছে।
একটি ছোট থেকে মাঝারি আকারের এসকিউএল ডিবি এর জন্য এই বৈধ নকশাটি কি?
মন্তব্য / উত্তরের জন্য ধন্যবাদ ...