რელაციური მონაცემთა ბაზები შექმნილია საიმედოობითა და თანმიმდევრულობით. ინჟინრები, რომლებმაც ისინი შეიმუშავეს, ყურადღება გაამახვილეს ტრანზაქციულ მოდელზე, რომელიც უზრუნველყოფს ACID მოდელის ოთხი პრინციპის შენარჩუნებას. თუმცა, ახალი არასტრუქტურირებული მონაცემთა ბაზის მოდელის გამოჩენა ACID-ს თავის თავზე აქცევს. NoSQL მონაცემთა ბაზის მოდელი თავს არიდებს უაღრესად სტრუქტურირებულ რელაციურ მოდელს გასაღების/ღირებულების შენახვის მოქნილი მიდგომის სასარგებლოდ. მონაცემთაადმი ეს არასტრუქტურირებული მიდგომა მოითხოვს ACID მოდელის ალტერნატივას: BASE მოდელს.
ACID მოდელის ძირითადი პრინციპები
არსებობს ACID მოდელის ოთხი ძირითადი პრინციპი:
ტრანზაქციების
ბაზის ძირითადი პრინციპები
მეორე მხრივ, NoSQL მონაცემთა ბაზები მოიცავს სიტუაციებს, როდესაც ACID მოდელი გადაჭარბებულია ან, ფაქტობრივად, ხელს უშლის მონაცემთა ბაზის მუშაობას. ამის ნაცვლად, NoSQL ეყრდნობა უფრო რბილ მოდელს, რომელიც ცნობილია, როგორც BASE მოდელი. ეს მოდელი ითვალისწინებს მოქნილობას, რომელსაც სთავაზობს NoSQL და მსგავსი მიდგომები არასტრუქტურირებული მონაცემების მენეჯმენტსა და კურირებაში. BASE შედგება სამი პრინციპისგან:
- ძირითადი ხელმისაწვდომობა NoSQL მონაცემთა ბაზის მიდგომა ფოკუსირებულია მონაცემთა ხელმისაწვდომობაზე, თუნდაც მრავალი შეფერხების არსებობის შემთხვევაში. ის ამას აღწევს მონაცემთა ბაზის მართვის უაღრესად განაწილებული მიდგომის გამოყენებით. იმის ნაცვლად, რომ შეინარჩუნონ ერთი დიდი მონაცემთა მაღაზია და ფოკუსირება მოახდინონ ამ მაღაზიის შეცდომის ტოლერანტობაზე, NoSQL მონაცემთა ბაზები ავრცელებენ მონაცემებს შენახვის ბევრ სისტემაში, რეპლიკაციის მაღალი ხარისხით. ნაკლებად სავარაუდო შემთხვევაში, როდესაც წარუმატებლობა არღვევს მონაცემთა სეგმენტზე წვდომას, ეს სულაც არ გამოიწვევს მონაცემთა ბაზის სრულ გათიშვას.
- რბილი მდგომარეობა. BASE მონაცემთა ბაზები თითქმის მთლიანად უარს ამბობს ACID მოდელის თანმიმდევრულობის მოთხოვნებზე. BASE-ის ერთ-ერთი ძირითადი კონცეფცია არის ის, რომ მონაცემთა თანმიმდევრულობა დეველოპერის პრობლემაა და არ უნდა დამუშავდეს მონაცემთა ბაზაში.
- შემთხვევითი თანმიმდევრულობა ერთადერთი მოთხოვნა, რომელიც NoSQL მონაცემთა ბაზებს აქვთ თანმიმდევრულობასთან დაკავშირებით, არის მოთხოვნა, რომ მომავალში რაღაც მომენტში მონაცემები თანმიმდევრულ მდგომარეობამდე გადავიდეს. არავითარი გარანტია არ არის გაცემული, თუ როდის მოხდება ეს. ეს არის სრული გადახვევა ACID-ის დაუყოვნებელი თანმიმდევრულობის მოთხოვნიდან, რომელიც კრძალავს ტრანზაქციის შესრულებას მანამ, სანამ წინა ტრანზაქცია არ დასრულდება და მონაცემთა ბაზის კონვერგირება ხდება თანმიმდევრულ მდგომარეობაში.
BASE-ში ძირითადი ხელმისაწვდომობა შეიძლება ნიშნავს, რომ თქვენ არც კი აკონტროლებთ მონაცემთა წყაროებს. მაგალითად, თქვენ შეგიძლიათ დაუკავშირდეთ საჯარო მონაცემთა ნაკრებებს თქვენი ძალისხმევის ნაწილისთვის.
შეფარდებითი გამოყენების შემთხვევები
BASE მოდელი არ არის შესაფერისი ყველა სიტუაციისთვის, მაგრამ ის, რა თქმა უნდა, არის ACID მოდელის მოქნილი ალტერნატივა მონაცემთა ბაზებისთვის, რომლებიც არ საჭიროებენ რელაციური მოდელის მკაცრ დაცვას.
ACID-ის გამოყენებით მონაცემთა ბაზების გამოყენების ოპტიმალური შემთხვევები დამოკიდებულია უაღრესად სტრუქტურირებულ მონაცემებზე პროგნოზირებადი შეყვანებით და გამომავალებით. ამრიგად, ადამიანური რესურსების მონაცემთა ბაზები, საცალო ვაჭრობის მონაცემთა ბაზები და ელექტრონული სამედიცინო ჩანაწერები სარგებლობენ ACID-ის მიერ შეთავაზებული ძლიერი შიდა თანმიმდევრულობის შემოწმებით.
თუმცა, BASE გადაწყვეტილებები უკეთესია ბუნდოვანი სუბიექტებისთვის, როგორიცაა განწყობის ანალიზი. მაგალითად, BASE-ს სტრუქტურირებულ პროექტს შეუძლია Twitter-ის არხის სკანირება, რათა მოძებნოს სიტყვები, რომლებიც გულისხმობს ემოციებს კონკრეტულ ჰეშთეგზე დაყრდნობით. Twitter-ის არხი არ არის კარგად სტრუქტურირებული ან ადგილობრივად დაყენებული, მაგრამ მონაცემთა ნაკადი გვთავაზობს ინფორმაციას, რომელიც დაპროგრამებულია მოთხოვნებში, მაშინაც კი, თუ ამ მონაცემების ფარგლები და ბუნება არ არის შეზღუდული.