Microsoft-მა ოფიციალურად გამოუშვა ღია კოდის პროექტი pg_durable, რომელიც მიზნად ისახავს მონაცემთა ბაზის მართვის პროცესების გამარტივებას. ეს ინსტრუმენტი PostgreSQL-ს საშუალებას აძლევს, შეასრულოს გრძელვადიანი, შეცდომების მიმართ მდგრადი სამუშაო პროცესები დამატებითი ინფრასტრუქტურის გარეშე.

ტრადიციულად, ინჟინრებს უწევთ სხვადასხვა ხელსაწყოების – როგორიცაა cron სამუშაოები, ცალკეული სამუშაო რიგები და სტატუსის ცხრილები – ერთმანეთთან დაკავშირება, რათა ფონის პროცესები საიმედო გახდეს. pg_durable-ის მთავარი უპირატესობა ისაა, რომ იგი ამ ლოგიკას პირდაპირ SQL-ის დონეზე გადააქვს.

როგორ მუშაობს pg_durable?

პროექტი ეფუძნება "მდგრადი შესრულების" (durable execution) პრინციპს. როდესაც ფუნქცია გაშვებულია, pg_durable ავტომატურად ინახავს პროცესის მიმდინარეობას (checkpointing). თუ სისტემაში ხარვეზი წარმოიქმნება ან სერვერი გადაიტვირთება, სამუშაო პროცესი თავიდან არ იწყება, არამედ აგრძელებს მუშაობას ბოლო შენახული წერტილიდან.

ძირითადი მახასიათებლები:

  • SQL-ნეიტივური: სამუშაო პროცესები განისაზღვრება SQL-ის გამოყენებით.
  • ინფრასტრუქტურის გარეშე: არ საჭიროებს Redis-ს, Temporal-ს ან სხვა გარე სერვისებს.
  • სტაბილურობა: მონაცემთა ბაზის ავარიული გათიშვის შემდეგაც პროცესები ავტომატურად აღდგება.

ინსტრუმენტი განსაკუთრებით სასარგებლოა ისეთი დავალებებისთვის, როგორიცაა ვექტორული მონაცემების დამუშავება, დიდი პარტიების ტრანსფორმაცია, დაგეგმილი ტექნიკური სამუშაოები ან გარე API-ებთან დაკავშირებული ოპერაციები.

ვისთვისაა განკუთვნილი?

pg_durable გათვლილია მონაცემთა ბაზის ადმინისტრატორებზე (DBA), SRE და ბექენდ ინჟინრებზე, რომლებსაც სურთ, რომ მათი სამუშაო პროცესები მონაცემებთან ახლოს იყოს. Microsoft-ის თქმით, ეს ინსტრუმენტი უკვე დანერგილია მათ ახალ ღრუბლოვან სერვისში, Azure HorizonDB-ში.

ამჟამად პროექტი საცდელ (Preview) სტადიაზეა და მხარს უჭერს PostgreSQL 17 და 18 ვერსიებს. ინსტალაცია შესაძლებელია შესაბამისი Debian პაკეტების ან წყარო კოდიდან აწყობის გზით.