უკან დაბრუნება
Meta Rebalancer-ს ღია კოდით აქვეყნებს — ბიბლიოთეკა განაწილების ამოცანებისთვის
SiTech AI Team2 წთ. საკითხავი

Meta Rebalancer-ს ღია კოდით აქვეყნებს — ბიბლიოთეკა განაწილების ამოცანებისთვის

Meta-მ Apache 2.0 ლიცენზიით გამოაქვეყნა Rebalancer — განაწილების ამოცანების ამომხსნელი ბიბლიოთეკა, რომელსაც კომპანია შიდა ინფრასტრუქტურაში ცხრა წელზე მეტია იყენებს.

Meta Rebalancer-ს ღია კოდით აქვეყნებს

Meta-მ Apache 2.0 ლიცენზიით გამოაქვეყნა Rebalancer — ბიბლიოთეკა, რომელიც განაწილების ამოცანებს ხსნის: ობიექტებისა და ბინების ნაკრებებისთვის იპოვება განლაგება, რომელიც აკმაყოფილებს შეზღუდვებს და აოპტიმიზებს მიზნებს. კომპანიის ცნობით, ამომხსნელი შიდა ინფრასტრუქტურაში ცხრა წელზე მეტია გამოიყენება.

გამოქვეყნებულია GitHub-ის რეპოზიტორია facebook/rebalancer, დოკუმენტაცია, Python-ის პაკეტი PyPI-ზე და Rebalancer Explorer — Docker-ში გაშვებული ვებ-ინტერფეისი ამომხსნელის გამართვისთვის.

ერთი ბიბლიოთეკა, მრავალი ამოცანა

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

Rebalancer-ის არქიტექტურის სქემა

ბიბლიოთეკა ორ დაბრკოლებას ხსნის — გამოყენების სიმარტივეს და მასშტაბირებადობას. პოლიტიკის ხელით ფორმულებად გადაქცევის ნაცვლად, ამოცანა აღიწერება ობიექტებით, ბინებით, შეზღუდვებითა და მიზნებით და გარდაიქმნება მიმართულ აციკლურ გრაფად (expression graph). CapacitySpec-ის, GroupCountSpec-ისა და BalanceSpec-ის მსგავსი სპეციფიკაციები გავრცელებულ მიზნებს მრავალჯერადად გამოსაყენებელ რეცეპტებად აქცევს.

ოპტიმალური ამომხსნელი და ლოკალური ძიება

ოპტიმალური ამომხსნელი ამოცანას შერეული მთელრიცხვიანი პროგრამირების მოდელად გარდაქმნის FICO Xpress-ისთვის, Gurobi-სთვის ან HiGHS-ისთვის და ცვლადების აგრეგაციითა და სიმეტრიის დარღვევით ამცირებს მას. უარეს შემთხვევაში ზომა მაინც ობიექტებისა და ბინების ნამრავლის პროპორციულია, ამიტომ ყველაზე დიდი ამოცანები MIP ამომხსნელებს სცილდება.

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

მასშტაბი და გამოყენება

Meta-ს ცნობით, Rebalancer დღეში დაახლოებით 40 მილიონ ამოცანას ხსნის 30-ზე მეტი ფორმულირებით. P99 დრო 12 წამია 265 000 ობიექტისა და 3 200 ბინის შემთხვევაში; 1 მილიონზე მეტი ობიექტისა და 5 000 ბინის ამოცანებზე საშუალო დრო 171 წამია.

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

SSiTech

SiTech — AI-გაძლიერებული ვებ დეველოპმენტი

ვქმნით სწრაფ, თანამედროვე ვებსაიტებს და AI-ს ვაერთიანებთ ქართული ბიზნესებისთვის. გაქვთ პროექტი ან კითხვა? სიამოვნებით დაგეხმარებით.