ডোমেন কী নরমাল ফর্ম (DKNF) হল একটি স্বাভাবিক নকশা নীতি যা ডাটাবেস স্কিমা ডিজাইনের প্রক্রিয়া চলাকালীন প্রয়োগ করা হয়, বিশেষ করে রিলেশনাল ডাটাবেসের প্রেক্ষাপটে। ডিকেএনএফ প্রথম 1981 সালে রোনাল্ড ফ্যাগিন দ্বারা প্রবর্তিত হয়েছিল যাতে বয়েস-কড নরমাল ফর্ম (বিসিএনএফ) এবং থার্ড নরমাল ফর্ম (3এনএফ) এর মতো অন্যান্য স্বাভাবিককরণ ফর্ম থেকে উদ্ভূত সম্ভাব্য অসঙ্গতিগুলি মোকাবেলা করা হয়।
DKNF হল একটি শক্তিশালী ডিজাইনের ধারণা যার লক্ষ্য হল রিডান্ড্যান্সিগুলি দূর করা এবং অন্যান্য স্বাভাবিকীকরণ ফর্মগুলির সাথে সম্মতি বজায় রেখে ডাটাবেস স্কিমার অসঙ্গতিগুলি আপডেট করা। মোটকথা, DKNF নিশ্চিত করে যে প্রতিটি ডোমেইন সীমাবদ্ধতা (একটি বৈশিষ্ট্যের জন্য সমস্ত বৈধ মানের সেট) একটি কী বা কীগুলির সংমিশ্রণ দ্বারা প্রয়োগ করা হয়। DKNF অর্জন করতে, একটি ডাটাবেস স্কিমাকে অবশ্যই নিম্নলিখিত মানদণ্ডগুলি পূরণ করতে হবে:
- ডোমেনের ডেটার উপর স্থাপিত সমস্ত সীমাবদ্ধতা অবশ্যই কী, পুরো কী, এবং কী ছাড়া আর কিছুই নয় (টেবিল এবং বৈশিষ্ট্য উভয়ের ক্ষেত্রেই বিবেচনা করা হচ্ছে)।
- ডাটাবেসের যেকোন বৈশিষ্ট্য সম্পূর্ণরূপে সমস্ত কীগুলির উপর নির্ভরশীল হওয়া উচিত যা এটি নির্ধারণ করতে পারে।
একটি ডাটাবেস স্কিমার নকশা এবং দক্ষতায় DKNF অর্জনের অনেকগুলি সুবিধা রয়েছে। এই সুবিধাগুলির মধ্যে রয়েছে:
- অপ্রয়োজনীয়তা দূরীকরণ: DKNF নিশ্চিত করে যে সমস্ত নন-কী বৈশিষ্ট্যগুলি প্রাথমিক কী-এর উপর সম্পূর্ণরূপে নির্ভরশীল, যার ফলে ডাটাবেস স্কিমার মধ্যে ডেটা রিডানড্যান্সির সম্ভাবনা হ্রাস পায়।
- উন্নত ডেটা অখণ্ডতা: কীগুলির মাধ্যমে সমস্ত ডোমেন সীমাবদ্ধতা প্রয়োগ করে, DKNF ডাটাবেসে শুধুমাত্র বৈধ ডেটা সংরক্ষণ করা হয়েছে তা নিশ্চিত করে ডেটা অখণ্ডতা বজায় রাখে।
- হ্রাসকৃত আপডেটের অসঙ্গতি: একটি DKNF স্কিমার সাথে, ডেটাতে পরিবর্তনের ফলে অসঙ্গতি হওয়ার সম্ভাবনা কম, কারণ প্রতিটি নন-কী অ্যাট্রিবিউট সম্পূর্ণরূপে প্রাথমিক কী-এর উপর নির্ভরশীল। এটি আপডেট অসঙ্গতির ঝুঁকি হ্রাস করে, যেমন মুছে ফেলা, সন্নিবেশ করা এবং পরিবর্তনের অসঙ্গতি।
DKNF এর ধারণাটি ব্যাখ্যা করার জন্য, আসুন একটি উদাহরণ বিবেচনা করি। ধরুন একটি ই-কমার্স অ্যাপ্লিকেশনের জন্য একটি ডাটাবেস রয়েছে যেখানে পণ্য, অর্ডার এবং গ্রাহকদের জন্য পৃথক সত্তা রয়েছে। একটি অর্ডারে একাধিক পণ্য থাকতে পারে এবং একজন গ্রাহক একাধিক অর্ডার দিতে পারেন। এই ক্ষেত্রে, অর্ডার টেবিলের জন্য প্রাথমিক কী হবে OrderID এবং CustomerID এর সংমিশ্রণ, এবং অর্ডার প্রোডাক্ট টেবিলের প্রাথমিক কী হবে OrderID এবং ProductID-এর সংমিশ্রণ।
যদি ডাটাবেস স্কিমা DKNF-এ না থাকে, তাহলে এমন পরিস্থিতি হতে পারে যেখানে বৈশিষ্ট্যগুলি শুধুমাত্র আংশিকভাবে কম্পোজিট কী-এর উপর নির্ভর করে। উদাহরণস্বরূপ, ধরুন পণ্যের মূল্য বৈশিষ্ট্যটি অর্ডার পণ্য টেবিলে সংরক্ষণ করা হয়েছে। এই পরিস্থিতিতে, যদি এক অর্ডারে একটি পণ্যের জন্য মূল্য পরিবর্তন করা হয়, তবে ধারাবাহিকতা বজায় রাখার জন্য অন্য সমস্ত অর্ডারে একই পণ্যের মূল্য পরিবর্তন করা উচিত। এটি একটি নন-DKNF স্কিমা ডিজাইনের ফলে একটি আপডেট অসঙ্গতির একটি উদাহরণ।
স্কিমাটিকে DKNF-এ আনতে, পণ্যের মূল্য বৈশিষ্ট্যটি পণ্য টেবিলে স্থানান্তরিত করা যেতে পারে, এটিকে পুরোপুরি ProductID প্রাথমিক কী-এর উপর নির্ভর করে। এটি স্কিমাতে আপডেটের অসঙ্গতির ঝুঁকি দূর করে এবং ডেটা অখণ্ডতা বজায় রাখে।
AppMaster এ, আমাদের no-code প্ল্যাটফর্মটি ডিকেএনএফ-এর মতো স্বাভাবিক নকশা নীতির ধারণাগুলিকে ব্যবহার করে ব্যাপক এবং দক্ষ ডাটাবেস স্কিমা তৈরিতে ব্যবহারকারীদের সহায়তা করার জন্য ডিজাইন করা হয়েছে। আমাদের ভিজ্যুয়াল ডেটা মডেলিং সরঞ্জামগুলি ব্যবহারকারীদের সত্তার মধ্যে সম্পর্কগুলিকে সংজ্ঞায়িত করতে এবং পরিচালনা করতে সক্ষম করে, এটি নিশ্চিত করে যে ফলস্বরূপ স্কিমাটি DKNF এবং অন্যান্য স্বাভাবিককরণ ফর্মগুলির সাথে সঙ্গতিপূর্ণ।
AppMaster তৈরি করা অ্যাপ্লিকেশনগুলি ডাটাবেস ডিজাইনের সর্বোত্তম অনুশীলনগুলি অনুসরণ করে, যেমন ডোমেন কী নরমাল ফর্ম (DKNF) নিয়োগ করা, ছোট ব্যবসা থেকে শুরু করে উচ্চ-লোড এন্টারপ্রাইজ অ্যাপ্লিকেশনগুলির বিভিন্ন ব্যবহারের ক্ষেত্রে মাপযোগ্য, উচ্চ-পারফরম্যান্স অ্যাপ্লিকেশনগুলি নিশ্চিত করতে৷ আমাদের প্ল্যাটফর্মটি নাগরিক বিকাশকারীদের DKNF এবং অন্যান্য মূল নীতিগুলির শক্তিকে সরলীকৃত উপায়ে ব্যবহার করার অনুমতি দেয়, তাদের ব্যাপক ডাটাবেস ডিজাইন দক্ষতার প্রয়োজন ছাড়াই অত্যন্ত দক্ষ এবং অপ্টিমাইজ করা অ্যাপ্লিকেশন তৈরি করতে সক্ষম করে।