NoSQL [বন্ধ] জন্য কেসগুলি ব্যবহার করুন


144

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


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

@ অ্যারনোথ আমি এই পার্থক্যের প্রশংসা করি, আমি অনুমান করি যে আমি সম্ভবত নোসকিএল দিয়ে একটি ছাতা শব্দ ব্যবহার করার জন্য দোষী হয়েছি
রবজমিলস

উত্তর:


86

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

এই পদ্ধতির গাড়ি নিয়ে যাওয়া এবং ঘোড়ার মতো আপনার গাড়িটিকে রাস্তায় টেনে আনতে এটি ব্যবহার করার চেষ্টা করার সাথে অনুরুপ।

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

একটি জুমলার প্রতিষ্ঠাতা হিসাবে আমি পক্ষপাতদুষ্ট :-) তবে সিএমএস স্পেস থেকে আগত, মংগাডিবি-র মতো কিছু হ'ল একটি স্বর্ণের বুলেট যা কন্টেন্ট ম্যাপ হিসাবে ডকুমেন্ট সিস্টেমগুলিতে খুব স্বাভাবিক।

মঙ্গোডিবি-র আরেকটি দুর্দান্ত কেস রিয়েল-টাইম অ্যানালিটিকাস, কারণ মঙ্গোডিবির খুব দৃ strong় কার্যকারিতা এবং স্কেল বিশেষত সম্মতি সম্পর্কিত regarding মংগোডিবি.আর ওয়েবসাইটে এমন কেস স্টাডি রয়েছে যা সেই বৈশিষ্ট্যগুলি প্রদর্শন করে।

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


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

49

কিছু দুর্দান্ত ব্যবহারের ক্ষেত্রে - মঙ্গোডিবি-তে যাইহোক - মঙ্গোডিবি সাইটে উল্লিখিত হয়েছে। প্রদত্ত উদাহরণগুলি হ'ল রিয়েল-টাইম অ্যানালিটিক্স, লগিং এবং সম্পূর্ণ পাঠ্য অনুসন্ধান। এই নিবন্ধগুলি সমস্ত একটি পড়ার মূল্যবান http://www.mongodb.com/use-cases

একটি দুর্দান্ত রচনাও রয়েছে যার উপর নোএসকিউএল ডাটাবেস কোন ধরণের প্রকল্পের জন্য সবচেয়ে উপযুক্ত ?: Http://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis


15

আমি রেক ক্যাটেলের এই নিবন্ধটি বিবিধ ডেটা স্টোর (ওরফে নোএসকিউএল), তাদের পার্থক্য এবং তাদের ব্যবহারের কয়েকটি ক্ষেত্রে সম্পর্কে পরামর্শ দেব: http://www.cattell.net/datastores/index.html


8

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


1
আমি একেবারে তুচ্ছ হিসাবে বলতে চাই না , তবে এটি অন্যথায় ডকুমেন্ট-ওরিয়েন্টেড ডেটাবেস সম্পর্কে একটি ভাল পয়েন্ট। বিপরীতটি অন্য কয়েকটি নোএসকিউএল পণ্যের ক্ষেত্রে সত্য - এসকিউএল / রিলেশনাল ডিবি-র তুলনায় DKVSes ম্যাপ করা আরও কঠিন হয়ে পড়ে।
অ্যারোনআট

8

আমি কিছুক্ষণের জন্য নোএসকিউএল ডিবি ব্যবহার করে আসছি, এবং এটি এই বিষয়টিতে আমার অবদান:

একটি মহান ব্যবহারের ক্ষেত্রে একটি NoSQL ডাটাবেসের জন্য জন্য একটি আবেদন পরিসংখ্যান এবং / অথবা রিপোর্ট প্রজন্মের , এবং expecially ডেটা একটি তৃতীয় পক্ষের উত্স থেকে প্রদান করা হয়।

এমন একটি পরিস্থিতিতে একটি নোএসকিউএল ডাটাবেস একটি দুর্দান্ত পছন্দ হতে পারে

আসুন বিবেচনা করুন, উদাহরণস্বরূপ, মঙ্গোডিবি :

একবার আপনি JSON এ আপনার ডেটা আছে, (এটা কোনও তৃতীয় পক্ষের API থেকে আসতে পারে, অথবা একটি SQL-অ্যাপ্লিকেশন থেকে রপ্তানি করা) এ MongoDB সুন্দর আমদানি করতে strightforward এবং আপডেট তাদেরকে JSON তথ্য ডাটাবেসের মধ্যে; উদাহরণস্বরূপ কমান্ড-লাইন mongoimportইউটিলিটি ব্যবহার করে

এই মুহুর্তে ফিল্টারিং এবং গ্রুপিংয়ের সাথে গতিশীল ক্যোয়ারী তৈরি করা খুব সহজ , এটি এই ধরণের অ্যাপ্লিকেশনের সাথে ভাল well

উদাহরণস্বরূপ, সমষ্টি ফ্রেমওয়ার্ক ব্যবহার করে :

$pipeline = [];

//filter by date
$pipeline[] = [ '$match' => [ 'created_at' => [ '$gte' => $starDate, '$lte' => $endDate ]  ]  ];

