রাউইউজিডকোল হিসাবে পিকে করবেন বা একটি পৃথক রাউইগুইড কলাম ব্যবহার করবেন?


9

এখানে দীর্ঘ-বিতর্কিত বিতর্ক চলছে যাতে আমি অন্যান্য মতামত শুনতে চাই।

আমার অনন্য পরিচয়দাতা ক্লাস্টারড পিকে সহ অনেক টেবিল রয়েছে। এটি ভাল ধারণা কিনা তা এখানে সুযোগের বাইরে (এবং এটি শীঘ্রই যে কোনও সময় পরিবর্তিত হবে না)।

এখন, ডাটাবেসটি প্রকাশিত করতে হবে এবং ডিইভিগুলি বিদ্যমান পিকে রাউজিউডকোল হিসাবে চিহ্নিত করার পরিবর্তে একটি পৃথক রাউগুইড কলাম ব্যবহার করার পক্ষে পরামর্শ দিচ্ছে।

মূলত, তারা বলে যে অ্যাপ্লিকেশনটিকে কখনই এর ডোমেনের মধ্যে এমন কিছু আনতে হবে না যা কেবলমাত্র প্রতিলিপি দ্বারা ব্যবহৃত হয় (এটি কেবল তাদের জন্য "ডিবিএ স্টাফ")।

পারফরম্যান্সের দৃষ্টিকোণ থেকে, আমি কোনও বিদ্যমান কপির সাথে আমি কী করতে পারি তার জন্য আমার একটি নতুন কলাম যুক্ত করার কারণ নেই। তদুপরি, এটি যেহেতু এটি শুধুমাত্র "ডিবিএ স্টাফ", তাই ডিবিএকে বাছাই করতে দেয় না কেন?

আমি ডিইভিগুলির কথাটি বুঝি তবে আমি এখনও একমত নই।

থটস?

সম্পাদনা: আমি কেবল যুক্ত করতে চাই যে এই বিতর্কে আমি সংখ্যালঘুতে আছি এবং আমার অবস্থান নিয়ে প্রশ্ন করা ডিইভিরা হ'ল আমি সম্মান ও বিশ্বাস করি। এই কারণেই আমি মতামত জিজ্ঞাসা করেছিলাম।
আমিও কিছু মিস করছি এবং তাদের বিষয়টিকে ভুল বুঝে উঠতে পারি।


ভবিষ্যতে কোনও পিকে মান পরিবর্তনের প্রয়োজনের কি সম্ভাবনা আছে?
রবার্ট এল ডেভিস

না সত্যিই না. এটি একটি সারোগেট কী, তাই অ্যাপ্লিকেশনটি column কলামটি সহ সত্যিই বেশি কিছু করে না। এটি কখনও পরিবর্তন হয় না এবং এটি কখনই ব্যবহারকারীর কাছে প্রদর্শিত হয় না।
স্প্যাগেটিডবা

তারা কেন একটি পৃথক রোউইউইডকোল চায়? এবং তারা সাধারণভাবে কোন স্কিম বেছে নেবে, যদি তারা পিকেকে করতে পারে, এবং কেন?
জাস্টিনস

@ স্প্যাগেটিডবা ডোমেনগুলি অতিক্রম করার কথা বলছেন, আপনি তাদের ঘন ঘন কীভাবে তাদের অ্যাপ কোডটিতে কোন ডিজাইনের ধরণগুলি ব্যবহার করা উচিত বা ব্যবহার করা উচিত নয় তা বলবেন? হতে পারে তাদের "ডোমেন" তে লেগে থাকা উচিত? ;-)। তদ্ব্যতীত, সমস্ত টেবিলগুলিতে একটি 16 বাইট কলাম যুক্ত করা কার্য সম্পাদনের জন্য ভয়ঙ্কর হবে এবং কোনও সুবিধা দেয় না।
সলোমন রুটজকি

উত্তর:


7

মূলত, তারা বলে যে অ্যাপ্লিকেশনটিকে কখনই এর ডোমেনের মধ্যে এমন কিছু আনতে হবে না যা কেবলমাত্র প্রতিলিপি দ্বারা ব্যবহৃত হয় (এটি কেবল তাদের জন্য "ডিবিএ স্টাফ")।

অামি সম্পূর্ণ একমত. তবে ... প্রাথমিক কীটি কেবল প্রতিলিপি ব্যবহারের জন্য ব্যবহৃত হয় না (সম্ভবত অ্যাপ্লিকেশনটি কোনও উপায়ে এটি ব্যবহার করে )। যুক্তি এই প্রসঙ্গে কোন অর্থ দেয় না।

