paint-brush
თანამედროვე მონაცემთა ტბის არქიტექტურა პოსტჰადოპის სამყაროშიმიერ@minio
4,545 საკითხავი
4,545 საკითხავი

თანამედროვე მონაცემთა ტბის არქიტექტურა პოსტჰადოპის სამყაროში

მიერ MinIO7m2024/09/13
Read on Terminal Reader

Ძალიან გრძელი; Წაკითხვა

ეს ნაშრომი საუბრობს Hadoop HDFS-ის აღმავლობასა და დაცემაზე და იმაზე, თუ რატომ არის მაღალი ხარისხის ობიექტების შენახვა ბუნებრივი მემკვიდრე დიდი მონაცემთა სამყაროში.
featured image - თანამედროვე მონაცემთა ტბის არქიტექტურა პოსტჰადოპის სამყაროში
MinIO HackerNoon profile picture


The თანამედროვე დატალაკე არის ნახევარი მონაცემთა საწყობი და ნახევარი მონაცემთა ტბა და იყენებს ობიექტების შენახვას ყველაფრისთვის. ობიექტების შენახვის გამოყენება მონაცემთა საწყობის ასაშენებლად შესაძლებელი გახდა ღია ცხრილის ფორმატებით (OTF), როგორიცაა Apache Iceberg, Apache Hudi და Delta Lake, რომლებიც სპეციფიკაციებია, რომლებიც განხორციელების შემდეგ, შეუფერხებლად ხდის ობიექტების შესანახად გამოყენებას. ძირითადი შენახვის გადაწყვეტა მონაცემთა საწყობისთვის. ეს სპეციფიკაციები ასევე უზრუნველყოფს ფუნქციებს, რომლებიც შეიძლება არ არსებობდეს ჩვეულებრივ მონაცემთა საწყობში - მაგალითად, სნეპშოტები (ასევე ცნობილია როგორც დროში მოგზაურობა), სქემის ევოლუცია, ტიხრები, დანაყოფი ევოლუცია და ნულოვანი ასლის განშტოება.


როდესაც ორგანიზაციები აშენებენ თანამედროვე დატალაკებს, აქ არის რამდენიმე ძირითადი ფაქტორი, რომელიც ჩვენ ვფიქრობთ, რომ მათ უნდა გაითვალისწინონ:


  1. გამოთვლისა და შენახვის დაშლა
  2. მიგრაცია მონოლითური ჩარჩოებიდან საუკეთესო ჯიშის ჩარჩოებში
  3. მონაცემთა ცენტრის კონსოლიდაცია - შეცვალეთ უწყებრივი გადაწყვეტილებები ერთი კორპორატიული გადაწყვეტილებით
  4. უწყვეტი შესრულება მცირე და დიდ ფაილებში/ობიექტებში
  5. პროგრამული უზრუნველყოფით განსაზღვრული, ღრუბლოვანი გადაწყვეტილებები, რომლებიც მასშტაბირდებიან ჰორიზონტალურად


ეს ნაშრომი საუბრობს Hadoop HDFS-ის აღმავლობასა და დაცემაზე და იმაზე, თუ რატომ არის მაღალი ხარისხის ობიექტების შენახვა ბუნებრივი მემკვიდრე დიდი მონაცემთა სამყაროში.

ჰადოპის მიღება

ინტერნეტ აპლიკაციების გაფართოებით, მონაცემთა შენახვისა და აგრეგაციის პირველი გამოწვევები მოწინავე ტექნიკური კომპანიებისთვის 15 წლის წინ დაიწყო. ტრადიციული RDBMS (რელაციური მონაცემთა ბაზის მართვის სისტემა) არ შეიძლებოდა მასშტაბური იყოს დიდი რაოდენობით მონაცემებთან მიახლოებისთვის. შემდეგ გამოჩნდა Hadoop, უაღრესად მასშტაბური მოდელი. Hadoop მოდელში დიდი რაოდენობით მონაცემები იყოფა მრავალ იაფფასიან მანქანად კლასტერში, რომელიც შემდეგ პარალელურად მუშავდება. ამ მანქანების ან კვანძების რაოდენობა შეიძლება გაიზარდოს ან შემცირდეს საწარმოს მოთხოვნების შესაბამისად.


