aalto1 untyped-item.component.html
Measuring time in distributed systems
Loading...
Files
Aalto login required (access for Aalto Staff only).
URL
Journal Title
Journal ISSN
Volume Title
Perustieteiden korkeakoulu |
Bachelor's thesis
Electronic archive copy is available locally at the Harald Herlin Learning Centre. The staff of Aalto University has access to the electronic bachelor's theses by logging into Aaltodoc with their personal Aalto user ID. Read more about the availability of the bachelor's theses.
Unless otherwise stated, all rights belong to the author. You may download, display and print this publication for Your own personal use. Commercial use is prohibited.
Authors
Date
Department
Major/Subject
Mcode
SCI3027
Degree programme
Language
en
Pages
27
Series
Abstract
Achieving consensus in distributed systems is a fundamental challenge due to the complexities of synchronization and time management in environments with network latency and asynchronous operations. This thesis explores modern approaches to logical time and their application in distributed databases, specifically Amazon Dynamo and Google Spanner. Logical time, distinct from physical time, allows for ordering events based on causality, thus enabling consistency and coordination without synchronized clocks. This study examines the theoretical advancements and practical implementations of logical time mechanisms, including Lamport clocks, vector clocks, and interval tree clocks. It evaluates how these mechanisms are used in distributed databases to manage synchronization, achieve high availability, and ensure data consistency. The analysis highlights the benefits and limitations of each approach, providing insights into the current state of the art and identifying areas for future research. By focusing on the application of logical time in real-world systems, this thesis contributes to the understanding and development of robust, scalable, and consistent distributed databases.
Tämän tutkielman tavoitteena on tutustua nykyaikaisiin lähestymistapoihin loogisen ajan ja täydellisen järjestyksen välitysmekanismien käyttöön hajautetuissa järjestelmissä ja verrata niitä. Hajautetut järjestelmät edellyttävät komponenttien välistä yhteisymmärrystä, mikä tekee konsensuksen saavuttamisesta keskeisen haasteen. Tässä yhteydessä loogisen ajan konsepti, joka on erotettavissa fyysisestä ajasta, nousee keskeiseksi työkaluksi hajautettujen prosessien hallitsemisessa. Se mahdollistaa tapahtumien järjestämisen tavalla, joka heijastaa kausaalisuutta aikajärjestyksen sijaan, mahdollistaen konsistenssin ja koordinoinnin ilman synkronoituja kelloja.
Tässä työssä tutkitaan loogisen ajan mekanismeja ja niiden toteutuksia moderneissa tietojärjestelmissä. Työ on toteutettu kirjallisuustutkimuksena. Aluksi työssä perehdytään loogisten kellojen perusteisiin, kuten Lamportin kelloihin ja vektorikelloihin, mitkä ovat keskeisiä elementtejä hajautettujen järjestelmien synkronoinnissa ja kausaalisuuden hallinnassa. Tämän jälkeen työssä tutkitaan, miten näitä mekanismeja sovelletaan nykyaikaisissa hajautetuissa tietokannoissa. Erityistä huomiota kiinnitetään Googlen Spanner- ja Amazonin Dynamo-tietokantajärjestelmiin, jotka hyödyntävät edistyneitä ajanhallintatekniikoita datan eheyden ja koherenssin varmista miseksi. Näiden sovellusten analyysi tarjoaa kattavan kuvan loogisten kellojen roolista käytännössä.
Tämä työedistää hajautettujen järjestelmien tutkimusalaa tarjoamalla kattavan analyysin loogisen ajan konsepteista sekä niiden sovelluksista nykyaikaisten hajautettujen järjestelmien kontekstissa. Työssä huomattiin, että loogisten kellojen tutkimusala on edennyt huomattavasti, mutta suurta osaa uusista menetelmistä ei ole vielä toteutettu käytännössä. Loogisten kellojen soveltaminen käytännössä vaatii lisää tutkimusta ja kehitystä.