Το τεκμήριο παρέχεται από τον φορέα :
Δημοκρίτειο Πανεπιστήμιο Θράκης   

Αποθετήριο :
Αποθετήριο Δημοκρίτειου Πανεπιστημίου   

δείτε την πρωτότυπη σελίδα τεκμηρίου
στον ιστότοπο του αποθετηρίου του φορέα για περισσότερες πληροφορίες και για να δείτε όλα τα ψηφιακά αρχεία του τεκμηρίου*



κόστος και απόδοση
Data storage and retrieval in Ethereum DApps
Αποθήκευση και ανάκτηση δεδομένων σε Ethereum DApps
cost and performance

Kostamis, Periklis
Κωστάμης, Περικλής

Εφραιμίδης, Παύλος
Αραμπατζής, Αυγερινός
Κάτος, Βασίλειος
Katos, Vasilis
Efraimidis, Pavlos
Arampatzis, Avi

masterThesis

2023-10-10T09:30:10Z
2023-07-25


73 σ.
The cost of interacting with a blockchain and the time required to search and retrieve information from it are important factors in the design of Decentralized Applications (DApps). The corresponding approaches for data management in Ethereum vary from pure on-chain solutions to hybrid architectures. In this work, we thoroughly examine a wide range of data management methods, including unconventional ones, and evaluate them in terms of storage cost and retrieval latency while considering the impact of recent hard forks. More precisely, we elaborate on the use of Smart Contract (SC) storage as a data store for DApps and in view of the prohibitive cost inherent to this approach, we present and compare methods for low-cost data handling in Ethereum, namely the event-logs, the transaction payload, and the almost surprising exploitation of unused function arguments. Moreover, our analysis delves into hybrid schemes that employ IPFS and Swarm as storage platforms while utilizing Ethereum as a timestamping proof mechanism. Such schemes are especially effective when large chunks of data have to be managed. The performance of these platforms and the cost associated with storing (on-chain) the identifiers of the uploaded data are of utmost importance and therefore are investigated in detail. Specifically, we assess the local upload and retrieval performance of these hybrid approaches, but we also dive into a thorough investigation regarding remote retrieval performance. By exploring these various data management methods, this work aims to offer to developers a comprehensive understanding of the advantages, limitations, and suitable use-cases of each approach. Ultimately, we hope to promote more efficient and cost-effective design patterns in the development of Ethereum DApps.
Βιβλιογραφία: σ. 65-69
Παρόλο που ο αριθμός των ατόμων που χρησιμοποιούν συστήματα blockchain αυξάνεται διαρκώς, υπάρχουν ακόμη επιφυλάξεις σχετικά με την απόδοση και το κόστος χρήσης δημόσιων blockchain όπως το Ethereum οι οποίες αποτρέπουν την ευρεία υιοθέτηση τους. Στο Ethereum ειδικότερα, η αποθήκευση δεδομένων συνοδεύεται από υψηλό κόστος. Ωστόσο, οι Αποκεντρωμένες Εφαρμογές που τρέχουν πάνω στο Ethereum, διαχειρίζονται ένα μέρος των δεδομένων τους εντός αυτού. Το στενό φάσμα των μοτίβων σχεδιασμού πλήρως αποκεντρωμένων εφαρμογών και η έλλειψη έρευνας όσον αφορά τη διαχείριση δεδομένων εντός του Ethereum, εμποδίζει την ανάπτυξη αποτελεσματικών ΄Εξυπνων Συμβολαίων και οδηγεί σε υψηλότερα κόστη που επιβαρύνουν τους χρήστες των DApps. Η ελαχιστοποίηση της χρήσης του αποθηκευτικού χώρου των συμβολαίων ως αποθηκευτικό μέσο προς όφελος πιο οικονομικών εναλλακτικών λύσεων ή η χρήση κατανεμημένων συστημάτων αποθήκευσης όπως το IPFS και το Swarm συνδυαστικά με το Ethereum, θα μπορούσε να βοηθήσει σε αυτό το πρόβλημα Βάσει των παραπάνω, καθορίζουμε το ερευνητικό μας ερώτημα ως εξής: πώς μπορεί να επιτευχθεί η αποδοτική διαχείριση δεδομένων σε Ethereum DApps; Στην προσπάθειά μας να απαντήσουμε σε αυτό, εξετάζουμε μια ευρεία γκάμα επιλογών αποθήκευσης δεδομένων στο Ethereum καθώς και μια υβριδική on-chain/offchain αρχιτεκτονική και κάνουμε μια συγκριτική μελέτη για να διερευνήσουμε τα πλεονεκτήματα και τα μειονεκτήματα της κάθε προσέγγισης. Εν συντομία, στην παρούσα εργασία: Προτείνουμε την χρήση εναλλακτικών μεθόδων διαχείρισης δεδομένων στο Ethereum. Συγκρίνουμε, με βάση το κόστος, όλες τις διαθέσιμες μεθόδους διαχείρισης δεδομένων. Εξετάζουμε τον χρόνο ανάκτησης δεδομένων απο το Ethereum blockchain. Αξιολογούμε υβριδικές αρχιτεκτονικές με το IPFS και το Swarm. Πιο συγκεκριμένα, ξεκινάμε την συζήτηση με μια λεπτομερή ανάλυση σχετικά με το κόστος των διαθέσιμων μεθόδων διαχείρισης δεδομένων εντός του Ethereum. Αρχικά, αξιολογούμε την πιο άμεση προσέγγιση, δηλαδή, την αποθήκευση δεδομένων στον αποθηκευτικό χώρο που διαθέτουν τα έξυπνα συμβόλαια. Δεδομένου ότι ο αποθηκευτικός χώρος των συμβολαίων δεν είναι αμετάβλητος όπως οι αντίστοιχες δομές δεδομένων όπου καταγράφονται οι συναλλαγές και οι αποδείξεις τους, λαμβάνουμε υπόψη τόσο το κόστος της ανανέωσης όσο και της διαγραφής δεδομένων. Στη συνέχεια, επικεντρωνόμαστε στον τρόπο με τον οποίο κάποιος μπορεί να εκμεταλλευτεί τη λειτουργικότητα καταγραφής (logging) του EVM με σκοπό να αποθηκεύσει δεδομένα σε αποδείξεις συναλλαγών (transaction receipts). Παρομοίως, εξετάζουμε την ίδια την συναλλαγή ως εναλλακτικό μέσο αποθήκευσης δεδομένων και προτείνουμε μια επέκταση αυτής της προσέγγισης, την οποία ονομάζουμε “Unused Function Parameters”. ΄Ολες αυτές οι μέθοδοι αξιολογούνται ως προς την κατανάλωση gas που προκύπτει από την χρήση τους. Κάνοντας αυτό, είμαστε σε θέση να δείξουμε ότι πράγματι υπάρχουν και άλλες δομές εντός της αρχιτεκτονικής του Ethereum που μπορούν να χρησιμοποιηθούν ως οικονομικότερα μέσα διαχείρισης δεδομένων. Δεδομένου ότι ανά τακτά χρονικά διαστήματα πραγματοποιούνται αναβαθμίσεις στο πρωτόκολλο του Ethereum, παρακολουθήσαμε στενά όλα τα forks που εφαρμόστηκαν κατά τη διάρκεια της έρευνάς μας και εκτελέσαμε εκ νέου τα πειράματα όποτε αυτό κρίθηκε αναγκαίο. Σε αυτό το πλαίσιο, διερευνούμε και αναλύουμε το αντίκτυπο που είχαν κάποια Ethereum Improvement Proposals (EIPs) στην κατανάλωση gas. Συγκεκριμένα, αναφερόμαστε στα EIPs που εφαρμόστηκαν μετά το Muir Glacier fork και εισήγαγαν τροποποιήσεις στον υπολογισμό του κόστους χρήσης των πόρων του Ethereum αλλά και του μηχανισμού αποζημίωσης (refund mechanism). Τα σχόλια που παραθέτουμε σχετικά με το τελευταίο προσδίδουν πολύτιμες πληροφορίες όσον αφορά τη διαγραφή δεδομένων και συμπληρώνουν τη συζήτηση για τη διαχείριση δεδομένων εντός του αποθηκευτικού χώρου των συμβολαίων. Επιπλέον, αξιολογούμε την απόδοση ανάκτησης δεδομένων από το Ethereum για κάθε μια από τις προαναφερθείσες μεθόδους αποθήκευσης δεδομένων. Να σημειωθεί ότι λάβαμε υπόψη το γεγονός ότι μετα την ανάκτηση τα δεδομένα παραμένουν στην cache του λειτουργικού συστήματος. Σχετικά με την ανάκτηση δεδομένων από τα event-logs, γίνονται επιπρόσθετες παρατηρήσεις για τον ρόλο που έχουν τα Bloom Filters (BF). Η τελευταία συνεισφορά της παρούσας εργασίας είναι η αξιολόγηση υβριδικών σχημάτων όπου τα δεδομένα διαχειρίζονται τόσο εντός του blockchain όσο και εκτός αυτού. Σε αυτό το πλαίσιο, εξετάζουμε το κόστος που σχετίζεται με την αποθήκευση, εντός του blockchain, των αναγνωριστικών των δεδομένων που φιλοξενούνται στο IPFS ή το Swarm. Είναι προφανές ότι όλοι οι μέθοδοι αποθήκευσης του Ethereum που έχουμε παρουσιάσει μπορούν να χρησιμοποιηθούν για αυτόν τον σκοπό. Εμείς παρουσιάζουμε μόνο τη χρήση του αποθηκευτικού χώρου των συμβολαίων και των event-logs, αλλά η ενότητα 4.3 μπορεί να χρησιμοποιηθεί ως οδηγός για τον τρόπο εφαρμογής και την αποδοτικότητα των υπόλοιπων μεθόδων. Επιπλέον, εξετάζουμε την απόδοση ανάρτησης και λήψης δεδομένων των συστημάτων IPFS και Swarm, πράγμα που πρέπει να ληφθεί υπόψη σε συνδυασμό με την απόδοση του Ethereum προκειμένου να σχηματιστεί μια ολοκληρωμένη άποψη για μια τέτοια υβριδική αρχιτεκτονική. Για την εκτέλεση των πειραμάτων που παρουσιάζονται στην εργασία αυτή, αναπτύχθηκε και χρησιμοποιήθηκε μια συλλογή εργαλείων σε JavaScript. Επιπρόσθετα, αναπτύχθηκαν ορισμένα script σε γλώσσα Python για την ομαδοποίηση και την επεξεργασία των μετρήσεων που καταγράφηκαν.


Σύστημα Swarm
Data management
Smart contracts
Blockchains (Databases)--Economic aspects
Διαχείριση δεδομένων
Σύστημα IPFS
Decentralized applications
Αποκεντρωμένες εφαρμογές
IPFS system
Έξυπνα συμβόλαια
Swarm system

Αγγλική γλώσσα

Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Τομέας Λογισμικού και Ανάπτυξης Εφαρμογών
duth


http://creativecommons.org/licenses/by-nc-nd/3.0/us/
Attribution-NonCommercial-NoDerivs 3.0 United States
free




*Η εύρυθμη και αδιάλειπτη λειτουργία των διαδικτυακών διευθύνσεων των συλλογών (ψηφιακό αρχείο, καρτέλα τεκμηρίου στο αποθετήριο) είναι αποκλειστική ευθύνη των αντίστοιχων Φορέων περιεχομένου.