মঙ্গোডিবি বনাম ক্যাসান্দ্রার কথা বলার সময় "ডকুমেন্ট-ওরিয়েন্টেড" বনাম কী-মান বলতে কী বোঝায়?


উত্তর:


153

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

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

অন্যান্য ধরণের নোএসকিউএল ডাটাবেসের মধ্যে কলাম-ওরিয়েন্টেড স্টোর , গ্রাফ ডাটাবেস এবং এমনকি অবজেক্ট ডাটাবেস অন্তর্ভুক্ত রয়েছে । তবে এটি প্রশ্নের বাইরে।

আরো দেখুন


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

17

ঠিক আছে, আমি গত একমাস আগে নিজেই নোএসকিউএল তদন্ত করেছি। আমি মনে করি এটি সাধারণত কিছু বর্ণিত হতে পারে

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

2

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

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

তবে, শীর্ষ স্তরে একটি কীস্পেস রয়েছে, যা মঙ্গোডিবি ডাটাবেসের অনুরূপ।

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