আমি ছোট এন্টারপ্রাইজ গ্রাহকদের জন্য ওয়েব ভিত্তিক ক্লোজার অ্যাপ্লিকেশন হিসাবে ভিত্তি ভিত্তিক (স্থানীয়ভাবে ইনস্টল করা) অ্যাপ্লিকেশন (চালান + ইনভেন্টরি) ভিত্তিতে একটি ভিবি পুনরায় লেখার দিকে লক্ষ্য করছি। আমি অনুরূপ ট্রেডে গ্রাহকদের জন্য এটি সাএএস অ্যাপ্লিকেশন হিসাবে সরবরাহ করার ইচ্ছা করছি।
আমি ডাটাবেস বিকল্পগুলির দিকে তাকিয়ে ছিলাম: আমার পছন্দটি ছিল একটি আরডিবিএমএস: পোস্টগ্র্যাস্কিল / মাইএসকিউএল। আমি প্রথম বছরে 400 ব্যবহারকারী পর্যন্ত স্কেল করতে পারি, সাধারণত 20-40 পৃষ্ঠা ভিউ / প্রতি ব্যবহারকারী প্রতি দিন - বেশিরভাগই স্থির দর্শন নয় লেনদেনের জন্য। প্রতিটি দৃশ্যে ডেটা আনার এবং ডেটা আপডেট করা জড়িত। এসিডি সম্মতি প্রয়োজনীয় (বা তাই আমি মনে করি)। সুতরাং লেনদেনের পরিমাণ বিশাল নয়।
আমার পছন্দের উপর ভিত্তি করে এগুলির মধ্যে যে কোনও একটি বেছে নেওয়া কোনও নন-ব্রেইনার হত, তবে এই একটি প্রয়োজনের জন্য যা আমি বিশ্বাস করি যে এটি একটি সাআস অ্যাপ্লিকেশনটির আদর্শ: আমি আরও গ্রাহক / ব্যবহারকারী যুক্ত করার সাথে সাথে প্রতিটি গ্রাহকের জন্য স্কিমার পরিবর্তন হবে ব্যবসায়ের প্রয়োজনীয়তা পরিবর্তন করা (আমি কেবলমাত্র শুরু করার জন্য কিছু সীমিত নমনীয়তা দেব)। যেহেতু আমি কোনও ডিবি বিশেষজ্ঞ নই, আমি যা ভাবতে পারি এবং পড়েছি তার উপর ভিত্তি করে আমি এটি বেশ কয়েকটি উপায়ে পরিচালনা করতে পারি:
- একাধিক ভাড়াটে হোস্টিংয়ের সাথে একক ডিবি সহ মাইএসকিউএল / পোস্টগ্রেস্কল-এ একটি traditionalতিহ্যবাহী আরডিবিএমএস স্কিমা ডিজাইন রয়েছে। আমি বিদ্যমান গ্রাহকের জন্য আরও বেশি গ্রাহক বা পরিবর্তন যুক্ত করায় ভবিষ্যতে পরিবর্তনগুলির জন্য অনুমতি পেতে প্রতিটি সারণীতে পর্যাপ্ত "ফ্রি-ফ্লোটিং" কলাম যুক্ত করুন। স্কিমাতে যতবার ছোট পরিবর্তন আনা হয় ততবারে ডিবিতে পরিবর্তনগুলি প্রচার করার এই একটি নেতিবাচক দিক হতে পারে। আমার মনে আছে যে পোস্টগ্র্যাস্কল স্কিমা আপডেটগুলি লক না করে রিয়েল টাইম করা যায়। তবে নিশ্চিত নয়, এই ব্যবহারের ক্ষেত্রে এটি কতটা বেদনাদায়ক বা বাস্তব। এবং এছাড়াও, স্কিমা পরিবর্তনগুলি নতুন / গৌণ এসকিউএল পরিবর্তনগুলিও প্রবর্তন করতে পারে।
- একটি আরডিবিএম রয়েছে, তবে ডাটাবেস স্কিমাটি নমনীয় পদ্ধতিতে ডিজাইন করুন: সত্তা-গুণমান-মানটির কাছাকাছি বা একটি মূল-মান স্টোর হিসাবে। (উদাহরণস্বরূপ ওয়ার্কডে, ফ্রেন্ডফিড)
- সম্পূর্ণ জিনিসটিকে বস্তু হিসাবে স্মৃতিতে রাখুন এবং পর্যায়ক্রমে লগ ফাইলগুলিতে এগুলি সংরক্ষণ করুন eg (উদাঃ, এডওয়াল, lmax)
- মঙ্গোডিবি বা রেডিসের মতো নোএসকিউএল ডিবিতে যান। তবে আমি যা সংগ্রহ করতে পারি তার ভিত্তিতে, তারা এই ব্যবহারের ক্ষেত্রে উপযুক্ত নয় এবং পুরোপুরি এসিআইডি অনুগত নয়।
- কিছু নতুন এসকিউএল ডিবিএস যেমন ভোল্টডিবি বা জাস্টোনডিবি (ক্লাউড ভিত্তিক) এর জন্য যান যা এসকিউএল এবং এসিডি অনুগত আচরণ বজায় রাখে এবং "নতুন-জেন" আরডিবিএমএস হয়।
- আমি নিও 4 জে (গ্রাফডিবি) তাকালাম তবে নিশ্চিত না যে এটি এই ব্যবহারের ক্ষেত্রে উপযুক্ত হবে কিনা
আমার ব্যবহারের ক্ষেত্রে, স্কেলাবিলিটি বা ডিস্ট্রিবিউটেড কম্পিউটিংয়ের চেয়ে বেশি, আমি "স্কিমা + এসিডি + কিছু যুক্তিসঙ্গত পারফরম্যান্সে নমনীয়তা" অর্জনের জন্য আরও ভাল পদ্ধতির দিকে তাকিয়ে আছি। নেট এ আমি বেশিরভাগ নিবন্ধগুলিতে স্কিমে নমনীয়তার কথা বলেছিলাম যার ফলে কর্মক্ষমতার (নোএসকিউএল ডিবি-র ক্ষেত্রে) এবং এসিআইডি / লেনদেনের দিকটি বাইরে রেখে স্কেলিবিলিটি হয়।
এটি 'এসিআইডি বনাম এসিডি' লেনদেনের একটি "বা" কেস বা আরও ভাল উপায় আছে?