Универзитет у Београду
Катедра за рачунарство и информатику

ПЛАТО

Програмски језици и алати

Директно снимање података и дељење снимака између апликација у облаку (DOSS)

Мотивација

Апликације засноване на облаку и безсерверске (serverless) апликације често покрећу више инстанци истог програма у изолованим окружењима за извршавање. Свака инстанца може изнова да обавља припрему истих података, на пример да учита и иницијализује модел машинског учења или да изгради структуре потребне за обраду захтева. Ова поновљена припрема продужава време покретања и повећава употребу процесора, док дуплирани подаци заузимају додатну меморију и могу да повећају трошкове рачунарства у облаку.

Приступ DOSS

DOSS је систем за директно прављење снимака објеката из хипа програма и њихову поновну употребу у компатибилним окружењима за извршавање. За разлику од приступа заснованих на серијализацији, он бележи објекте без претварања у посредни формат, па се снимци могу учитати без десеријализације. Тако се могу поново користити подаци припремљени током извршавања програма, уместо да снимци садрже само стање познато у време превођења.

Хип за снимке и интеграција са окружењем

DOSS уводи посебан хип за снимке који представља помоћну меморијску област за управљање снимцима објеката. Програмабилни интерфејс нуди операције за прављење, чување, учитавање и уклањање снимака објеката. Интеграција са језичким окружењем за извршавање усклађује управљање снимцима са распоредом објеката у меморији и сакупљањем отпада, као и решава услове потребне за безбедно учитавање и дељење објеката чије су референце везане за меморијске адресе. За разлику од постојећих техника, DOSS ради упоредо са извршавањем програма и омогућава инстанцама језичког окружења да деле податке између више инстанци апликације, чиме значајно смањује време учитавања и укупно меморијско заузеће система.



GraalDOSS

GraalDOSS, референтна имплементација система DOSS за JVM, написана је у језику Java као проширење језичког окружења Oracle GraalVM и његовог сакупљача отпада. Уз GraalDOSS, GraalVM постаје једино језичко окружење за извршавање до данас које може да учита снимке објеката у константном времену и да их дели између инстанци језичког окружења током извршавања програма.

Евалуација помоћу Jasper-а

За потребе евалуације система GraalDOSS, истраживање обухвата и Jasper — оквир за бенчмарке усмерен на апликације засноване на облаку, који процењује GraalDOSS скупом тестова исправности и робусности, микро-бенчмарковима и бенчмарковима на нивоу апликације. Перформансе се пореде са Java библиотекама за текстуалну и бинарну серијализацију, а евалуација обухвата трајање операција над снимцима, кашњење апликације, скалабилност и укупну потрошњу меморије између инстанци.

Захвалница

GraalDOSS је развијен у оквиру истраживачке сарадње између Математичког факултета и компаније Oracle LLC. Више информација о систему GraalDOSS доступно је у пратећој публикацији (Ristović et al., 2026b) и повезаној докторској дисертацији (Ristović, 2026a). Амерички патент за проналазак (US Letter Patent) који се односи на GraalDOSS тренутно је у поступку објављивања (Ristović et al., 2025).

Литература

  • Ivan Ristović, Milena Vujosević Janicić, Peter Hofer, Vojin Jovanović: Object Snapshotting and Sharing Across Application Instances. US Letter Patent, ORC25139810-US-NPR, 2025.
  • Ivan Ristović: Direct Data-Snapshotting and Snapshot Sharing Across Cloud-Native Applications. Doctoral Dissertation, Faculty of Mathematics, University of Belgrade, 2026a.
  • Ivan Ristović, Vojin Jovanović, Peter Hofer, Milena Vujošević Janičić: GraalDoss: Direct Object Snapshotting and Sharing for Cloud-Native Applications. Future Generation Computer Systems, 108375, 2026b. https://doi.org/10.1016/j.future.2026.108375