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