একটি ওআরএম এবং একটি ওডিএম এর মধ্যে পার্থক্য কী?


157

আমি ওআরএম এবং ওডিএম-এর মধ্যে পার্থক্যটি কী তা বুঝতে চেষ্টা করছি, যতক্ষণ আমি ধারণাটি বুঝতে পারি, ওআরএম (অবজেক্ট রিলেশনাল ম্যাপার) ডেটার মধ্যে সম্পর্কের মানচিত্র তৈরি করে, যেখানে ওডিএম (অবজেক্ট ডকুমেন্ট ম্যাপার) নথিগুলি নিয়ে কাজ করে। আমি কি ঠিক ধরে নিচ্ছি যে মাইএসকিউএল ওআরএমের একটি উদাহরণ এবং মঙ্গোডিবি ওডিএমের একটি উদাহরণ?

যেহেতু আমি নিশ্চিত আপনি দেখতে পাচ্ছেন, আমি ধারণার তত্ত্বের সাথে খুব বেশি পরিচিত নই। কেউ দয়া করে দুজনের মধ্যে পার্থক্য পরিষ্কার করতে পারে?

উত্তর:


173

মাইএসকিউএল একটি রিলেশনাল ডাটাবেসের একটি উদাহরণ - আপনি কোডে আপনার অবজেক্ট এবং ডেটার আপেক্ষিক উপস্থাপনের মধ্যে অনুবাদ করতে একটি ORM ব্যবহার করবেন।

ORMs উদাহরণ হল nHibernate , সত্তা ফ্রেমওয়ার্ক , ড্যাপার এবং আরো ...

মঙ্গোডিবি হ'ল একটি নথির ডাটাবেসের উদাহরণ - আপনি কোডে আপনার অবজেক্ট এবং ডেটার ডকুমেন্টের উপস্থাপনের (যদি প্রয়োজন হয়) ডকুমেন্টের মধ্যে অনুবাদ করার জন্য একটি ওডিএম ব্যবহার করবেন।

ম্যান্ডাঙ্গো মোংগোডিবি-র একটি ওডিএম-র উদাহরণ।


8
আপনার হাইব্রিড ওআরএম / ওডিএম ফ্রেমওয়ার্ক থাকতে পারে, যেমন দেলফির জন্য এমওআরএমট , পিএইচপি-র জন্য মতবাদ বা জাভার জন্য হাইবারনেট ওজিএম । এবং কিছু এসকিউএল ডাটাবেসগুলিতে নথির শক্তিশালী সমর্থন রয়েছে, যেমন দুর্দান্ত পোস্টগ্র্যাসএসকিউএল যা জেএসওএন বা জেএসওএনবি ডেটা প্রকারের বৈশিষ্ট্যযুক্ত যাতে আপনি সূচিপত্র এবং উন্নত ক্যোয়ারী সহ একই টেবিলে আরডিবিএমএস এবং নথিভিত্তিক স্টোরেজ মিশ্রিত করতে পারেন!
অর্ণাড বোচেজ

সুতরাং আপনি বলছেন যে দস্তাবেজগুলি নথিগুলি ... এটি বোধগম্য!
হ্যাশরকেটসিন্ট্যাক্স

মঙ্গুজ একটি ওডিএম বা ওআরএম?
YL

1
মঙ্গুজ, মঙ্গোড সব ওডিএম এর। আমি অনুমান করি যে কোনও নুএসকিউএল রয়েছে আমাদের কেবল ওডিএম থাকতে পারে।
লুনা লাভগুড

27

কোনও ওআরএম মানচিত্র একটি অবজেক্ট মডেল এবং রিলেশনাল ডেটাবেসগুলির মধ্যে। কোনও ওজেক্ট মডেল এবং একটি ডকুমেন্ট ডাটাবেসের মধ্যে একটি ওডিএম মানচিত্র। মাইএসকিউএল কোনও ওআরএম নয়, এটি সম্পর্কিত সম্পর্কিত ডেটাবেস, বিশেষত, এসকিউএল ডেটাবেস। মঙ্গোডিবি কোনও ওডিএম নয়, এটি একটি নথির ডাটাবেস।


দুর্দান্ত ব্যাখ্যা! আমি এখনও পরিষ্কার নই যে ওডিএম / ওআরএম অন্তর্নিহিত ডাটাবেস বা ড্রাইভার লাইব্রেরি দ্বারা প্রদত্ত বিমূর্ত স্তরগুলি, বা এগুলি ড্রাইভার এবং ডিবির মধ্যে একটি পৃথক স্তর? কোনও ডকুমেন্ট ডেটাবেস এবং তার বিপরীতে কোনও ওআরএম ড্রাইভার থাকতে পারে?
pooya13

10

মূলত, একটি ওআরএম একটি এসকিউএল ডাটাবেস ড্রাইভার যেমন ওডিবিসি, জেডিবিসি বা ওএইলডিবি ব্যবহার করে সম্পর্কিত সম্পর্কিত স্বরলিপিটি অনুবাদ করতে এবং একটি ওডিএম একটি জেএসওএন বা জেএসএনবি এপি ব্যবহার করে দস্তাবেজ স্বরলিপিতে অবজেক্ট স্বরলিপি অনুবাদ করে।

হুডের নীচে বিভিন্ন ধরণের বাস্তবায়ন রয়েছে।

পিএস: জেএসএনবি মোঙ্গোডিবি দ্বারা ব্যবহৃত বাইনারি ফর্ম্যাটে সঞ্চিত একটি জেএসএন পাঠ্য নথির স্বরলিপি।


1
প্রযুক্তিগতভাবে বলতে গেলে, ওডিবিসি আনড জেডিবিসি হ'ল এপিআই স্পেসিফিকেশন যা কোনও ড্রাইভার প্রয়োগ করে।
জিজ্ঞাসা করুন

2
পোস্টগ্রিসও জেএসওএনবি সমর্থন করে
লুনা লাভগুড

3

আপনি যখন প্রথম ডাটাবেসটির সাথে কীভাবে কাজ করবেন তা শিখবেন, তখন এটি দুটি ধরণের ডাটাবেস সেটআপ নেমে আসে যা ওআরএম (অবজেক্ট রিলেশন ম্যাপিং) এবং ওডিএম (অবজেক্ট ডকুমেন্ট ম্যাপিং)

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

অন্যদিকে ওডিএম হ'ল একটি অবজেক্ট ডকুমেন্ট ম্যাপার, যা মঙ্গোডিবি এর মতো একটি ডকুমেন্ট ডেটাবেস সহ বস্তুগুলিকে মানচিত্র করে।

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


2

মঙ্গুজ হ'ল মোংগোডিবি-র জন্য ওডিএম (অবজেক্ট ডেটা মডেল) এর জন্য একটি ভাল উদাহরণ যেখানে আপনি সরাসরি অবজেক্টগুলির সাথে ক্রিয়াকলাপ সম্পাদন করতে পারেন এবং এটি যথাযথ ক্যোয়ারী এবং স্কিমায় অনুবাদিত হয়। এটি https://mongoosejs.com/ এ পাওয়া যাবে

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