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