Hadoop იყო ღია კოდის წყარო და იყენებდა ხარჯთეფექტურ სასაქონლო აპარატურას, რომელიც უზრუნველყოფდა ეკონომიურ მოდელს, განსხვავებით ტრადიციული რელაციური მონაცემთა ბაზებისგან, რომლებიც საჭიროებენ ძვირადღირებულ აპარატურას და მაღალი დონის პროცესორებს დიდ მონაცემებთან გამკლავებისთვის. იმის გამო, რომ RDBMS მოდელში მასშტაბირება ძალიან ძვირი იყო, საწარმოებმა დაიწყეს ნედლეული მონაცემების ამოღება. ამან გამოიწვია არაოპტიმალური შედეგები მთელ რიგ ვექტორებში.


ამ მხრივ, Hadoop-მა მნიშვნელოვანი უპირატესობა მისცა RDBMS მიდგომასთან შედარებით. ის უფრო მასშტაბური იყო ხარჯების თვალსაზრისით, შესრულების შეწირვის გარეშე.

ჰადოპის დასასრული

უახლესი ტექნოლოგიების გამოჩენამ, როგორიცაა ცვლილებების მონაცემების დაჭერა (CDC) და მონაცემების ნაკადი, რომლებიც ძირითადად შექმნილია სოციალური მედიის კომპანიებისგან, როგორიცაა Twitter და Facebook, შეცვალა როგორ ხდება მონაცემების მიღება და შენახვა. ამან გამოიწვია გამოწვევები ამ კიდევ უფრო დიდი მოცულობის მონაცემების დამუშავებასა და მოხმარებაში.


მთავარი გამოწვევა იყო სერიული დამუშავება. ჯგუფური პროცესები მიმდინარეობს ფონზე და არ ურთიერთქმედებს მომხმარებელთან. Hadoop იყო ეფექტური ჯგუფური დამუშავებით, როდესაც საქმე ძალიან დიდ ფაილებს ეხებოდა, მაგრამ დაზარალდა უფრო მცირე ფაილებით - როგორც ეფექტურობის, ასევე ლატენტური პერსპექტივიდან - ეფექტურად აქცევდა მას მოძველებულს, რადგან საწარმოები ეძებდნენ დამუშავებისა და მოხმარების ჩარჩოებს, რომლებსაც შეეძლოთ სხვადასხვა მონაცემთა ნაკრების დიდი და დიდი ზომის მიღება. მცირე პარტიაში, CDC და რეალურ დროში.


გამოთვლებისა და მეხსიერების გამიჯვნა დღეს უბრალოდ აზრი აქვს. შენახვა უნდა აღემატებოდეს გამოთვლას ათიდან ერთზე. ეს ძალზე არაეფექტურია Hadoop-ის სამყაროში, სადაც საჭიროა ერთი გამოთვლითი კვანძი ყოველი შენახვის კვანძისთვის. მათი განცალკევება ნიშნავს, რომ მათი ინდივიდუალურად რეგულირება შესაძლებელია. გამოთვლითი კვანძები უსახელოა და მათი ოპტიმიზაცია შესაძლებელია მეტი CPU ბირთვით და მეხსიერებით. შენახვის კვანძები არის სტატუსური და შეიძლება იყოს I/O ოპტიმიზებული უფრო მკვრივი დისკების და უფრო მაღალი გამტარუნარიანობით.


დაყოფით, საწარმოებს შეუძლიათ მიაღწიონ მაღალ ეკონომიკას, უკეთეს მართვადობას, გაუმჯობესებულ მასშტაბურობას და საკუთრების მთლიანი ხარჯების გაზრდას.


