6 research outputs found

    Honeycomb: ordered key-value store acceleration on an FPGA-based SmartNIC

    Full text link
    In-memory ordered key-value stores are an important building block in modern distributed applications. We present Honeycomb, a hybrid software-hardware system for accelerating read-dominated workloads on ordered key-value stores that provides linearizability for all operations including scans. Honeycomb stores a B-Tree in host memory, and executes SCAN and GET on an FPGA-based SmartNIC, and PUT, UPDATE and DELETE on the CPU. This approach enables large stores and simplifies the FPGA implementation but raises the challenge of data access and synchronization across the slow PCIe bus. We describe how Honeycomb overcomes this challenge with careful data structure design, caching, request parallelism with out-of-order request execution, wait-free read operations, and batching synchronization between the CPU and the FPGA. For read-heavy YCSB workloads, Honeycomb improves the throughput of a state-of-the-art ordered key-value store by at least 1.8x. For scan-heavy workloads inspired by cloud storage, Honeycomb improves throughput by more than 2x. The cost-performance, which is more important for large-scale deployments, is improved by at least 1.5x on these workloads

    Girit adasında Marulas köyü müstahkem konut mimarisi: bir mimari geleneğin dönüşümü,1620-1820

    No full text
    Maroulas is an inland village close to Rethymnon, a town at the north coast of the island of Crete. The settlement preserves many fortified mansions, dating mainly in the 17th and 18th c., once looking over and controlling the narrow, fertile lowland coastal zone that stretches down to the sea. These buildings, as well as similar in other sites of Crete, where examined in the context of the transition from late Venetian to early Ottoman period, which for Crete began in 1645. Maroulas was surveyed and analyzed through a sequence of spatial layers, so as to identify surveillance, circulation and defensive networks. More specific parts of the study deal with the employment of different measurement systems, the employment of geometrical methods for laying-out as well as the role of ottoman imperial architects. This type of architecture is better understood in the context of feudal social and production modes, officially introduced during the first century of Venetian dominion on the island, a situation that continued to function until the very last years of the Venetian presence. The ottoman conquest continued this feudal tradition under a new guise, making the type of fortified manor houses necessary in a context where an islamized stratum of local notables energetically engaged in fiscal, military and administrative activities, in accordance to the wider social and economical trends the late Ottoman Empire. The study of these buildings brought forward the diffusion of two distinct typological genealogies, that of the western tower-residence which stands mainly for defense and the ottoman tower-kiosk which stands mainly for recreation. As a form, this osmosis is expressed both by the acceptance of religiously indifferent elements which stem from the Venetian period manor houses and the rejection of others, as part of an overall effort of the islamized landlords of rural Crete to construct a symbolic language representative of their power.Ο Μαρουλάς, οικισμός κοντά στην πόλη του Ρεθύμνου, διασώζει πυκνά στοιχεία από παλαιότερα ιστορικά στρώματα μιας αρχιτεκτονικής μεγάλων, οχυρών συγκροτημάτων του 17ου-18ου αι., τα οποία εποπτεύουν τη στενή αλλά εύφορη παραλιακή πεδινή ζώνη ανατολικά της πόλης. Τα κτίσματα αυτά, όπως και όμοιά τους σε άλλες περιοχές της Κρήτης, εξετάστηκαν στο ευρύτερο πλαίσιο του περάσματος από την όψιμη βενετοκρατία στην τουρκοκρατία. Μέσα σε τούτο το πρίσμα, ο Μαρουλάς αναλύθηκε σε επάλληλα χωρικά επίπεδα, ώστε να γίνει δυνατή η αποτύπωση σχέσεων οι οποίες αφορούν δίκτυα εποπτείας, κυκλοφορίας και άμυνας. Ειδικότερα σημεία της διατριβής ασχολούνται με τη χρήση μονάδων μέτρησης, γεωμετρικών χαράξεων, την εμπλοκή οθωμανών αυτοκρατορικών αρχιτεκτόνων και τη χρονολόγηση των κτισμάτων. Η αρχιτεκτονική αυτή γίνεται καλύτερα κατανοητή όταν μελετηθεί μέσα στο ευρύτερο πλαίσιο των φεουδαρχικών σχέσεων εξάρτησης και παραγωγής, οι οποίες εισήχθησαν θεσμικώς κατά τον πρώτο αιώνα της βενετοκρατίας στο νησί και οι οποίες στην ύπαιθρο δεν σταμάτησαν ποτέ να κυριαρχούν κοινωνικά και οικονομικά ως τα ύστατα χρόνια της βενετοκρατίας. Η οθωμανική κατάκτηση συνέχισε κάτω από νέο μανδύα τις σχέσεις αυτές, καθιστώντας αναγκαία την ύπαρξη οχυρωμένων υποστατικών σε ένα πλαίσιο όπου το στρώμα εξισλαμισθέντων τοπαρχών εμπλέχθηκε όλο και πιο ενεργά σε πλέγματα φορολογικών, στρατιωτικών και διοικητικών αρμοδιοτήτων, εντός της οικονομίας και τρόπου λειτουργίας της όψιμης Οθωμανικής Αυτοκρατορίας. Η διερεύνηση των κτισμάτων αυτών φανέρωσε το συγκερασμό δύο διακριτών τυπολογιών οχυρωμένης κατοικίας, η μία εκ των οποίων αντιπροσωπεύεται από την πυργοειδή κατοικία-αμυντήριο, ενώ η έτερη από τον οθωμανικό πύργο-περίπτερο. Σε μορφολογικό επίπεδο, η σύμφυση αυτή εκφράζεται με την υιοθέτηση θρησκευτικώς αδιάφορων στοιχείων από το προγενέστερο μορφολογικό λεξιλόγιο των υποστατικών της υπαίθρου, αλλά και τη συνειδητή απόρριψη άλλων, πάντα στα πλαίσια προσπάθειας συμβολικής κατασήμανσης της παρουσίας των μουσουλμάνων τοπαρχών στην κρητική ύπαιθρο

    Αντιγραφή δεδομένων με βάση την ακύρωση σε κέντρα δεδομένων

    No full text
    Distributed in-memory datastores underpin cloud applications that run within a datacenter and demand high performance, strong consistency, and availability. A key feature of datastores is data replication. The data are replicated across servers because a single server often cannot handle the request load. Replication is also necessary to guarantee that a server or link failure does not render a portion of the dataset inaccessible. A replication protocol is responsible for ensuring strong consistency between the replicas of a datastore, even when faults occur, by determining the actions necessary to access and manipulate the data. Consequently, a replication protocol also drives the datastore’s performance. Existing strongly consistent replication protocols deliver fault tolerance but fall short in terms of performance. Meanwhile, the opposite occurs in the world of multiprocessors, where data are replicated across the private caches of different cores. The multiprocessor regime uses invalidations to afford strongly consistent replication with high performance but neglects fault tolerance. Although handling failures in the datacenter is critical for data availability, we observe that the common operation is fault-free and far exceeds the operation during faults. In other words, the common operating environment inside a datacenter closely resembles that of a multiprocessor. Based on this insight, we draw inspiration from the multiprocessor for high-performance, strongly consistent replication in the datacenter. The primary contribution of this thesis is in adapting invalidating protocols to the nuances of replicated datastores, which include skewed data accesses, fault tolerance, and distributed transactions.Οι κατανεμημένη αποθήκευση δεδομένων στη μνήμη αποτελεί βάση για εφαρμογές συνέφου που λειτουργούν εντός ενός κέντρου δεδομένων και απαιτούν υψηλή απόδοση, ισχυρή συνέπεια και διαθεσιμότητα των δεδομένων. Μία βασική λειτουργία της αποθήκευσης δεδομένων είναι η αντιγραφή δεδομένων. Τα δεδομένα αντιγράφονται σε διάφορους υπολογιστές επειδή ένας μόνο υπολογιστής συχνά δεν μπορεί να διαχειριστεί το φορτίο αιτήσεων. Η αντιγραφή είναι επίσης απαραίτητη για να εγγυηθεί ότι η αποτυχία ενός υπολογιστή ή σύνδεσης δεν θα καταστήσει μέρος του συνόλου δεδομένων απροσπέλαστο. Ένα πρωτόκολλο αντιγραφής είναι υπεύθυνο για τη διασφάλιση ισχυρής συνέπειας μεταξύ των αντιγράφων ενός αποθετηρίου δεδομένων, ακόμη και όταν συμβαίνουν σφάλματα, καθορίζοντας τις απαραίτητες ενέργειες για την πρόσβαση και τον χειρισμό των δεδομένων. Ως εκ τούτου, ένα πρωτόκολλο αντιγραφής καθοδηγεί επίσης την απόδοση του αποθετηρίου. Τα υπάρχοντα πρωτόκολλα αντιγραφής με ισχυρή συνέπεια παρέχουν ανοχή σε σφάλματα αλλά υστερούν σε όρους απόδοσης. Εν τω μεταξύ, το αντίθετο συμβαίνει στον κόσμο των πολυεπεξεργαστών, όπου τα δεδομένα αντιγράφονται στις ιδιωτικές μνήμες cache διαφορετικών πυρήνων. Το καθεστώς των πολυεπεξεργαστών χρησιμοποιεί πρωτόκολλα βασισμένα στην ακύρωση για να παρέχει αντιγραφή με ισχυρή συνέπεια και υψηλή απόδοση αλλά παραμελεί την ανοχή σε σφάλματα. Παρόλο που η διαχείριση αποτυχιών στο κέντρο δεδομένων είναι κρίσιμη για τη διαθεσιμότητα των δεδομένων, διαπιστώνουμε ότι η κοινή λειτουργία είναι απαλλαγμένη από σφάλματα και υπερβαίνει κατά πολύ τη λειτουργία κατά τη διάρκεια σφαλμάτων. Με άλλα λόγια, το κοινό περιβάλλον λειτουργίας μέσα σε ένα κέντρο δεδομένων μοιάζει στενά με αυτό ενός πολυεπεξεργαστή. Βάσει αυτής της διορατικότητας, αντλούμε έμπνευση από τον πολυεπεξεργαστή για αντιγραφή υψηλής απόδοσης με ισχυρή συνέπεια στο κέντρο δεδομένων. Η κύρια συνεισφορά αυτής της διατριβής είναι η προσαρμογή των πρωτοκόλλων ακύρωσης στις λεπτομέρειες των αντιγραφόμενων αποθηκεύσεων δεδομένων, που περιλαμβάνουν μεροληπτικές προσπελάσεις δεδομένων, ανοχή σε σφάλματα και κατανεμημένες συναλλαγές
    corecore