এখানে অনেক ট্রেড অফ রয়েছে। প্রকৃতপক্ষে আমি প্রায়শই স্ট্রিং কীগুলি ব্যবহার করি তবে প্রায়শই আমি যোগদানের জন্য সারোগেট মাধ্যমিক কীগুলি অন্তর্ভুক্ত করি (স্পষ্টত এটি অন্যভাবে হবে যদি আমি মাইএসকিউএল ব্যবহার করি তবে)। আমি এমনটি করি না এমন কেস রয়েছে।
প্রথমে আমি প্রাকৃতিক কীগুলি প্রাথমিক কী হিসাবে ঘোষণা করার ভক্ত, যেখানে ডিবি এটি ভালভাবে পরিচালনা করতে পারে (উদাহরণস্বরূপ পোস্টগ্র্রেএসকিউএল)। এটি সাধারণীকরণে সহায়তা করে এবং পরিষ্কার ডাটাবেস ডিজাইনের জন্য তৈরি করে। সারোগেট কীগুলি যোগ দেওয়া সহজ করে তোলে।
আমি সাধারণত সরোগেট কীগুলি যুক্ত করার দুটি কারণ রয়েছে:
প্রাকৃতিক কী কী তা সবসময় পরিষ্কার হয় না। কখনও কখনও এগুলি পরিবর্তন করতে হবে। একটি প্রাকৃতিক, সংমিশ্রিত কী পরিবর্তন করা যখন এটি যোগ দেয় এবং রেফারেন্সিয়াল অখণ্ডতার জন্য ব্যবহৃত হয় জটিল এবং ত্রুটির প্রবণ।
সংমিশ্রিত কীগুলিতে পারফরম্যান্সে যোগ দিন সমস্যাযুক্ত এবং একবার আপনি প্রাকৃতিক কী রুটে নামলে আপনি সেখানে আটকে যান।
যে কোনও ক্ষেত্রে প্রাকৃতিক কী সংজ্ঞাযুক্ত, একক কলাম এবং পাঠ্য, তবে আমি সাধারণত স্ট্রিং কীটিতে যোগদান করি। আমার এটি করার কারণ হ'ল এটি প্রায়শই অনুসন্ধানে যোগদান করা এড়িয়ে যায়। সবচেয়ে সাধারণ ব্যবহার হ'ল এনাম ধরণের ব্যবহারের ক্ষেত্রে সঠিক ডিবি ডিজাইন সরবরাহ করা। বেশিরভাগ ক্ষেত্রে, এগুলি রুটিন প্রশ্নের জন্য অতিরিক্ত যোগদানের প্রয়োজন হয় না । সুতরাং যেখানে এটি ক্ষেত্রে, জোড় কী হিসাবে স্ট্রিং কীগুলি নিখুঁত ধারণা দেয়।
উদাহরণস্বরূপ লেজার এসএমবিতে আমরা অ্যাকাউন্টের শ্রেণিবদ্ধকরণ সঞ্চয় করি। এগুলি স্ট্রিং রেফারেন্স দ্বারা সনাক্ত করা হয় and এবং কিছু অন্যান্য ডেটা স্ট্রিং রেফারেন্সের সাথে সঞ্চিত থাকে যা কোনও অ্যাকাউন্টকে প্রভাবিত করতে পারে এমন শ্রেণিবদ্ধকরণগুলির সংমিশ্রণ সম্পর্কিত নিয়ম প্রয়োগ করতে ব্যবহৃত হয়। শ্রেণীবদ্ধকরণের একটি সেট সংরক্ষণ করার সময় কেবল যুক্তিটির প্রয়োজন হয়, তাই আমরা স্ট্রিং কীতে যোগ দেব।
ডিফল্টটি কেন পূর্ণসংখ্যা কী হবে তা আমি মনে করি না এটি কেবল সূচক আকারের প্রশ্ন। একটি বড় সমস্যা হ'ল কী পরিচালনা করা। যেহেতু চাবিটি নির্বিচারে এবং আপনি কয়েক মিলিয়ন রেকর্ড নিয়ে কাজ করছেন, আপনার কাছে অনন্য স্ট্রিংগুলি তৈরি করার উপায় থাকতে হবে। লোকেরা এর জন্য ইউইউডি ব্যবহার করে তবে ইউইউডি সংঘর্ষের অ-শূন্য সম্ভাবনা রয়েছে এবং যেখানে কোটি কোটি রেকর্ড সঞ্চিত রয়েছে সেখানে এই সুযোগটি যথেষ্ট পরিমাণে বেড়ে যায় যখন বর্ধিত পূর্ণসংখ্যার ধরণের সংঘর্ষের সম্ভাবনা শূন্য হয় সংজ্ঞানুসারে.