Praca doktorska
Ładowanie...
Adapting distributed storage with deduplication to cloud use cases
dc.abstract.en | Deduplication is a widely adopted data reduction technique. It is commonly utilized in backup and archival storage systems to decrease space consumption and increase write throughput. Today, such systems have to confront the fact that the popularity of cloud computing has grown rapidly in recent years, and hence, to keep up with these technological trends, they have to be adapted to the cloud environment. However, employing deduplication in cloud computing poses multiple challenges. In this dissertation, we introduce novel solutions to three such significant problems emerging in distributed storage with deduplication for cloud-oriented backup and archival applications. First, given that object storage is a leading interface for accessing cloud data, we propose ObjDedup, a layer that implements such an interface for backup systems with block-level deduplication, thereby enabling their interoperability with clouds. ObjDedup introduces global data structures and algorithms designed to handle considerable object metadata, which are produced in such solutions. In effect, it achieves 1.8–3.93x higher write throughput than object storage without in-line deduplication. Moreover, compared to object storage on top of file-based backup systems, it processes 5.26–11.34x more object put operations per time unit. Our second solution is InftyDedup, a novel system that implements tiering to cloud with deduplication, which is a technique that enables moving deduplicated data to a cloud store lacking deduplication. Unlike existing solutions, InftyDedup maximizes scalability by utilizing cloud services not only for storage but also for computation. Following a distributed batch processing approach with dynamically assigned cloud computing resources, InftyDedup can deduplicate multi-petabyte backups from multiple sources at costs on the order of a few dollars. Moreover, by selecting between "hot'' and "cold'' cloud storage based on the characteristics of each data chunk, it further reduces the overall costs by up to 26%–44%. Since ObjDedup and InftyDedup require high resilience and efficient resource utilization from the deduplication system, our third solution, Derrick, aims to maximize both. It is a data balancer designed to make its decisions quickly in case of failures, yet to be allowed to take extra time to find a nearly optimal data arrangement and a plan for reaching it when the device population changes in a planned fashion. Derrick provides better capacity utilization, reduced data movement, and improved performance compared to balancing algorithms in two other leading systems. Moreover, it can be easily adapted to meet custom placement requirements. Apart from advancing the state of the art, our solutions have been or will be deployed in HYDRAstor, a commercial system utilized by many organizations. Therefore, our research actually improves real-world backup and archival storage products. |
dc.abstract.other | Deduplikacja (ang. deduplication) jest popularną techniką redukcji danych, używaną intensywnie w systemach przechowujących kopie zapasowe oraz informacje archiwalne. Zalety wykorzystania deduplikacji to między innymi zmniejszone zużycie przestrzeni dyskowej oraz przyspieszona przepustowość zapisów. Z uwagi na fakt, że w ostatnich latach na znaczeniu gwałtownie zyskały chmury obliczeniowe, istniejące systemy muszą być dostosowywane do środowiska chmurowego, aby nadążyć za trendami rynkowymi. Jednakże z wykorzystaniem deduplikacji w połączeniu z chmurami obliczeniowymi wiążą się liczne wyzwania. W niniejszej rozprawie przedstawiamy rozwiązania dla trzech istotnych problemów związanych z zastosowaniem rozproszonych systemów składowania danych z deduplikacją w kontekście chmur obliczeniowych. Po pierwsze, biorąc pod uwagę popularność interfejsu składowania danych jako obiektów w zastosowaniach związanych z chmurami (ang. object storage), przedstawiamy ObjDedup, czyli warstwę, która implementuje taki interfejs dla systemu z deduplikacją przeznaczonego do przechowywania kopii zapasowych lub informacji archiwalnych. ObjDedup zbudowany jest w oparciu o nowe rozproszone struktury danych i algorytmy. Są one zaprojektowane specjalnie, aby obsłużyć znaczne ilości metadanych, które są generowane w rozważanych przypadkach użycia. W efekcie ObjDedup uzyskuje 1.8–3.93 razy wyższą przepustowość zapisów niż systemy składowania obiektów bez deduplikacji. Co więcej, w porównaniu z systemami składowania obiektów zbudowanymi na systemach plików z deduplikacją, ObjDedup jest w stanie obsłużyć 5.26–11.34 razy więcej operacji wstawienia obiektu (ang. PUT) w danej jednostce czasu. Drugim zaprezentowanym rozwiązaniem jest InftyDedup, to jest system implementujący deduplikację podczas przenoszenia danych do chmury (ang. tiering to cloud). W przeciwieństwie do istniejących rozwiązań tego typu, InftyDedup wykorzystuje chmurę nie tylko do przechowywania danych, ale również do wykonywania obliczeń wymaganych w procesie deduplikacji. Dzięki użyciu algorytmu przetwarzania wsadowego oraz dynamicznej alokacji zasobów w chmurze, InftyDedup pozwala deduplikować petabajty danych za ceny rzędu zaledwie kilku dolarów. Ponadto, dzięki metodom automatycznego wyboru pomiędzy różnymi klasami usług przechowywania danych w chmurze, InftyDedup dodatkowo obniża całkowite koszty składowania danych o 26%–44%. Zarówno ObjDedup, jak i InftyDedup, zakładają wysoką odporność na awarie i efektywne wykorzystanie zasobów przez system z deduplikacją, dla którego są przygotowane. Nasze trzecie rozwiązanie, Derrick, stara się zmaksymalizować obie te cechy. Derrick to algorytm rozmieszczania danych (ang. data placement), który podejmuje decyzje szybko w przypadku awarii, lecz potrafi zagospodarować dodatkowy czas na obliczenia, aby znaleźć rozkład bliski optymalnemu, gdy jest to możliwe (np. podczas planowanych zmian w systemie). Derrick zapewnia lepsze wykorzystanie miejsca, zredukowane przenoszenie danych, a także wyższą wydajność w porównaniu z podobnymi algorytmami w dwóch innych czołowych systemach. Dodatkowo Derrick może być łatwo dostosowany, aby wspierać nietypowe wymagania różnorakich systemów w zakresie rozmieszczania danych. Każde z zaprezentowanych rozwiązań wnosi wkład do istniejącego stanu wiedzy naukowej. Ponadto rozwiązania te zostały albo zostaną zaimplementowane w HYDRAstor - komercyjnym systemie składowania danych wykorzystywanym przez liczne organizacje. Dzięki temu wyniki naszych badań przyczynią się również do ulepszenia rzeczywistych systemów przechowujących kopie zapasowe lub informacje archiwalne. |
dc.affiliation | Uniwersytet Warszawski |
dc.affiliation.department | Wydział Matematyki, Informatyki i Mechaniki |
dc.contributor.author | Jackowski, Andrzej |
dc.date.accessioned | 2024-08-26T07:51:27Z |
dc.date.available | 2024-08-26T07:51:27Z |
dc.date.defence | 2024-09-19 |
dc.date.issued | 2024-08-26 |
dc.date.submitted | 2023-09-29 |
dc.description.promoter | Iwanicki, Konrad |
dc.description.promoter | Dubnicki, Cezary |
dc.description.reviewer | Jurdziński, Tomasz |
dc.description.reviewer | Merchant, Arif |
dc.description.reviewer | Shilane, Philip |
dc.description.version | final_author |
dc.identifier.uri | https://repozytorium.uw.edu.pl//handle/item/160453 |
dc.language | en |
dc.language.other | pl |
dc.rights | ClosedAccess |
dc.subject.en | deduplication |
dc.subject.en | cloud computing |
dc.subject.en | distributed systems |
dc.subject.en | storage systems |
dc.subject.en | object storage |
dc.subject.en | tiering to cloud |
dc.subject.en | data placement |
dc.subject.en | scalability |
dc.subject.pl | deduplikacja |
dc.subject.pl | chmura obliczeniowa |
dc.subject.pl | system rozproszony |
dc.subject.pl | system składowania danych |
dc.subject.pl | system składowania danych w postaci obiektów |
dc.subject.pl | przenoszenie danych do chmury |
dc.subject.pl | rozmieszczanie danych |
dc.subject.pl | skalowalność |
dc.title | Adapting distributed storage with deduplication to cloud use cases |
dc.title.alternative | Dostosowanie rozproszonych systemów z deduplikacją do chmur obliczeniowych |
dc.type | DoctoralThesis |
dspace.entity.type | Publication |