HDFS ვერ განახორციელებს ამ გადასვლას. როდესაც თქვენ ტოვებთ მონაცემთა ლოკაციას, Hadoop HDFS-ის სიძლიერე ხდება მისი სისუსტე. Hadoop შეიქმნა MapReduce გამოთვლებისთვის, სადაც მონაცემები და გამოთვლები უნდა განთავსდეს. შედეგად, Hadoop-ს სჭირდება საკუთარი სამუშაო გრაფიკი, რესურსების მენეჯერი, საცავი და გამოთვლა. ეს ფუნდამენტურად შეუთავსებელია კონტეინერებზე დაფუძნებულ არქიტექტურებთან, სადაც ყველაფერი ელასტიური, მსუბუქი და მრავალბინიანია.


ამის საპირისპიროდ, MinIO დაიბადა ღრუბელში და შექმნილია კონტეინერებისა და ორკესტრირებისთვის Kubernetes-ის მეშვეობით, რაც მას იდეალურ ტექნოლოგიად აქცევს ძველი HDFS ინსტანციების პენსიაზე გადასასვლელად.


ამან დასაბამი მისცა თანამედროვე დატალაკს. ის სარგებლობს Hadoop-ისგან მემკვიდრეობით მიღებული სასაქონლო ტექნიკის მიდგომის გამოყენებით, მაგრამ ანაწილებს შენახვას და გამოთვლას - რითაც იცვლება მონაცემების დამუშავება, ანალიზი და მოხმარება.

თანამედროვე მონაცემთა ტბის აშენება MinIO-თ

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


Minio იყენებს წაშლის კოდირებას და უზრუნველყოფს ალგორითმების უკეთეს კომპლექტს შენახვის ეფექტურობის მართვისა და გამძლეობის უზრუნველსაყოფად. როგორც წესი, ეს არის 1,5-ჯერ ასლი, განსხვავებით 3-ჯერ Hadoop კლასტერებში. ეს უკვე უზრუნველყოფს შენახვის ეფექტურობას და ამცირებს ხარჯებს Hadoop-თან შედარებით.


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


ქვემოთ მოცემულია რამდენიმე სხვა მიზეზი, რის გამოც MinIO არის ძირითადი სამშენებლო ბლოკი თანამედროვე Datalake-სთვის, რომელსაც შეუძლია მხარი დაუჭიროს თქვენი IA მონაცემთა ინფრასტრუქტურას, ისევე როგორც სხვა ანალიტიკურ დატვირთვას, როგორიცაა ბიზნეს ინტელექტი, მონაცემთა ანალიტიკა და მონაცემთა მეცნიერება.

თანამედროვე მონაცემები მზად არის

Hadoop დანიშნულებით შეიქმნა იმ მონაცემებისთვის, სადაც „არასტრუქტურირებული მონაცემები“ ნიშნავს დიდ (GiB-დან TiB-ის ზომის) ჟურნალის ფაილებს. როდესაც გამოიყენება როგორც ზოგადი დანიშნულების შესანახი პლატფორმა, სადაც არის ნამდვილი არასტრუქტურირებული მონაცემები, მცირე ობიექტების გავრცელება (KB-დან MB-მდე) დიდად აზიანებს Hadoop HDFS-ს, რადგან სახელების კვანძები არასოდეს ყოფილა შექმნილი ამ ფორმით მასშტაბირებისთვის. MinIO აჯობებს ნებისმიერი ფაილის/ობიექტის ზომას (8KiB-დან 5TiB-მდე).

ღია წყარო

საწარმოებმა, რომლებმაც მიიღეს Hadoop, გააკეთეს ეს ღია კოდის ტექნოლოგიების უპირატესობის გამო. შემოწმების უნარს, ჩაკეტვისგან თავისუფლებას და კომფორტს, რომელიც მოდის ათიათასობით მომხმარებლისგან, აქვს რეალური ღირებულება. MinIO ასევე არის 100% ღია წყარო, რაც უზრუნველყოფს, რომ ორგანიზაციებს შეუძლიათ დარჩნენ თავიანთი მიზნების ერთგული, გამოცდილების განახლებისას.

მარტივი

სიმარტივე რთულია. ამას შრომა, დისციპლინა და, უპირველეს ყოვლისა, ვალდებულება სჭირდება. MinIO-ს სიმარტივე ლეგენდარულია და არის ფილოსოფიური ვალდებულების შედეგი, რათა ჩვენი პროგრამული უზრუნველყოფა ადვილად განთავსდეს, გამოყენება, განახლება და მასშტაბირება. Hadoop-ის ფანებიც კი გეტყვიან, რომ ეს რთულია. ნაკლებით მეტის გასაკეთებლად, თქვენ უნდა გადახვიდეთ MinIO-ზე.

შემსრულებელი

Hadoop-მა პოპულარობა მოიპოვა დიდი მონაცემების შესრულების უნარის გამო. ისინი ათწლეულის უმეტესი ნაწილი იყო საწარმოს დონის ანალიტიკის საორიენტაციო ნიშანი. აღარ. MinIO მრავალჯერ დაამტკიცა ეტალონები რომ ის მატერიალურად უფრო სწრაფია ვიდრე Hadoop. ეს ნიშნავს უკეთეს შესრულებას თქვენი თანამედროვე Datalake-სთვის.

მსუბუქი წონა

MinIO სერვერის ორობითი მთლიანი მოცულობაა <100 მბ. მიუხედავად მისი ზომისა, ის საკმარისად მძლავრია მონაცემთა ცენტრის გასაშვებად, მაგრამ მაინც საკმარისად პატარაა ზღვარზე კომფორტულად ცხოვრებისთვის. Hadoop-ის სამყაროში ასეთი ალტერნატივა არ არსებობს. საწარმოებისთვის ეს ნიშნავს, რომ თქვენს S3 აპლიკაციებს შეუძლიათ მონაცემების წვდომა ნებისმიერ ადგილას, ნებისმიერ დროს და იგივე API-ით. MinIO-ს კიდეზე განლაგებით, შეგიძლიათ დააფიქსიროთ და გაფილტროთ მონაცემები ზღვარზე და გამოიყენოთ MinIO-ს რეპლიკაციის შესაძლებლობები, რათა გადააგზავნოთ ისინი თქვენს თანამედროვე Datalake-ში აგრეგაციისა და შემდგომი ანალიტიკისთვის.

მდგრადია

MinIO იცავს მონაცემებს თითო ობიექტზე, შიდა წაშლის კოდირებით, რაც ბევრად უფრო ეფექტურია, ვიდრე HDFS ალტერნატივები, რომლებიც მოვიდა რეპლიკაციის შემდეგ და არასოდეს მიუღიათ მიღება. გარდა ამისა, MinIO-ს ბიტროტის ამოცნობა უზრუნველყოფს, რომ ის არასოდეს წაიკითხავს დაზიანებულ მონაცემებს - დაზიანებული ობიექტების დაჭერას და განკურნებას. MinIO ასევე მხარს უჭერს ჯვარედინი რეგიონულ, აქტიურ-აქტიურ რეპლიკაციას. და ბოლოს, MinIO მხარს უჭერს ობიექტების ჩაკეტვის სრულ ჩარჩოს, რომელიც გთავაზობთ როგორც ლეგალურ შეკავებას, ასევე შეკავებას (მართვისა და შესაბამისობის რეჟიმებით).

პროგრამული უზრუნველყოფა განსაზღვრულია

Hadoop HDFS-ის მემკვიდრე არ არის ტექნიკის მოწყობილობა; ეს არის პროგრამული უზრუნველყოფა, რომელიც მუშაობს სასაქონლო აპარატურაზე. ეს არის ის, რაც MinIO არის - პროგრამული უზრუნველყოფა. Hadoop HDFS-ის მსგავსად, MinIO შექმნილია იმისთვის, რომ სრულად ისარგებლოს სასაქონლო სერვერებით. NVMe დისკების და 100 GbE ქსელის გამოყენების შესაძლებლობით, MinIO-ს შეუძლია მონაცემთა ცენტრის შემცირება - გააუმჯობესოს ოპერაციული ეფექტურობა და მართვადი.

