কেন এসকিউএল এর চেয়ে নোএসকিউএল দ্রুত?


48

সম্প্রতি আমাকে জিজ্ঞাসা করা হয়েছিল:

কেন এসকিউএল এর চেয়ে নোএসকিউএল দ্রুত?

আমি প্রশ্নের ভিত্তিটির সাথে একমত হইনি ... এটি ব্যক্তিগতভাবে আমার পক্ষে বোকামি। আমি এসকিউএল এর পরিবর্তে নোএসকিউএল ব্যবহার করে কোনও পারফরম্যান্স উত্সাহ দেখতে পাচ্ছি না। সম্ভবত এসকিউএল নোএসকিউএল এর চেয়ে বেশি, হ্যাঁ তবে সেভাবে নয়।

আমি কি নোএসকিউএল সম্পর্কে কিছু মিস করছি?


3
আপনি যদি কোনও পারফরম্যান্স বুস্ট দেখতে না পান তবে আপনি যা বলছেন তাই করুন। ঘটনাটি হ'ল বেশিরভাগ নোএসকিউএল সলিউশন রিলেশনাল ডাটাবেসের এসিআইডি বৈশিষ্ট্যের এক (বা আরও) ত্যাগ করে, তাই তারা কম করে।
ওডে

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

1
উত্তরটি: এটি কি তত দ্রুত প্রতিষ্ঠিত হয়েছে? এবং দ্রুত কি? উন্নয়নের সময়? পড়ার সময়? সময় লিখবেন? কোন প্রকারের লেখা? আমরা এর সাথে কি তুলনা করছি? একাধিক টেবিল কোয়েরি? যোগদান করেছে?
রলফ

উত্তর:


65

চারপাশে অনেক নোএসকিউএল সমাধান রয়েছে, প্রত্যেকে এর নিজস্ব শক্তি এবং দুর্বলতা রয়েছে, সুতরাং নিম্নলিখিতটি অবশ্যই লবণের দানা দিয়ে নেওয়া উচিত।

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

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

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

সর্বোপরি, এটি একটি অস্বীকৃত স্কিমা প্রত্যাশা করে এবং সেই পরিস্থিতির জন্য পাঠকে অনুকূল করে তোলে এবং এটি এমন ডেটার পক্ষে ভাল কাজ করে যা অত্যন্ত সম্পর্কযুক্ত নয় এবং এর জন্য লেখার চেয়ে অনেক বেশি পাঠের প্রয়োজন।


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

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

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

1
যদি আপনার কাছে 5,000,000 মিলিয়ন সারি ডেটা থাকে এবং আপনি কিছু শর্তে সেগুলির কাছ থেকে মন্তব্য পেতে চান। এসকিউএল সহ টেবিলের মন্তব্যের ক্ষেত্রে যদি আপনার একটি সূচক থাকে তবে এটি কী দ্রুত হবে না? পূর্ণ-পাঠ্য সূচীকরণ এটি আরও উন্নত করবে।
15w

@ এমর্গ - "রিলেশনাল মডেল নোএসকিউএল এবং আপনি আরও অনেক কিছু তৈরি করতে পারেন" " আসলেই না, না। এমন অনেক ধরণের ডেটার উদাহরণ রয়েছে যা সম্পর্কিত মডেলের সাথে এমন খারাপ ফিট করে যে এতে ডেটা চাপিয়ে দেওয়ার ফলে বিশাল অদক্ষতা হয়। উদাহরণ: একটি অনলাইন গেমের খেলোয়াড়দের তালিকা সংরক্ষণের সুবিধা রয়েছে। খেলোয়াড়দের স্নিগ্ধ স্লটগুলির একটি সীমাবদ্ধ সেট রয়েছে, যার মধ্যে প্রতিটি নির্দিষ্ট ধরণের এক বা একাধিক আইটেম সংরক্ষণ করতে পারে। প্রায় 50 টি বিভিন্ন ধরণের আইটেম রয়েছে, যার প্রতিটিটিতে 4-6 সম্পর্কিত বৈশিষ্ট্য রয়েছে যার কিছুটা ওভারল্যাপ রয়েছে, সুতরাং প্রায় 80 টি সম্ভাব্য বৈশিষ্ট্য রয়েছে ...
জুলস

27

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

সুতরাং যদি কেউ আপনাকে সাক্ষাত্কারে এ জাতীয় প্রশ্ন জিজ্ঞাসা করে, তবে এর উত্তর হওয়া উচিত।


4
নোএসকিউএল-এর একটি হত্যাকারী বৈশিষ্ট্য উপস্থিত থাকলে আমি এটি বলব স্কেলিবিলিটি। এজন্য ফেসবুক এবং গুগলস এটি ব্যবহার করে। কারণ ডেটার বিশাল ভলিউম। নোএসকিউএল: যখন আপনাকে প্রচুর পরিমাণে ডেটা নিয়ে কাজ করতে হয়।
পিটার বি

16

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

নিখোঁজ বৈশিষ্ট্যগুলি কংক্রিট পণ্যগুলির উপর নির্ভর করে, সম্পূর্ণ পূর্ণ এসিডি বৈশিষ্ট্যগুলিতে বা এমনকি যোগদানের ক্রিয়াকলাপগুলিকে সমর্থন করে না। এটি বর্ধিত পারফরম্যান্সের জন্য মূল্য।


