NoSQL მონაცემთა ბაზების მიმოხილვა

Სარჩევი:

NoSQL მონაცემთა ბაზების მიმოხილვა
NoSQL მონაცემთა ბაზების მიმოხილვა
Anonim

აკრონიმი NoSQL გამოიგონეს 1998 წელს. ბევრი ფიქრობს, რომ NoSQL არის დამამცირებელი ტერმინი, რომელიც შექმნილია SQL-ის გასაგებად. სინამდვილეში, ტერმინი ნიშნავს არა მხოლოდ SQL-ს. იდეა ისაა, რომ ორივე ტექნოლოგიას შეუძლია თანაარსებობა და თითოეულს თავისი ადგილი აქვს. NoSQL მოძრაობა სიახლეებში იყო ბოლო რამდენიმე წლის განმავლობაში, რადგან Web 2.0-ის ბევრმა ლიდერმა მიიღო NoSQL ტექნოლოგია. კომპანიები, როგორიცაა Facebook, Twitter, Digg, Amazon, LinkedIn და Google, ყველა იყენებს NoSQL-ს ამა თუ იმ გზით. მოდით დავშალოთ NoSQL, რათა ახსნათ ის თქვენს CIO-ს ან თუნდაც თქვენს თანამშრომლებს.

Image
Image

NoSQL წარმოიშვა საჭიროებიდან

მონაცემთა შენახვა: მსოფლიოში შენახული ციფრული მონაცემები იზომება ექსბაიტებში.ეგზაბაიტი უდრის ერთ მილიარდ გიგაბაიტს (GB) მონაცემს. Internet.com-ის მიხედვით, 2006 წელს დამატებული შენახული მონაცემების რაოდენობა 161 ეგზაბაიტს შეადგენდა. სულ რაღაც 4 წლის შემდეგ 2010 წელს შენახული მონაცემების რაოდენობა იქნება თითქმის 1000 Exabyte, რაც 500%-ზე მეტია. სხვა სიტყვებით რომ ვთქვათ, მსოფლიოში უამრავი მონაცემი ინახება და ის უბრალოდ გაგრძელდება.

ურთიერთდაკავშირებული მონაცემები: მონაცემები აგრძელებს უფრო დაკავშირებულს. ვებ-გვერდის შექმნა ხელს უწყობს ჰიპერბმულებს, ბლოგებს აქვს პინგბექი და ყველა ძირითად სოციალურ ქსელს აქვს თეგები, რომლებიც აკავშირებს საგნებს ერთმანეთთან. ძირითადი სისტემები შექმნილია ერთმანეთთან დასაკავშირებლად.

მონაცემთა რთული სტრუქტურა: NoSQL ადვილად უმკლავდება იერარქიულ ჩადგმულ მონაცემთა სტრუქტურებს. SQL-ში ერთი და იგივე საქმის განსახორციელებლად, დაგჭირდებათ მრავალი რელაციური ცხრილი ყველა სახის გასაღებით. გარდა ამისა, არსებობს კავშირი შესრულებასა და მონაცემთა სირთულეს შორის. შესრულება შეიძლება დაქვეითდეს ტრადიციულ RDBMS-ში, რადგან ჩვენ ვინახავთ მონაცემთა უზარმაზარ რაოდენობას, რომელიც საჭიროა სოციალური ქსელის აპლიკაციებში და სემანტიკურ ქსელში.

რა არის NoSQL?

მგონი NoSQL-ის განსაზღვრის ერთ-ერთი გზა არის იმის გათვალისწინება, რაც არ არის. ეს არ არის SQL და არ არის რელატიური. როგორც სახელი გვთავაზობს, ეს არ არის RDBMS-ის შემცვლელი, მაგრამ კომპლიმენტებია. NoSQL განკუთვნილია განაწილებული მონაცემთა მაღაზიებისთვის ძალიან დიდი მასშტაბის მონაცემთა საჭიროებისთვის. იფიქრეთ Facebook-ზე თავისი 500 000 000 მომხმარებლით ან Twitter-ზე, რომელიც ყოველდღიურად აგროვებს ტერაბიტ მონაცემებს.

NoSQL მონაცემთა ბაზაში არ არის ფიქსირებული სქემა და არ არის შეერთება. RDBMS "ამაღლდება" უფრო და უფრო სწრაფი აპარატურის მიღებისა და მეხსიერების დამატებით. მეორეს მხრივ, NoSQL-ს შეუძლია ისარგებლოს „სკალირებისგან“. სკალირება ეხება ტვირთის გავრცელებას ბევრ სასაქონლო სისტემაზე. ეს არის NoSQL-ის კომპონენტი, რომელიც მას იაფ გადაწყვეტად აქცევს მონაცემთა დიდი ნაკრებისთვის.

NoSQL კატეგორიები

