Development and evaluation of a transactional benchmark driver for a scalable SQL database
Φόρτωση...
Ημερομηνία
Συγγραφείς
Sotiriou, Michail
Τίτλος Εφημερίδας
Περιοδικό ISSN
Τίτλος τόμου
Εκδότης
Πανεπιστήμιο Ιωαννίνων. Πολυτεχνική Σχολή. Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής
Περίληψη
Τύπος
Είδος δημοσίευσης σε συνέδριο
Είδος περιοδικού
Είδος εκπαιδευτικού υλικού
Όνομα συνεδρίου
Όνομα περιοδικού
Όνομα βιβλίου
Σειρά βιβλίου
Έκδοση βιβλίου
Συμπληρωματικός/δευτερεύων τίτλος
Περιγραφή
The process of benchmarking transactional database systems has a long history and
provides important insight into the efficiency and scalability of such systems. Recent
advances in scalable transactional databases have motivated the adaptation of traditional
transactional benchmarks, such as TPC-C, to a variety of new database architectures.
However, a challenge with the proliferation of database architectures today
is the need to develop and evaluate new database drivers (ports of the benchmarkdatabase
interface to a new database architecture) for a wide range of systems. In this
thesis, we develop and evaluate a driver for the Py-TPCC benchmark targeting the
CockroachDB scalable SQL database. The driver lowers complexity by leveraging the
psycopg2 PostgreSQL adapter for the Python programming language. We evaluate the
Py-TPCC benchmark for CockroachDB and compare to an existing TPC-C benchmark
implementation for CockroachDB written in Go, using the pq PostgreSQL adapter.
Our results indicate that the use of a SQL interface (when offered by the scalable
database) simplifies the development of TPC-C benchmark drivers. Despite similarities
in the two implementations of the TPC-C benchmark, we observe performance
differences that can be attributed to the variable efficiencies of use of CockroachDB
resources across implementations of the PostgreSQL adapter.
Η διαδικασία benchmarking δοσοληπτικών συστημάτων βάσεων δεδομένων έχει μακρά ιστορία και παρέχει σημαντική εικόνα για την αποτελεσματικότητα και την επεκτασιμότητα τέτοιων συστημάτων. Οι πρόσφατες εξελίξεις στις κλιμακούμενες δοσοληπτικές βάσεις δεδομένων έχουν παρακινήσει την προσαρμογή των παραδοσιακών benchmarks, όπως το native TPC-C, σε μια ποικιλία νέων αρχιτεκτονικών βάσεων δεδομένων. Ωστόσο, μία πρόκληση με τον πολλαπλασιασμό των αρχιτεκτο- νικών βάσεων δεδομένων σήμερα, είναι η ανάγκη να αναπτυχθούν και να αξιολογη- θούν νέα προγράμματα οδήγησης βάσεων δεδομένων (φορητότητα των benchmarkdatabase διεπαφών σε μια νέα αρχιτεκτονική βάσεων δεδομένων) για ένα ευρύ φά- σμα συστημάτων. Σε αυτή τη διατριβή, διατυπώνουμε το επιστημονικό υπόβαθρο που σχετίζεται με δοσοληπτικές βάσεις δεδομένων και τα benchmarks που χρησι- μοποιούν. Πιο συγκεκριμένα, αναπτύσσουμε και αξιολογούμε ένα πρόγραμμα οδή- γησης για το Py-TPCC benchmark που στοχεύει στην κλιμακώσιμη βάση δεδομένων SQL της CockroachDB. Το πρόγραμα οδήγησης μειώνει την πολυπλοκότητα αξιο- ποιώντας τον psycopg2 PostgreSQL προσαρμογέα για τη γλώσσα προγραμματισμού Python. Θέτουμε το πλαίσιο πάνω στο οποίο κινηθήκαμε προκειμένου να φτάσουμε στην υλοποίηση του προγράμματος οδήγησης. Καταγράφουμε όλες τις παραμέτρους και απαιτήσεις που έπρεπε να λάβουμε υπόψη, ώστε να ορίσουμε τις διαδικασίες που απαιτούνται. Μέσω της πειραματικής διαδικασίας, αξιολογούμε το PY-TPCC benchmark για την CockroachDB και συγκρίνουμε με την υπάρχουσα υλοποίηση του native TPC-C benchmark για την CockroachDB γραμμένο σε γλώσσα προγραμματισμού Go, χρησιμοποιώντας τον pq PostgreSQL προσαρμογέα. Παρουσιάζουμε τα αποτελέσματα αυτής της σύγκρισης, σημειώνοντας διαφορές τόσο σε ποιοτικά χαρα- κτηριστικά, όσο και σε επίπεδο αρχιτεκτονικής κώδικα. Τέλος, οδηγούμενοι από τα αποτελέσματα, συμπεραίνουμε ότι τα σημεία στα οποία υπερτερεί το native TPC-C benchmark είναι η καλύτερη απόδοση του συστήματος σε επίπεδο δοσοληψιών, ενώ από την άλλη, το Py-TPCC benchmark υστερεί σε θέματα απόδοσης και κλιμάκω- σης, ωστόσο ευνοεί την εύκολη υλοποίηση ενός νέου προγράμματος οδήγησης από τον προγραμματιστή.
Η διαδικασία benchmarking δοσοληπτικών συστημάτων βάσεων δεδομένων έχει μακρά ιστορία και παρέχει σημαντική εικόνα για την αποτελεσματικότητα και την επεκτασιμότητα τέτοιων συστημάτων. Οι πρόσφατες εξελίξεις στις κλιμακούμενες δοσοληπτικές βάσεις δεδομένων έχουν παρακινήσει την προσαρμογή των παραδοσιακών benchmarks, όπως το native TPC-C, σε μια ποικιλία νέων αρχιτεκτονικών βάσεων δεδομένων. Ωστόσο, μία πρόκληση με τον πολλαπλασιασμό των αρχιτεκτο- νικών βάσεων δεδομένων σήμερα, είναι η ανάγκη να αναπτυχθούν και να αξιολογη- θούν νέα προγράμματα οδήγησης βάσεων δεδομένων (φορητότητα των benchmarkdatabase διεπαφών σε μια νέα αρχιτεκτονική βάσεων δεδομένων) για ένα ευρύ φά- σμα συστημάτων. Σε αυτή τη διατριβή, διατυπώνουμε το επιστημονικό υπόβαθρο που σχετίζεται με δοσοληπτικές βάσεις δεδομένων και τα benchmarks που χρησι- μοποιούν. Πιο συγκεκριμένα, αναπτύσσουμε και αξιολογούμε ένα πρόγραμμα οδή- γησης για το Py-TPCC benchmark που στοχεύει στην κλιμακώσιμη βάση δεδομένων SQL της CockroachDB. Το πρόγραμα οδήγησης μειώνει την πολυπλοκότητα αξιο- ποιώντας τον psycopg2 PostgreSQL προσαρμογέα για τη γλώσσα προγραμματισμού Python. Θέτουμε το πλαίσιο πάνω στο οποίο κινηθήκαμε προκειμένου να φτάσουμε στην υλοποίηση του προγράμματος οδήγησης. Καταγράφουμε όλες τις παραμέτρους και απαιτήσεις που έπρεπε να λάβουμε υπόψη, ώστε να ορίσουμε τις διαδικασίες που απαιτούνται. Μέσω της πειραματικής διαδικασίας, αξιολογούμε το PY-TPCC benchmark για την CockroachDB και συγκρίνουμε με την υπάρχουσα υλοποίηση του native TPC-C benchmark για την CockroachDB γραμμένο σε γλώσσα προγραμματισμού Go, χρησιμοποιώντας τον pq PostgreSQL προσαρμογέα. Παρουσιάζουμε τα αποτελέσματα αυτής της σύγκρισης, σημειώνοντας διαφορές τόσο σε ποιοτικά χαρα- κτηριστικά, όσο και σε επίπεδο αρχιτεκτονικής κώδικα. Τέλος, οδηγούμενοι από τα αποτελέσματα, συμπεραίνουμε ότι τα σημεία στα οποία υπερτερεί το native TPC-C benchmark είναι η καλύτερη απόδοση του συστήματος σε επίπεδο δοσοληψιών, ενώ από την άλλη, το Py-TPCC benchmark υστερεί σε θέματα απόδοσης και κλιμάκω- σης, ωστόσο ευνοεί την εύκολη υλοποίηση ενός νέου προγράμματος οδήγησης από τον προγραμματιστή.
Περιγραφή
Λέξεις-κλειδιά
Τransactional driver, Benchmarking, Scalable SQL database
Θεματική κατηγορία
Benchmarking
Παραπομπή
Σύνδεσμος
Γλώσσα
en
Εκδίδον τμήμα/τομέας
Πανεπιστήμιο Ιωαννίνων. Πολυτεχνική Σχολή. Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής
Όνομα επιβλέποντος
Ζάρρας, Απόστολος
Εξεταστική επιτροπή
Ζάρρας, Απόστολος
Βασιλειάδης, Παναγιώτης
Μαγκούτης, Κωνσταντίνος
Βασιλειάδης, Παναγιώτης
Μαγκούτης, Κωνσταντίνος
Γενική Περιγραφή / Σχόλια
Ίδρυμα και Σχολή/Τμήμα του υποβάλλοντος
Πανεπιστήμιο Ιωαννίνων. Πολυτεχνική Σχολή. Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής
Πίνακας περιεχομένων
Χορηγός
Βιβλιογραφική αναφορά
Βιβλιογραφία: σ. 47-49
Ονόματα συντελεστών
Αριθμός σελίδων
50 σ.
Λεπτομέρειες μαθήματος
item.page.endorsement
item.page.review
item.page.supplemented
item.page.referenced
Άδεια Creative Commons
Άδεια χρήσης της εγγραφής: Attribution-NonCommercial-NoDerivs 3.0 United States