dc.contributor.author |
Skovola, Konstantina
|
en |
dc.contributor.author |
Σκοβολά, Κωνσταντίνα
|
el |
dc.date.accessioned |
2024-01-16T11:03:38Z |
|
dc.date.available |
2024-01-16T11:03:38Z |
|
dc.identifier.uri |
https://dspace.lib.ntua.gr/xmlui/handle/123456789/58581 |
|
dc.identifier.uri |
http://dx.doi.org/10.26240/heal.ntua.26277 |
|
dc.rights |
Default License |
|
dc.subject |
Δομές ευρετηρίων βάσεων δεδομένων |
el |
dc.subject |
Ετερογενή συστήματα μνήμης |
el |
dc.subject |
Κατανάλωση ενέργειας |
el |
dc.subject |
Αξιολόγηση επίδοσης |
el |
dc.subject |
Μη πτητική μνήμη |
el |
dc.subject |
Persistent memory |
en |
dc.subject |
Heterogeneous memory systems |
en |
dc.subject |
Database indexes |
en |
dc.subject |
Energy consumption |
en |
dc.subject |
Evaluation |
en |
dc.title |
Persistent B+-Tree index evaluation over heterogeneous
DRAM/NVM systems |
en |
heal.type |
bachelorThesis |
|
heal.classification |
Βάσεις Δεδομένων |
el |
heal.classification |
Ετερογενή Συστήματα Μνήμης |
el |
heal.classification |
Databases |
en |
heal.classification |
Heterogeneous Memory Systems |
en |
heal.language |
el |
|
heal.language |
en |
|
heal.access |
free |
|
heal.recordProvider |
ntua |
el |
heal.publicationDate |
2023-07-20 |
|
heal.abstract |
Η Persistent Memory είναι μια σχετικά νέα κατηγορία συσκευών μνήμης, που βρίσκονται μεταξύ
DRAM και Flash στην ιεραρχία της μνήμης, οι οποίες συνδυάζουν τα εξής χαρακτηριστικά:
διατηρούν τα δεδομένα τους χωρίς παροχή ρεύματος, ενώ επίσης υποστηρίζουν την άμεση προσπέλαση
(τυχαία πρόσβαση) και διευθυνσιοδότηση byte, σε ταχύτητες κοντά σε αυτές της DRAM. Πρόσ-
φατα η Intel διέθεσε στο εμπόριο το πρώτο προϊόν αυτού του τύπου, την Intel® Optane™ Per-
sistent Memory. Ιδιαίτερα οι εφαρμογές βάσεων δεδομένων μπορούν να ωφεληθούν σημαντικά
από την έλευση της NVM, καθώς υπάρχει η απαίτηση αφενός να διατηρούν τα δεδομένα τους και
να μπορούν να ανακάμπτουν γρήγορα μετά από απώλεια ρεύματος ή αστοχίες του συστήματος,
αφετέρου να παρέχουν υψηλή απόδοση και ταχύτητα απόκρισης. Τα τελευταία χρόνια πολλές ερ-
γασίες έχουν προτείνει δομές ευρετηρίων (index structures) ειδικά σχεδιασμένες για την Persistent
Memory (persistent indexes), οι οποίες έχουν ως στόχο να διατηρήσουν τις υψηλές επιδόσεις, ενώ
ταυτόχρονα μπορούν να διατηρούν σημαντικά μεγαλύτερο όγκο δεδομένων σε σχέση με πτητικές
δομές ευρετηρίων και καθιστούν το σύστημα ικανό να ανακάμπτει στιγμιαία, καθώς τα δεδομένα
τους είναι άμεσα διαθέσιμα και δε χρειάζεται να ανακατασκευαστούν.
Στην παρούσα διπλωματική εργασία γίνεται μια συγκριτική αξιολόγηση της επίδοσης per-
sistent δομών ευρετηρίων βάσεων δεδομένων, χρησιμοποιώντας μια in-memory υλοποίηση του
OLTP Benchmark TPCC και το microbenchmark YCSB. Πέρα από την επίδοση, εστιάζουμε
επιπλέον και στην κατανάλωση ενέργειας, που είναι μια μετρική την οποία η υπάρχουσα βιβλι-
ογραφία έχει σε μεγάλο βαθμό αγνοήσει. Διαπιστώνουμε ότι η κατανάλωση ενέργειας είναι αν-
τιστρόφως ανάλογη της επίδοσης και ότι διαφορετικές δομές επιτυχγάνουν καλύτερες επιδόσεις
ανάλογα με το benchmark και τις σχεδιαστικές επιλογές τους. Για παράδειγμα για το TPCC
και 1 warehouse, η καλύτερη επίδοση επιτυγχάνεται από το Fast&Fair και είναι περίπου 53 χιλ-
ιάδες συναλλαγές ανά δευτερόλεπτο, για έναν client, επίδοση καλύτερη κατά 8%, 91% και 400%
καλύτερη αυτής πουπετυχαίνουν για τις ίδιες παραμέτρους τα WBtree, Masstree, FastFair αντίσ-
τοιχα. Για το YCSB, καλύτερη επίδοση για ακέραια κλειδιά έχει το BwTree, ακολουθούμενο στα
περισσότερα workloads από το FastFair και το Masstree. Για κλειδιά-συμβολοσειρές, η επίδοση
όλων των indexes μειώνεται αρκετά. Τη μικρότερη αρνητική επίδραση παρατηρούμε στην περίπτωση
του Masstree, έχοντας χειρότερη επίδοση τουλάχιστον κατά 39%, το οποίο είναι σχεδιασμένο για
να χειρίζεται αποτελεσματικά κλειδιά-συμβολοσειρές, ενώ για τα BwTree, FastFair, η επίδοση
χειροτερεύει από 3 έως και 6.5 φορές, και για το WBtree, η επίδοση είναι χειρότερη κατά 2 έως
2.5 φορές. Επίσης αυξάνεται η κατανάλωση ενέργειας. |
el |
heal.abstract |
Persistent Memory is an emerging class of memory devices, sitting between DRAM and flash-
based storage in the memory hierarchy, and offering data persistence and direct (random) access
(byte addressability) at close to DRAM speeds. It recently became commercially available by
Intel with the release of its Optane modules. Database applications in particular can greatly
profit from NVM, since they are required to provide both durability and speed / high per-
formance. In recent years, many research works have proposed index structures specifically
designed for Persistent Memory (persistent indexes), which aim to maintain high performance,
while at the same time being able to hold more data compared to volatile indexes and enabling
instant recovery through data persistence.
In this thesis we conduct a comparative evaluation of persistent database indexes, using an
in-memory implementation of the TPCC OLTP benchmark and the YCSB microbenchmark.
In addition to performance, we focus on energy consumption, which is a metric that the existing
literature has for the most part ignored. We find that energy consumption is inversely propor-
tional of performance and that different index structures achieve better performance depending
on the benchmark/workload and their design choices. For example, for the TPCC benchmark,
a single warehouse and 750,000 transactions performed by a single client, the best performing
index is FastFair, achieving 53 thousand transactions per second, which is 8%, 91% and 400%
better than WBtree, Masstree and BwTree’s respective performance. For the YCSB, we find
that BwTree performs best, followed by FastFair and then Masstree for most integer work-
loads. For string workloads we observe a significant performance drop for all index structures.
Masstree is the least affected, experiencing at least 39% performance drop. Single-threaded
WBtree experiences 2-2.5x performance decrease, FastFair and BwTree performance decreases
3 to 6.5x compared to integer keys, while energy consumption increases. |
en |
heal.advisorName |
Σούντρης, Δημήτριος |
el |
heal.advisorName |
Soudris, Dimitrios |
en |
heal.committeeMemberName |
Σούντρης, Δημήτριος |
el |
heal.committeeMemberName |
Ξύδης, Σωτήριος |
el |
heal.committeeMemberName |
Τσουμάκος, Δημήτριος |
el |
heal.academicPublisher |
Εθνικό Μετσόβιο Πολυτεχνείο. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Τομέας Τεχνολογίας Πληροφορικής και Υπολογιστών |
el |
heal.academicPublisherID |
ntua |
|
heal.numberOfPages |
82 σ. |
el |
heal.fullTextAvailability |
false |
|