আমি আমার প্রথম আসল প্রকল্পটি রেলগুলিতে তৈরি করতে যাচ্ছি যা 3 টি মূল অংশ নিয়ে তৈরি একটি ওয়েব অ্যাপে অন্তর্ভুক্ত:
- স্থির অংশ যেখানে কোনও ডাটাবেস ব্যবহার করা হয় না
- ব্যবহারকারীর রেজিস্ট্রেশন অংশের একটি ডাটাবেসের প্রয়োজন হবে এবং আমি মাইএসকিউএল ব্যবহার করতে পারি যেহেতু প্রতিটি ব্যবহারকারীর সারিতে একই ক্ষেত্র থাকবে
- "অ্যাপ" যেখানে ব্যবহারকারীগণ সংগ্রহগুলিতে আইটেমগুলি তৈরি করতে, সংগঠিত করতে, সম্পাদনা করতে এবং অন্যান্য ব্যবহারকারীর সাথে ভাগ করতে সক্ষম হবেন
এখানে বেশ কয়েকটি আইটেমের ধরণ থাকবে এবং প্রত্যেকের আলাদা আলাদা বিকল্প থাকবে উদাহরণস্বরূপ আমার সাথে নিম্নলিখিত ভিডিওগুলি সহ "ভিডিও" আইটেম থাকতে পারে:
- আইডি
- ব্যবহারকারীর প্রমানপত্র
- collection_id
- শিরোনাম
- প্ল্যাটফর্ম (এম্বেড থাকলে)
- ইউআরএল (এম্বেড থাকলে)
- ফাইলের নাম (যদি আমার অ্যাপে হোস্ট করা থাকে)
- ফাইলের আকার (আমার অ্যাপে আইডি হোস্ট করা)
এবং "মানচিত্র" আইটেম:
- আইডি
- ব্যবহারকারীর প্রমানপত্র
- collection_id
- শিরোনাম
- প্ল্যাটফর্ম (গুগল ম্যাপস, বিং ম্যাপস ...)
- অবস্থান
- URL
- মানচিত্রের আকার
আপনি যখন ব্যবহারকারীদের পক্ষে পারেন তখন আমি মাইএসকিউএল আইটেমগুলির জন্য ব্যবহার করতে পারি মঙ্গোডিবিয়ের নমনীয়তা কার্যকর হতে পারে যেহেতু প্রতিটি আইটেমের জন্য অন্য বিকল্পের প্রয়োজন হতে পারে
এখন অবধি আমি সর্বদা পিএইচপি এবং মাইএসকিউএল ব্যবহার করেছি (সর্বদা ছোট প্রকল্পগুলির জন্য শেয়ার্ড হোস্টিংয়ে থাকে) এবং স্কেলাবিলিটিটি আমার জন্য একেবারে নতুন শব্দ।
আমার শেখার সময় আছে তবে আমি 1 মাসের মতো কিছুতে কংক্রিটের কিছু করতে সক্ষম হতে চাই।
আমি মোংগোডিবি এবং নোএসকিউএল বনাম আরডিএমএস এবং মাইএসকিউএল সম্পর্কে অনেক কিছু পড়েছি এবং চেষ্টা করার পরে আমাকে বলতে হবে যে মঙ্গোডিবি কীভাবে কাজ করে তা আমার পছন্দ: কোনও টেবিল, কোনও সারি এবং এর নথি JSON এর মতো নয়:
- আমার পরিস্থিতিতে আপনি কী উপার্জন করবেন? কেন?
- স্কেলাবিলিটি সম্পর্কে মঙ্গোডিবিতে সমস্যা হতে পারে? যদি হ্যাঁ কখন (ডিবি আকারের শর্তে) এবং এই সমস্যাগুলি আমার অ্যাপ্লিকেশনটিকে যথেষ্ট গতি কমিয়ে দিতে পারে?
সম্পাদনা করুন: অ্যাপটি কীভাবে কাজ করবে
যেহেতু অনেকেই জিজ্ঞাসা করেছিলেন যে আমি কীভাবে অ্যাপটিকে কাজ করতে চাই:
- একটি ব্যবহারকারী সাইন আপ
- তিনি লগ ইন করেছেন
- তিনি তার প্রথম সংগ্রহটি তৈরি করেন যা তিনি অসীম আইটেম তৈরি করতে পারেন
- আইটেমগুলি বিভিন্ন ধরণের এবং ডাটাবেসে সংরক্ষণ করার জন্য প্রতিটি প্রকারের জন্য আলাদা আলাদা ডেটা প্রয়োজন এবং আইটেমের ধরণ যুক্ত বা সংশোধন করা যেতে পারে
ব্যবহারকারীরা এর ভিতরে অন্যান্য সংগ্রহ এবং আইটেম তৈরি করতে পারে।
সুতরাং সেগুলির ভিতরে সংগ্রহ এবং আইটেমগুলির জন্য আমাদের কাছে CRUD রয়েছে এবং প্রতিটি সংগ্রহ / আইটেম একটি নির্দিষ্ট ব্যবহারকারীর কাছে উল্লেখ করা হয়
মাইএসকিউএল এর প্রধান সমস্যাটি হ'ল এটি কোনও নমনীয় স্কিমা নেই, এটি সমাধান করার উপায় আছে (একটি কার্যবিধে?)?
নোএসকিউএল সম্পর্কে আমার কেবল সন্দেহের বিষয়ে ভাবনা যোগ দেওয়া সম্পর্কে, উদাহরণস্বরূপ একটি নির্দিষ্ট সংকলন দেওয়াতে আমি সংগ্রহে আইডি = ইউজার_আইডি ফিল্ডের সাথে ব্যবহারকারীর সাথে সম্পর্কিত ডেটাগুলি পুনরুদ্ধার করতে চাই
সম্পাদনা: মাইএসকিউএল ব্যবহার করা আইডিয়া
Itemsচ্ছিক সেটিংস সহ "আইটেমগুলি" সারণিতে একটি ক্ষেত্র তৈরি করুন, প্রতিটি সেটিংস একটি দ্বারা বিভক্ত বা অন্য প্রতীক।
তারপরে আমি প্রতিটি আইটেমের somewhereচ্ছিক সেটিংসের কাঠামোটি কোথাও সংরক্ষণ করব, উদাহরণস্বরূপ "নোটস" আইটেম টাইপের জন্য দুটি optionচ্ছিক সেটিংস "রঙ" এবং "অদ্ভুত_সেটিং" প্রয়োজন, যখন আমি মাইএসকিউএল থেকে ডেটা পেয়েছি আমি alচ্ছিক সেটিংসের জন্য ক্ষেত্রটিকে একটিতে ভাগ করব অ্যারে জেনেও অ্যারে প্রথম আইটেমটি "রঙ" ইত্যাদির জন্য।
আপনি কি মনে করেন? সমাধান আছে কি সমস্যা আছে? আপনার অন্যান্য ধারণা আছে?