დიდი მონაცემთა დამუშავება ამ ციფრული ეპოქის ერთ-ერთი კრიტიკული ასპექტია. კომპანიები უფრო მეტ ხელოვნურ ინტელექტს, მანქანათმცოდნეობას და მონაცემთა ანალიტიკას იყენებენ, რაც უფრო მეტ მონაცემს აწარმოებს და აგროვებს. აქედან გამომდინარე, ეს იწვევს დიდი რაოდენობით მონაცემები რომელიც საჭიროებს გამოკითხვას და ეფექტურად გაანალიზებას.
აქ არის ის, სადაც Cloud Computing და Presto დაგეხმარებათ.
რა არის პრესტო?
Amazon AWS განმარტების მიხედვით: Presto არის განაწილებული SQL შეკითხვის ძრავა, შექმნილი სწრაფი ანალიტიკური მოთხოვნების შესასრულებლად ნებისმიერი ზომის მონაცემთა ნაკრებებზე. იგი 2020 წლის ბოლოს შეიცვალა, როგორც Trino, რათა გამოეყო პროექტი Prestodb-ისგან.
Presto-ს აქვს უპირატესობა, რომ არის ღია წყარო, რაც იმას ნიშნავს, რომ ის რეგულარულად განახლდება და დეველოპერები მასში ხშირად წვლილს შეიტანენ.
Presto პლატფორმა მუშაობს არარელატიური მონაცემთა წყაროები მოსწონს:
- Amazon S3
- ჰადოპ
- HDFS
- MongoDB
- HBase
და ურთიერთობითი ბაზები მოსწონს:
- Ჩემი სივრცე
- PostgresSQL და
- MS SQL სერვერი
თან პრესტო, შეგიძლიათ მოითხოვოთ მონაცემები სადაც არ უნდა იყოს შენახული. ეს ნიშნავს, რომ თქვენ არ გჭირდებათ მონაცემების გადატანა რელატიურ მონაცემთა ბაზაში ან მონაცემთა საწყობში. Presto შეიქმნა SQL-სთვის და მხარს უჭერს სტანდარტულ SQL სემანტიკას. ეს მოიცავს ქვემოთხოვნებს, რთულ მოთხოვნებს, გარე შეერთებებს, განსხვავებულ რაოდენობას და სავარაუდო პროცენტებს.
მოთხოვნების შესრულება ასევე უფრო სწრაფია, რადგან ის მუშაობს მეხსიერებაზე დაფუძნებული არქიტექტურის პარალელურად. ამიტომ, თქვენ აღარ უნდა ინერვიულოთ იმაზე, თუ რამდენი ხანი შეიძლება დასჭირდეს მასიური მონაცემთა ბაზის მოთხოვნას. შედეგები წამებში ბრუნდება.
Ვისწავლოთ როგორ განვათავსოთ Presto და მისი არქიტექტურა მათ დოკუმენტაციაზე.
ასევე წაიკითხეთ: როგორ განაახლოთ მოწყობილობის დრაივერები Windows 10-ზე? {მარტივი გზამკვლევი}
ძირითადი ცნებები
ძირითადი SQL ცნებები ფართოდ არის ცნობილი. იმის გასაგებად, თუ როგორ მუშაობს Presto, ჯერ უნდა გავიგოთ მისი ძირითადი კონცეფციები.
სერვერის ტიპები
Presto იყენებს სერვერის ორ ტიპს: კოორდინატორი სერვერი და მუშაკი სერვერი. მუშა კვანძები ამუშავებენ შეკითხვებს, იღებენ მონაცემებს კონექტორებიდან. კოორდინატორი იღებს შედეგებს და უგზავნის კლიენტს. კოორდინატორი სერვერები ასევე აანალიზებენ განცხადებებს და მართავენ კვანძებს.
ის მუშაობს Massive Parallel Processing მონაცემთა ბაზის მართვის სისტემების მსგავსად.
სურათის წყარო: tutorialspoint
Presto იყენებს კონექტორებს განაწილებულ სისტემასა და წყაროს შორის დასაკავშირებლად, მაგალითად, Amazon S3. Presto-ს მრავალრიცხოვანი კონექტორები, რელაციურ და არარელაციურ წყაროებთან, სისტემას გაფართოებას ხდის თითქმის ნებისმიერი მონაცემთა წყაროსთვის.
ასევე წაიკითხეთ: როგორ განაახლოთ დრაივერები Windows 10,8,7 – განაახლეთ მოწყობილობის დრაივერები
როგორ ამუშავებს Presto შეკითხვებს?
როდესაც presto იღებს შეკითხვას, ის ასრულებს მას რამდენიმე ეტაპად დაყოფით. როგორც წესი, სისტემა ქმნის ძირეულ სტადიას და მასთან დაკავშირებულ ეტაპებს. შემდეგ ეტაპები ნაწილდება ამოცანებად მუშათა კვანძებში.
Presto-ს გამოყენების უპირატესობები
Presto ძალიან პოპულარული ხდება მსხვილ საწარმოებში, როგორიცაა Netflix, Facebook, Atlassian და Airbnb. მაგალითად, Facebook იყენებს Presto-ს ყოველდღიურად ერთი პეტაბაიტი მონაცემების დასამუშავებლად, აწარმოებს 30 ათასზე მეტ შეკითხვას.
Presto მოიცავს ორ ცალკეულ ღია კოდის პროექტს: PrestoSQL (ახლა უწოდებენ Trino) და PrestoDB. ის ძალიან პოპულარულია გამოყენების შემთხვევების ფართო სპექტრისთვის, სხვადასხვა ტიპის მონაცემთა ტბებსა და მონაცემთა საწყობებში. მოდით გადავხედოთ რამდენიმე უპირატესობას, რაც პრესტოს ასე პოპულარულს ხდის.
1. მარტივი ინტეგრაცია
Presto-ს ერთ-ერთი მთავარი უპირატესობა ის არის, რომ ის ინტეგრირდება თქვენს არსებულ მონაცემთა სისტემასთან, ცვლილებების საჭიროების გარეშე. ამიტომ, Presto-ს დამატებით თქვენ ამატებთ სწრაფ ანალიტიკის შესაძლებლობებს თქვენი არსებული სისტემის შესწორების გარეშე.
2. უფრო სწრაფი შესრულება
Presto-ს შემუშავების ერთ-ერთი მიზეზი იყო ის, რომ არსებული Apache Hive არ მუშაობდა კარგად ინტერაქტიული მოთხოვნებით. Presto შექმნილია ინტერაქტიული BI მოთხოვნების დასამუშავებლად. გარდა ამისა, ის მიჰყვება push-მოდელს, ამუშავებს SQL მოთხოვნას რამდენიმე ეტაპის ერთდროულად გამოყენებით, რაც იმას ნიშნავს, რომ ყველა ეტაპი მიიმართება ეტაპებს შორის მოლოდინის გარეშე.
Presto-ს ასევე აქვს მეხსიერებიდან მეხსიერებაში მონაცემთა გადაცემა, დისკზე მონაცემების ჩაწერის საჭიროების გარეშე, რაც აუმჯობესებს შესრულებას.
3. შექმნილია ღრუბელისთვის
Presto აწარმოებს მეხსიერებას და ითვლის ცალკე, რაც მას ძალიან შესაფერისს ხდის ღრუბლოვანი გარემოსთვის. კომპანიებს, რომლებიც იყენებენ PrestoSQL-ს, შეუძლიათ ადვილად შეამცირონ ან შემცირდეს დატვირთვის მიხედვით, მონაცემთა დაკარგვის გარეშე. ეს შეიძლება მოხდეს იმის გამო, რომ Presto კლასტერი არ ინახავს მონაცემებს.
4. ერთიანი SQL ინტერფეისი
SQL არის ყველაზე პოპულარული ენა მონაცემთა ანალიტიკისთვის. მონაცემთა მეცნიერები, ანალიტიკოსები და ინჟინრები იყენებენ SQL-ს მონაცემთა დამუშავების, ანალიზისა და ტესტირებისთვის, ბიზნეს დაზვერვის ინსტრუმენტებთან ინტეგრირებისთვის.
Presto-ს აქვს შესაძლებლობა არა მხოლოდ მოიძიოს მონაცემები SQL წყაროებიდან, არამედ NoSQL მონაცემთა ბაზებიდან, როგორიცაა Elasticsearch და Cassandra. იგი მხარს უჭერს ANSI-SQL და Postgres დაკავშირებას. ეს ანიჭებს Presto-ს მრავალფეროვნებას, რაც სხვა განაწილებულ სისტემებს არ გააჩნიათ.
ინტერფეისი იდეალურია საშუალო ზომის მონაცემებისთვის, რადგან მას აქვს იგივე ფანჯრის ფუნქციები რომელიც PostgreSQL-ს აქვს.
ასევე წაიკითხეთ: როგორ განაახლოთ გრაფიკული დრაივერები Windows 10-ში {მარტივი სახელმძღვანელო}
რისთვის შეგიძლიათ გამოიყენოთ Presto?
Presto გამოიყენება ინდუსტრიებში სხვადასხვა გამოყენების შემთხვევებისთვის. ის განსაკუთრებით შესაფერისია ad-hoc და ინტერაქტიული შეკითხვებისთვის. მოდით გამოვიკვლიოთ გავრცელებული გამოყენების შემთხვევები:
მონაცემთა ტბის ანალიტიკა
თქვენ შეგიძლიათ გამოიყენოთ PrestoSQL მონაცემთა ტბაზე მონაცემების მოსაძიებლად, მონაცემების გარდაქმნის გარეშე. Presto საშუალებას გაძლევთ მოიძიოთ მონაცემები, სადაც ის მდებარეობს. ამიტომ, თქვენ შეგიძლიათ გამოიყენოთ იგი თქვენი მონაცემთა ტბის ანალიტიკის გასაძლიერებლად სტრუქტურირებული და არასტრუქტურირებული მონაცემების მოთხოვნით.
Ad hoc შეკითხვა
Presto გაძლევთ საშუალებას გაუშვათ მოთხოვნები ნებისმიერ დროს, მიუხედავად იმისა, თუ სად არის თქვენი მონაცემები. კიდევ უკეთესი, Presto კონექტორებით, თქვენს გუნდებს შეუძლიათ მონაცემთა ნაკრებებზე წვდომა მონაცემთა წყაროების ფართო დიაპაზონში, და ვინაიდან მოთხოვნები საათების ნაცვლად წამებში იმართება, თქვენი სისტემა უფრო სწრაფად მუშაობს.
პარტია ETL
იმის ნაცვლად, რომ გამოიყენოთ ძველი სერიული დამუშავების სისტემები, შეგიძლიათ გამოიყენოთ Presto რესურსებზე ეფექტური მოთხოვნების გასაშვებად. თქვენ შეგიძლიათ შეაგროვოთ მონაცემები მრავალი მონაცემთა წყაროდან და განახორციელოთ მაღალი გამტარუნარიანობის მოთხოვნები.
მოკლედ, Presto-ს აქვს რამდენიმე უპირატესობა კომპანიებისთვის, რომლებსაც სჭირდებათ დიდი რაოდენობით მონაცემების დამუშავება, ad hoc, ინტერაქტიული მოთხოვნების ჩატარება და ანალიტიკის გაშვება მონაცემთა განსხვავებული წყაროებიდან.