1
নোএসকিউএলকে অ-সম্পর্কযুক্ত হিসাবে বর্ণনা করা আরও সুনির্দিষ্ট নয়। অন্যান্য পুরানো অপ-সম্পর্কযুক্ত ডিবি রয়েছে যেগুলি নোএসকিউএল বিভাগে আসে না। নোএসকিউএল মানে কেবল অ-সম্পর্কের চেয়ে অনেক বেশি। আরও তথ্যের জন্য এটি পড়ুন: martinfowler.com/bliki/NosqlDefinition.html
eddyP23

8

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


হ্যাঁ, এটি একটি কম্বল বিবৃতি, এবং আমরা যদি এটি সত্য হিসাবে মেনে নিই, তবে প্রশ্নের উত্তরটি হ'ল: এটি নির্ভর করে।
রলফ

5

নোএসকিউএল ডাটাবেসগুলি কেবল তখনই বোধগম্য হয় যদি আপনি তাদের চারপাশে আপনার ডেটা ডিজাইন করেন।

যদি আপনি এগুলি কেবল আরডিবিএমএস প্রতিস্থাপন হিসাবে ব্যবহার করার উদ্দেশ্যে থাকেন তবে আপনার চেয়ে বেশি পরিমাণের চেয়ে কম পারফরম্যান্স পেতে পারেন, বিশেষত যদি উচ্চ পরিমাণে র‌্যাম সহ সার্ভারগুলির জন্য আপনার অর্থের জন্য পর্যাপ্ত বাজেট না থাকে।

এই নিবন্ধটি দেখুন যা মাইএসকিউএল ডিস্ক স্থান ব্যবহারের সাথে মঙ্গোডিবি’র তুলনা করে: http://blog.trackerbird.com/content/mysql-vs-mongodb-disk-space-usage


3

কোন নোএসকিউএল ডাটাবেস? কোন এসকিউএল ডাটাবেস? যদি কেউ আপনাকে বলে যে এসকিউএল এর চেয়ে নোএসকিউএল দ্রুত হয় তবে আপনার চলে যাওয়া উচিত। বা আরও ভাল এখনও এই ভিডিওটি দেখুন:

http://www.youtube.com/watch?v=b2F-DItXtZs

আমি নোএসকিউএল সম্পর্কে দাবি করা অর্ধেক জিনিস ভুল বলে দেব না, তবে আমি বলব যে সত্যিকার অর্থে এটি খুব ভাল বোঝে না এমন লোকদের থেকে সেখানে প্রচুর নোএসকিউএল ফ্যানবায়িজম রয়েছে।

এসকিউএল এর সীমা রয়েছে (অবশ্যই) তবে এটি একটি খুব পরিপক্ক প্রযুক্তি, যা ভালভাবে বোঝা যায় এবং এটি বিকাশকারীদের একটি বৃহত পুল রয়েছে যা কীভাবে এটি ভালভাবে ব্যবহার করতে হয় তা বোঝে। আমি NoSQL এর সমস্ত ফর্মের জন্য একই বলতে পারি না the


-2

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

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


2
আমি গঠনটি কিছুটা স্থির করেছি, যদিও আপনি দুজনের মধ্যে কী পেতে চাইছেন তা আমি নিশ্চিত নই। আর এসিডি আরডিবিএমএস দ্বারা সর্বদা সমর্থিত হয় না।

-3

ডাটাবেসগুলির আশেপাশে তত্ত্বটি ভুলে যান .... আপনি যখন আপনার ক্যোরিগুলি বোঝেন তখন আপনি নোসকিএল ডাটাবেসে ডেটা সংরক্ষণ করতে পারেন যা সেগুলি আপনার অ্যাপ্লিকেশনটিতে আসলে ব্যবহৃত হয় ....

উদাহরণস্বরূপ এই উদাহরণটি ধরুন, আপনার প্রতিটি গ্রাহকের সাথে অনেকগুলি অর্ডার এবং অনেকগুলি আইটেম যুক্ত গ্রাহক মডেল রয়েছে, পরে তাদের কাছে পরবর্তী ক্রয়ের জন্য অনেকগুলি সংরক্ষিত আইটেম রয়েছে ... আপনি যদি 10 মিলিয়ন গ্রাহক এবং 50 এর সাথে একটি বড় ইকমার্স স্টোর হন তবে মিলিয়ন অর্ডার এবং সেই গ্রাহকটি তাদের ড্যাশবোর্ডে লগইন করে যা এই সঠিক তথ্যটি প্রদর্শন করে, গ্রাহককে সন্ধান করতে, অর্ডার এবং প্রতিটি লাইন আইটেম এবং সংরক্ষিত আইটেমগুলিতে যোগদানের জন্য কতগুলি কাজ করতে হবে এমন কোনও স্কিল ডাটাবেস। একটি স্কয়ার ডাটাবেসে এই সমস্ত ডেটা সম্ভবত কোনওভাবে যোগদানের প্রয়োজন হবে ... বা আপনি ইউজারক্যাস নামে আপনার ডেটাবেজে একটি সংগ্রহ তৈরি করতে পারেন এবং আপনি কীভাবে বাস্তব জীবনে এটি ব্যবহার করেন ঠিক এই ডেটা সংরক্ষণ করতে পারেন। সুতরাং এই সমস্ত তথ্য ফিরে পেতে সত্যই এটি একটি একক ক্ষেত্রে [আইডি] একক প্রশ্ন হতে পারে। উপরে যে nosql ডাটাবেস না '

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

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