//if we want to filter by a specific field, we add the filter to the pipeline array
if( $filters->isFilterByField() )
    $pipeline[] = [ '$match' => [ 'field' => $fieldValue ] ];    

//group the results by date and get the count
$pipeline[] = [ '$group' => [ '_id' => '$created_at', 'num_elements' => [ '$sum' => 1 ] ] ];

return $collection->aggretate( $pipeline );

আমি বাতলান চাই অনায়াস যা দিয়ে আমরা করতে dinamically যোগ / অপসারণ ফিল্টার পিএইচপি ডাটা স্ট্রাকচার ব্যবহার করে এবং ক্লান্তিকর স্ট্রিং সংযুক্তকরণের এড়ানো আমাদের প্রশ্নের বিল্ড আপ। এই পদ্ধতির সাথে ডাইনামাইক্যালি ফিল্টারগুলি যুক্ত করা / অপসারণ করা কোনও অ্যারের থেকে উপাদানগুলি যুক্ত / অপসারণের মতোই সহজ

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

তদতিরিক্ত, এই ব্যবহারের ক্ষেত্রেটি সর্বোত্তম কারণ কোনও নুএসকিউএল ডাটাবেসের সমস্ত প্রধান সীমাবদ্ধতা এড়িয়ে চলে :

  • লেনদেনের অভাব: অ্যাপ্লিকেশনটি লেখার কাজ সম্পাদন করে না কেবল পাঠ করে, তাই আমাদের কোনও লেনদেনের দরকার নেই

  • টেবিলগুলির মধ্যে যোগ দেওয়ার অভাব: আমাদের সংযুক্ত হওয়ার দরকার নেই, কারণ আমরা সংগ্রহগুলিতে আমাদের অস্বীকৃত ডেটা সংরক্ষণ করতে রিডানডেন্সি ব্যবহার করতে পারি । যেহেতু আমরা কেবল ডেটা পড়ি, আপডেটগুলির মধ্যে ডেনারমালাইজড ডেটা সিঙ্ক্রোনাইজ করার বিষয়ে আমাদের উদ্বিগ্ন হওয়ার দরকার নেই।

এইভাবে আমরা অতিরিক্তভাবে আমাদের প্রশ্নগুলির সাথে উপযুক্তভাবে উপাত্তগুলি সঞ্চয় করে ফোকাস করতে পারি , এটি একক সংগ্রহগুলিতে ফোকাস হবে on

আমি কেবল এটি লিখছি কারণ আমি যদি কিছু সময় আগে এমন কিছু পড়ে থাকতাম তবে এটি গবেষণার জন্য আমার কিছুটা সময় সাশ্রয় হত

আশা করি এটি কারও কাজে আসবে


3

আমি মার্টিন ফাউলারের এই আলাপের দৃ strongly়তার সাথে সুপারিশ করছি:

https://www.youtube.com/watch?v=qI_g07C_Q5I

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

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


বোঝা গেছে, ভবিষ্যতের জন্য এটি মাথায় রাখবে।
user3631881

3

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

NoSQL সম্পর্কিত ইউটিউবে এডুরেকা ভিডিওগুলি কয়েকটি সেরা ভিডিও টিউটোরিয়াল।

https://www.youtube.com/watch?v=gJFG04Sy6NY

https://www.youtube.com/watch?v=KSq6tMMXZ8s

https://www.youtube.com/watch?v=3z1KFA2qcSo

স্লাইডশায়ারনেটনে ভাল উপস্থাপনা পাওয়া যায়

http://www.slideshare.net/quipo/nosql-databases-why-what-and-when?qid=3bb9f7f6-a53d-41b1-8403-cd6f181d0ca7&v=qf1&b=&from_search=1

http://www.slideshare.net/EdurekaIN/no-sql-databases-35591065?qid=f1b9c095-6d70-4d0a-91da-1df664c4f389&v=qf1&b=&from_search=3 (এই উপস্থাপনাটি ইউটিউবে ভিডিও টিউটোরিয়াল সমর্থন করে)


1

আপনার প্রয়োজনীয় কিছু ব্যবহারের ক্ষেত্রে, বিশেষত বিশ্লেষণমূলক প্রশ্নের জন্য আপনি পোস্টগ্র্রেস থেকে এই মোড়কের সাহায্যে মঙ্গোডিবিতে এসকিউএল কোয়েরি চালাতে পারেন ।


1

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

http://www.gartner.com/technology/reprints.do?id=1-23A415Q&ct=141020&st=sb

আমি কাউকে কাউকে পরামর্শ দিতে চাই যে এখনও এটি চেষ্টা করেনি, তবে প্রতিবেদনে দেখানো সংস্করণটির ভিত্তিতে নয় (২.২.১) কারণ সিবি সার্ভার যেখানে রয়েছে তার পিছনে এটি প্রায় 2 টি সংশোধন, 2H15 তে 4.0 প্রকাশের কাছাকাছি ।

http://www.couchbase.com/coming-in-couchbase-server-4-0

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

অন্য কিছু না হলে সর্বশেষ মানদণ্ডগুলি পরীক্ষা করে দেখার মতো:

http://info.couchbase.com/Benchmark_MongoDB_VS_CouchbaseServer_HPW_BM.html http://info.couchbase.com/NoSQL-Technical-Compistance-Report.html

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