მიმდინარე NoSQL სამყარო ჯდება 4 ძირითად კატეგორიაში.

  1. Key-values Stores ძირითადად დაფუძნებულია Amazon-ის Dynamo Paper-ზე, რომელიც დაიწერა 2007 წელს.მთავარი იდეა არის ჰეშის ცხრილის არსებობა, სადაც არის უნიკალური გასაღები და მითითება მონაცემების კონკრეტულ ელემენტზე. ამ რუკებს, როგორც წესი, ახლავს ქეში მექანიზმები, რათა მაქსიმალურად გაზარდოს შესრულება.
  2. სვეტი საოჯახო მაღაზიები შეიქმნა იმისთვის, რომ შეინახოს და დაამუშავოს ძალიან დიდი რაოდენობით მონაცემები, რომლებიც განაწილებულია ბევრ მანქანაზე. ჯერ კიდევ არის გასაღებები, მაგრამ ისინი მიუთითებენ რამდენიმე სვეტზე. BigTable-ის შემთხვევაში (Google-ის Column Family NoSQL მოდელი), რიგები იდენტიფიცირებულია მწკრივის ღილაკით, სადაც მონაცემები დალაგებულია და ინახება ამ გასაღებით. სვეტები განლაგებულია სვეტების ოჯახის მიხედვით.

  3. დოკუმენტის მონაცემთა ბაზები შთაგონებულია Lotus Notes-ით და მსგავსია გასაღების ღირებულების მაღაზიების. მოდელი ძირითადად არის ვერსიირებული დოკუმენტები, რომლებიც წარმოადგენს სხვა გასაღების ღირებულების კოლექციებს. ნახევრად სტრუქტურირებული დოკუმენტები ინახება ფორმატებში, როგორიცაა JSON.
  4. გრაფიკის მონაცემთა ბაზაs აგებულია კვანძებით, შენიშვნებს შორის და კვანძების თვისებებით. მწკრივებისა და სვეტების ცხრილებისა და SQL-ის ხისტი სტრუქტურის ნაცვლად, გამოიყენება მოქნილი გრაფიკის მოდელი, რომელსაც შეუძლია მასშტაბირება მრავალ მანქანაში.

ძირითადი NoSQL მოთამაშეები

NoSQL-ის მთავარი მოთამაშეები გაჩნდნენ ძირითადად იმ ორგანიზაციების გამო, რომლებმაც ისინი მიიღეს. ზოგიერთი უმსხვილესი NoSQL ტექნოლოგია მოიცავს:

  • Dynamo: Dynamo შეიქმნა Amazon.com-ის მიერ და არის ყველაზე ცნობილი Key-Value NoSQL მონაცემთა ბაზა. ამაზონს სჭირდებოდა უაღრესად მასშტაბური განაწილებული პლატფორმა მათი ელექტრონული კომერციის ბიზნესისთვის, ამიტომ მათ განავითარეს Dynamo. Amazon S3 იყენებს Dynamo-ს, როგორც შენახვის მექანიზმს.
  • Cassandra: Cassandra იყო ღია წყარო Facebook-ის მიერ და არის სვეტზე ორიენტირებული NoSQL მონაცემთა ბაზა.
  • BigTable: BigTable არის Google-ის საკუთრების სვეტზე ორიენტირებული მონაცემთა ბაზა. Google ნებას რთავს BigTable-ის გამოყენებას, მაგრამ მხოლოდ Google App Engine-ისთვის.
  • SimpleDB: SimpleDB არის სხვა Amazon მონაცემთა ბაზა. გამოიყენება Amazon EC2 და S3-სთვის, ის არის Amazon ვებ სერვისების ნაწილი, რომელიც იხდის საფასურს გამოყენების მიხედვით.
  • CouchDB: CouchDB MongoDB-თან ერთად არის ღია კოდის დოკუმენტზე ორიენტირებული NoSQL მონაცემთა ბაზები.
  • Neo4J: Neo4j არის ღია კოდის გრაფიკის მონაცემთა ბაზა.

შეკითხვა NoSQL

კითხვა, თუ როგორ უნდა მოითხოვოთ NoSQL მონაცემთა ბაზა, არის ის, რაც დეველოპერების უმეტესობას აინტერესებს. ყოველივე ამის შემდეგ, მონაცემთა უზარმაზარ მონაცემთა ბაზაში შენახული მონაცემები არავის კარგს არ მოაქვს, თუ ვერ შეძლებთ მის აღდგენას და საბოლოო მომხმარებლებს აჩვენოთ. ან ვებ სერვისები. NoSQL მონაცემთა ბაზები არ იძლევა მაღალი დონის დეკლარაციულ შეკითხვის ენას, როგორიცაა SQL. ამის ნაცვლად, ამ მონაცემთა ბაზების მოთხოვნა არის> PREFIX foaf:

SELECT ?url

FROM

WHERE {

WHERE {

?კონტრიბუტორი foaf:name "Jon Foobar".

?კონტრიბუტორი foaf:weblog ?url.}

NoSQL-ის მომავალი

ორგანიზაციები, რომლებსაც აქვთ მონაცემთა შენახვის უზარმაზარი საჭიროებები, სერიოზულად უყურებენ NoSQL-ს. როგორც ჩანს, კონცეფცია არ იძენს იმდენ წევას მცირე ორგანიზაციებში. Information Week-ის მიერ ჩატარებული გამოკითხვით, ბიზნეს IT პროფესიონალების 44%-ს არ სმენია NoSQL-ის შესახებ.გარდა ამისა, გამოკითხულთა მხოლოდ 1%-მა განაცხადა, რომ NoSQL მათი სტრატეგიული მიმართულების ნაწილია. ცხადია, NoSQL-ს აქვს თავისი ადგილი ჩვენს დაკავშირებულ სამყაროში, მაგრამ უნდა განაგრძოს განვითარება, რათა მივიღოთ მასობრივი მიმზიდველობა, რაც ბევრი ფიქრობს, რომ მას შეიძლება ჰქონდეს.

გირჩევთ: