মেনেসিয়া: সুবিধা এবং পার্থক্য


22

বড় এসকিউএল ডাটাবেস বাস্তবায়নের ক্ষেত্রে মেনেসিয়ার সুবিধা কী কী এবং এটি কীভাবে তাদের থেকে পৃথক হয়?

লক্ষণীয় পারফরম্যান্স অবক্ষয় ছাড়াই আমি কি বিপুল পরিমাণে ডেটা ডাটাবেস ব্যবহার করতে পারি?


4
আমি মনে করি এই প্রশ্নের আরও কিছুটা ফোকাস দরকার। অন্যান্য ডাটাবেস বাস্তবায়ন থেকে আপনি সুবিধাগুলি বা পার্থক্য বিচার করতে আপনি যে মানদণ্ডটি ব্যবহার করবেন তা কি আপনি তালিকাভুক্ত করতে পারেন? এটি সত্যই উইকিপিডিয়া নিবন্ধ / তালিকার প্রার্থীর মতো বলে মনে হচ্ছে, এখানে উত্তর দেওয়া যায় এমন কিছু নয়। অধিকন্তু, মেনেসিয়া কীভাবে কাউচডিবি-র তুলনায় সত্যই বেশি অনুরূপ তা বিবেচনা করে, আপনি যেটির সাথে তুলনা করতে চান তার নাম না দিয়ে কীভাবে এটি "মেজর" এসকিউএল বাস্তবায়নগুলির সাথে তুলনা করে তা জিজ্ঞাসা করা মোটেও ন্যায়সঙ্গত নয়। এসকিউএল সার্ভার বা ওরাকেলের সাথে তুলনা করে পারফরম্যান্সের জন্য এটি নোড-টু-নোডের কাছাকাছিও নয়।
jcolebrand

উত্তর:


31

পার্টিতে দেরি হওয়ার জন্য দুঃখিত :) 1996 সাল থেকে মেনেসিয়া এবং 1988 সাল থেকে বিভিন্ন অন্যান্য ডাটাবেস প্রযুক্তি ব্যবহারের ভিত্তিতে আমার উত্তর এখানে।

মেনেসিয়া এবং মাইএসকিউএল প্রকৃতপক্ষে পৃথক জন্তু এবং কোনটি সেরা তা আপনি কীভাবে এটি ব্যবহার করতে চান তার উপর নির্ভর করে।

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

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

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

মেনেসিয়াও প্রতি টেবিল 2 জিবি সীমাবদ্ধ নয় (যদিও একটি নির্দিষ্ট স্টোরেজ বিকল্প )। আমি জানি যে বৃহত্তম মেনেসিয়া ডাটাবেসটিতে ((৪-বিট) র‌্যাম + ডিস্কে 600০০ জিবি ডেটা রয়েছে - যদিও আমি এটি প্রস্তাব করি না। 10-10 গিগাবাইট পর্যন্ত যেকোনো কিছুই আধুনিক হার্ডওয়্যারের সাথে পুরোপুরি ঠিক হওয়া উচিত, তবে ডিস্ক_অনলি_কপিগুলি পুরোপুরি এড়িয়ে চলুন এবং ডিস্ক_কপিগুলি ব্যবহার করুন - আপনার যদি প্রয়োজন হয় তবে আরও র‌্যাম কিনুন। আমি শারডিং সমর্থন (মিনেসিয়া_ফ্রেগ) ব্যবহার করার আগে দু'বার ভাবি - এটি কাজ করে তবে সমস্যাটি খুব কমই হয়।

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

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

বেশিরভাগ অ্যাপ্লিকেশনগুলি কোথাও কোথাও না কোথাও পড়ে যায় এবং এটি এখানেই রায় দেওয়া হয়। আপনি উভয় ভাল ব্যবহার শেষ হতে পারে ...


3
উত্তর করার জন্য ধন্যবাদ. আমি মেনেসিয়ায় পড়েছি এটি সবচেয়ে ভাল ব্যাখ্যা।
অক্ষত জিওয়ান শর্মা

1
আমাদের সাথে আপনার অভিজ্ঞতা ভাগ করে নেওয়ার জন্য ধন্যবাদ, এটি কোনও ব্লগ পড়ার চেয়ে অনেক বেশি মূল্যবান।
রাহুল গৌতম

দুর্দান্ত উত্তর, তবে আমি এখন আরও বিভ্রান্ত।
হীরা ঠাকুর

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

13

ডকুমেন্টেশন থেকে :

মেনেসিয়া হ'ল একটি বিতরণ করা ডেটাবেস ম্যানেজমেন্ট সিস্টেম, যা টেলিযোগাযোগ অ্যাপ্লিকেশন এবং অন্যান্য এরলং অ্যাপ্লিকেশনগুলির জন্য উপযুক্ত যার জন্য ক্রমাগত অপারেশন এবং নরম রিয়েল-টাইম বৈশিষ্ট্য প্রয়োজন। এটি ওপেন টেলিকম প্ল্যাটফর্মের একটি অংশ (ওটিপি), যা টেলিযোগাযোগ অ্যাপ্লিকেশন তৈরির জন্য একটি নিয়ন্ত্রণ সিস্টেম প্ল্যাটফর্ম।

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

টেলিযোগাযোগ অ্যাপ্লিকেশনগুলিতে traditionalতিহ্যবাহী ডিবিএমএস দ্বারা সরবরাহিত বৈশিষ্ট্যগুলির থেকে পৃথক প্রয়োজন রয়েছে needs এরলং ভাষায় এখন প্রয়োগ করা অ্যাপ্লিকেশনগুলিতে বিস্তৃত বৈশিষ্ট্যের মিশ্রণ প্রয়োজন, যা সাধারণত traditionalতিহ্যবাহী ডিবিএমএস দ্বারা সন্তুষ্ট হয় না। মেনেসিয়া নিম্নলিখিত বিষয়গুলি মাথায় রেখে প্রয়োজনীয়তার সাথে ডিজাইন করা হয়েছে:

দ্রুত রিয়েল-টাইম কী / মান সন্ধান

মূলত অপারেশন এবং রক্ষণাবেক্ষণের জন্য জটিল নয় রিয়েল-টাইম প্রশ্নগুলি

বিতরণ অ্যাপ্লিকেশনগুলির কারণে ডেটা বিতরণ করা হয়েছে

উচ্চ দোষ সহনশীলতা

গতিশীল পুনরায় কনফিগারেশন

জটিল বস্তু

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

মেসিয়া বনাম মাইএসকিউএল, সম্পাদনা :

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

কাউচডিবি বনাম মেনেসিয়া, ভি। মাইএসকিউএল এবং অন্যান্য মনেসিয়ার বিষয় :

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

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

রেকর্ডস, ট্যাগগুলি এবং তাদের মধ্যে একটি লিঙ্ক টেবিলের মাইএসকিউএল-এ তিন-সারণী বিন্যাস (আমার কাছে কমপক্ষে) স্পষ্টতই সঠিক সমাধানটি রয়েছে তবে এটি করার অনেকগুলি সম্ভাব্য উপায় রয়েছে মেনেসিয়া এবং কাউচডিবি উভয় ক্ষেত্রে এবং আমি খুঁজে পাই আমার কাছে স্বজ্ঞাতভাবে উত্তর নেই।

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


4

না, আমি এটি বলব না যে ম্যাসিনিয়া প্রচুর পরিমাণে ডেটার জন্য ভাল। আপনি ব্যাকএন্ড হিসাবে Ets বা Dets ব্যবহার করতে বেছে নিতে পারেন । আপনি যদি Ets চয়ন করেন তবে আপনার ডাটাবেসটি কেবলমাত্র স্মৃতিশক্তি এবং খুব দ্রুত হবে তবে ডেটা স্থায়ী নয়। এবং যদি আপনি চান আপনার ডেটা অবিরাম (ডিস্কে সংরক্ষিত) চান আপনার ডিটস ব্যবহার করা দরকার, এটির 2 জিবি সীমা রয়েছে, সুতরাং আপনার ডাটাবেস 2 জিবি-র বেশি ডেটা ধরে রাখতে পারে না।

আপনি একটি কাস্টম ব্যাকএন্ড ব্যবহার করতে পারেন যেমন আনইনস্টোর যা রিয়াক নুএসকিউএল ডাটাবেসে ব্যবহৃত হয় ।

মেনেসিয়ার সুবিধাগুলি হ'ল এটি একটি বিতরণ করা ডাটাবেস তাই আপনার যদি একাধিক কম্পিউটার থাকে তবে ফল্ট সহনশীল সিস্টেমগুলি করা খুব সহজ। এবং এরলং-তে এটি ব্যবহার করা খুব সহজ কারণ এটি একটি ইন-ল্যাঙ্গুয়েজ ডেটাবেস এবং "ফাংশনের মতো" কাজ করে। এবং এটি খুব দ্রুত হয় যদি আপনার কেবলমাত্র একটি মেমরির ডাটাবেস যেমন ক্যাশের মতো দরকার হয়।

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