যে কোনও ইভেন্টে, যতদূর আমি সচেতন, এই "ডিবিএ স্টাফ" এর ডোমেন সীমানা অতিক্রম করার জন্য কেবল দুটি উপায় রয়েছে:

  1. যদি অ্যাপ্লিকেশনটি কোয়েরিগুলি ব্যবহার করে যা ROWGUIDCOLকলামটির মতো করে:

    DECLARE @a table (id uniqueidentifier ROWGUIDCOL);
    
    SELECT ROWGUIDCOL FROM @a;

    আমি ধরে নিচ্ছি যে আপনার কোনও কলামে এখনও এই সম্পত্তি নেই, তাই অ্যাপ্লিকেশনটি এটি করছে না। (যাইহোক, ROWGUIDCOLপ্রতিরূপ থেকে সম্পূর্ণ পৃথক ধারণা। এটি ঠিক তাই ঘটে যে মার্জ প্রতিলিপি এটি ব্যবহার করে।)

  2. প্রাথমিক কী কলামটি আর আপডেটযোগ্য হবে না। যদি অ্যাপ্লিকেশনটি এটি করছে এবং অন্য অ্যালগরিদম ব্যবহারের জন্য পরিবর্তনগুলি করা হচ্ছে না , সারণীতে একটি নতুন কলাম যুক্ত করা ছাড়া আর কোন উপায় নেই , এবং তাই কোনও আলোচনা করার প্রয়োজন নেই।

এই আচরণগুলি বাদে ROWGUIDCOLসম্পত্তি সম্পূর্ণ স্বচ্ছ। আপনি এটি যুক্ত করতে পারেন, এবং অ্যাপ্লিকেশনটি কখনই জানতে পারে না। যে কোনও ধরণের ডেটা প্রতিরূপের দৃশ্য অ্যাপ্লিকেশনগুলিতে যথাসম্ভব স্বচ্ছ হওয়া উচিত।


উত্তর করার জন্য ধন্যবাদ. না, অ্যাপ্লিকেশনটি 1. বা 2 করছে না ten সম্পূর্ণতার জন্য, কিছু টেবিল ইতিমধ্যে পিকে-র মধ্যে ROWGIDCOL সম্পত্তি দিয়ে সজ্জিত।
স্প্যাগেটিডবা

যদিও আমি একমত যে প্রতিলিপি প্রয়োগের ক্ষেত্রে স্বচ্ছ হওয়া উচিত, আমি এও বিশ্বাস করি যে যে ডাটাবেসগুলি প্রকাশ করতে হবে তা অবশ্যই গ্রাউন্ড আপ থেকে প্রতিলিপি করার জন্য চিন্তা করা উচিত । একত্রিতকরণের প্রতিরূপে সনাক্তকরণের পরিচয় পুরোপুরি পিটা, উদাহরণস্বরূপ: আপনি যদি প্রকাশ থেকে মার্জ করতেই শুরু থেকে জানেন তবে এ থেকে দূরে থাকা এক জিনিস।
স্প্যাগেটিডবা

@ স্প্যাগেটিডবা: হ্যাঁ, আমি সম্পূর্ণরূপে একমত যে প্রতিলিপি কার্ডগুলিতে থাকলে ডেটাবেস অবশ্যই এর জন্য তৈরি করতে হবে designed প্রায়শই কেবল সেরা অভ্যাসগুলি অনুসরণ করলে সেখানে বেশিরভাগ পথ পাওয়া যায়; এটি কুরুচিপূর্ণ, লোমশ উত্তরাধিকারের ডাটাবেসগুলির মধ্যে বেশিরভাগ ডিজাইনের সমস্যা রয়েছে। আমার অভিজ্ঞতা থেকে, বিশেষত একত্রীকরণের প্রতিরূপকরণ অন্যান্য প্রতিরূপ ব্যবস্থার তুলনায় আরও চ্যালেঞ্জিং।
জন সেগেল 31'13

@spaghettidba এবং জন: শুধু অবগতির জন্য, ব্যবহার ROWGUIDCOLযে প্রেক্ষাপটে (অর্থাত না একটি CREATE TABLE/ ALTER TABLEবিবৃতি) অন্তত যেহেতু অবচিত হয়েছে এসকিউএল সার্ভার 2008 R2 পক্ষে (FeatureID 182 জন্য অনুসন্ধান) $ROWGUID
সলোমন রুটজকি

6

আমি রাজী. যতক্ষণ পিকে মান পরিবর্তন করার প্রয়োজন নেই, ততক্ষণ বিদ্যমান অদ্বিতীয় পরিচয়দাতা কলামটি রাউইউডকোল হিসাবে ব্যবহার করা ভাল।


5

"মূলত, তারা বলে যে অ্যাপ্লিকেশনটিকে এর ডোমেনে কখনই এমন কিছু এনে দেওয়া উচিত যা কেবল প্রতিরূপ দ্বারা ব্যবহৃত হয় (এটি কেবল তাদের" ডিবিএ স্টাফ ")।

তবে এটি কেবল প্রতিলিপি ব্যবহারের জন্য ব্যবহৃত হয় না। এটি আপনার পিকেও (এবং ইতিমধ্যে)।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.