უსაფრთხო

MinIO მხარს უჭერს მრავალ, დახვეწილ სერვერის დაშიფვრის სქემებს მონაცემების დასაცავად - სადაც არ უნდა იყოს - ფრენისას ან დასვენების დროს. MinIO-ს მიდგომა უზრუნველყოფს კონფიდენციალურობას, მთლიანობასა და ავთენტურობას უმნიშვნელო შესრულების ხარჯებით. სერვერის და კლიენტის მხარის დაშიფვრა მხარდაჭერილია AES-256-GCM, ChaCha20-Poly1305 და AES-CBC გამოყენებით, რაც უზრუნველყოფს აპლიკაციის თავსებადობას. გარდა ამისა, MinIO მხარს უჭერს ინდუსტრიის წამყვან საკვანძო მართვის სისტემებს (KMS).

მიგრაცია Hadoop-დან MinIO-ში

MinIO-ს გუნდს აქვს HDFS-დან MinIO-ზე მიგრაციის გამოცდილება. კლიენტებს, რომლებიც ყიდულობენ Enterprise ლიცენზიას, შეუძლიათ მიიღონ დახმარება ჩვენი ინჟინრებისგან. იმისათვის, რომ შეიტყოთ მეტი MinIO–ს გამოყენების შესახებ HDFS–ის ჩანაცვლებისთვის, იხილეთ რესურსების ეს კოლექცია .

დასკვნა

ამ ეტაპზე ყველა საწარმო არის მონაცემთა საწარმო. ამ მონაცემების შენახვა და შემდგომი ანალიზი უნდა იყოს უწყვეტი, მასშტაბირებადი, უსაფრთხო და ეფექტური. Hadoop-ის ეკოსისტემის მიერ წარმოქმნილი ანალიტიკური ინსტრუმენტები, როგორიცაა Spark, უფრო ეფექტური და ეფექტურია, როდესაც დაწყვილებულია ობიექტების შენახვაზე დაფუძნებულ მონაცემთა ტბებთან. ტექნოლოგიები, როგორიცაა Flink, აუმჯობესებს მთლიან შესრულებას, რადგან ის უზრუნველყოფს ერთჯერადი გაშვების დროს სტრიმინგისთვის, ასევე სერიული დამუშავებისთვის, რომელიც კარგად არ მუშაობდა HDFS მოდელში. ჩარჩოები, როგორიცაა Apache Arrow, ხელახლა განსაზღვრავენ, თუ როგორ ხდება მონაცემების შენახვა და დამუშავება, ხოლო Iceberg და Hudi ხელახლა განსაზღვრავენ, თუ როგორ იძლევიან ცხრილის ფორმატებს მონაცემთა ეფექტური მოთხოვნის საშუალებას.


ყველა ეს ტექნოლოგია მოითხოვს თანამედროვე, ობიექტებზე დაფუძნებულ მონაცემთა ტბას, სადაც გამოთვლები და შენახვა ნაწილდება და ოპტიმიზებულია სამუშაო დატვირთვით. თუ თქვენ გაქვთ რაიმე შეკითხვა საკუთარი თანამედროვე მონაცემთა ტბის არქიტექტურის დროს, გთხოვთ, მოგერიდებათ დაგვიკავშირდეთ მისამართზე [email protected] ან ჩვენს სუსტი არხი.

L O A D I N G
. . . comments & more!

About Author

MinIO HackerNoon profile picture
MinIO@minio
MinIO is a high-performance, cloud-native object store that runs anywhere (public cloud, private cloud, colo, onprem).

დაკიდეთ ტეგები

ეს სტატია იყო წარმოდგენილი...