Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to main content

    Liuba Shrira

    The thesis presents MobileBuddy, a novel data caching system that improves availability and performance for collaborative applications while maintaining data consistency in a disconnected environment or over a Wide Area Network.... more
    The thesis presents MobileBuddy, a novel data caching system that improves availability and performance for collaborative applications while maintaining data consistency in a disconnected environment or over a Wide Area Network. MobileBuddy supports mobile exchange—a novel capability for disconnected client-to-client data and reservation transfer. Mobile exchange makes mobile computing more useful because it allows users to accomplish collaborative work that would be impossible in other systems. Collaborators disconnected from servers can acquire missing or more recent data, and can obtain reservations that guarantee independent transaction validation. The thesis describes the new techniques we developed to implement mobile exchange. The technique for data and reservation transfer combines support for coarse-grained data transfer with fine-grained validation, in a way that avoids the problem of false sharing. The technique for supporting type-specific reservations is more flexible a...
    One can audit SQL applications by running SQL programs over sequences of persistent snapshots, but care is needed to avoid wasteful duplicate computation. This paper describes the design, implementation, and performance of RID, the first... more
    One can audit SQL applications by running SQL programs over sequences of persistent snapshots, but care is needed to avoid wasteful duplicate computation. This paper describes the design, implementation, and performance of RID, the first language-independent optimization framework that eliminates duplicate computations in SQL programs running over low-level snapshots by exploiting snapshot metadata efficiently.
    Modern distributed data management systems face a new challenge: how can autonomous, mutually-distrusting parties cooperate safely and effectively? Addressing this challenge brings up questions familiar from classical distributed systems:... more
    Modern distributed data management systems face a new challenge: how can autonomous, mutually-distrusting parties cooperate safely and effectively? Addressing this challenge brings up questions familiar from classical distributed systems: how to combine multiple steps into a single atomic action, how to recover from failures, and how to synchronize concurrent access to data. Nevertheless, each of these issues requires rethinking when participants are autonomous and potentially adversarial. We propose the notion of a cross-chain deal , a new way to structure complex distributed computations that manage assets in an adversarial setting. Deals are inspired by classical atomic transactions, but are necessarily different, in important ways, to accommodate the decentralized and untrusting nature of the exchange. We describe novel safety and liveness properties, along with two alternative protocols for implementing cross-chain deals in a system of independent blockchain ledgers. One protoc...
    Optimistic concurrency control (OCC) can exploit the strengths of parallel hardware to provide excellent performance for uncontended transactions, and is popular in high-performance in-memory databases and transactional systems. But at... more
    Optimistic concurrency control (OCC) can exploit the strengths of parallel hardware to provide excellent performance for uncontended transactions, and is popular in high-performance in-memory databases and transactional systems. But at high contention levels, OCC is susceptible to frequent aborts, leading to wasted work and degraded performance. Contention managers, mixed optimistic/pessimistic concurrency control algorithms, and novel optimistic-inspired concurrency control algorithms, such as TicToc, aim to address this problem, but these mechanisms introduce sometimes-high overheads of their own. We show that in real-world benchmarks, traditional OCC can outperform these alternative mechanisms by simply adding fine-grained version timestamps (using different timestamps for disjoint components of each record). With fine-grained timestamps, OCC gets 1.14x TicToc's throughput in TPC-C at 128 cores (previous work reported TicToc having 1.8x higher throughput than OCC at 80 hypert...
    providing an opportunity to explore alternatives. Researchers at Bellcore, BBN, CMU, Columbia,John Hopkins, U. Arizona, UCLA, U. Penn and U. Washington have agreed to work towards thisgoal and other organizations, in both industry and... more
    providing an opportunity to explore alternatives. Researchers at Bellcore, BBN, CMU, Columbia,John Hopkins, U. Arizona, UCLA, U. Penn and U. Washington have agreed to work towards thisgoal and other organizations, in both industry and academia, have expressed interest inparticipating.Our work is motivated by user "pull", as well as technology "push". The "pull" comes from thead hoc collection of firewalls, Web
    Applications of the future will need to support large numbers of clients and will require scalable storage systems that allow state to be shared reliably. Recent research in distributed file systems provides technology that increases the... more
    Applications of the future will need to support large numbers of clients and will require scalable storage systems that allow state to be shared reliably. Recent research in distributed file systems provides technology that increases the scalability of storage systems. But file systems only support sharing with weak consistency guarantees and can not support applications that require transactional consistency. The challenge is how to provide scalable storage systems that support transactional applications.We are developing technology for scalable transactional storage systems. Our approach combines scalable caching and coherence techniques developed in serverless file systems and DSM systems, with recovery techniques developed in traditional databases. This position paper describes the design rationale for split caching, a new scalable memory management technique for network-based transactional object storage systems, and fragment reconstruction, a new coherence protocol that suppor...
    Applications often need to analyze past states to predict trends and support audits. Adding efficient and nondisruptive support for consistent past-state analysis requires after-the-fact modification of the data store, a significant... more
    Applications often need to analyze past states to predict trends and support audits. Adding efficient and nondisruptive support for consistent past-state analysis requires after-the-fact modification of the data store, a significant challenge for today's systems. This paper describes Retro, a new system for supporting consistent past state analysis in Berkeley DB. The key novelty of Retro is an efficient yet simple and robust implementation method, imposing 4% worst-case overhead. Unlike prior approaches, Retro protocols, backed by a formal specification, extend standard transaction protocols in a modular way, requiring minimal data store modification (about 250 lines of BDB code).
    Thor is a new object-oriented database management system (OODBMS),intended to be used in heterogeneous distributed systems to allow programswritten in different programming languages to share objects in aconvenient manner. Thor objects... more
    Thor is a new object-oriented database management system (OODBMS),intended to be used in heterogeneous distributed systems to allow programswritten in different programming languages to share objects in aconvenient manner. Thor objects are persistent in spite of failures, arehighly likely to be accessible whenever they are needed, and can be structuredto reflect the kinds of information of interest to users. Thor
    Cooperative caching is known to be an effective tech- nique for improving the performance of large scale dis- tributed storage systems (5, 6, 7, 11, 1). Nevertheless, current cooperative caching techniques work only in en- vironments when... more
    Cooperative caching is known to be an effective tech- nique for improving the performance of large scale dis- tributed storage systems (5, 6, 7, 11, 1). Nevertheless, current cooperative caching techniques work only in en- vironments when machines trust one other, a requirement that is likely to become more and more difficult to satisfy. We describe a novel technique for
    ... Greed and sloth can, of course, be cured through better application programming, and so our primary con-cern in this paper is ignorance. ... elice Foundaticw under (irant CCR-X822158,and in pan by the Ikparunent of the Amy uiidsr... more
    ... Greed and sloth can, of course, be cured through better application programming, and so our primary con-cern in this paper is ignorance. ... elice Foundaticw under (irant CCR-X822158,and in pan by the Ikparunent of the Amy uiidsr Contract DABT63-92-C-0012. 129 ...
    ABSTRACT Object-based caching is a natural design choice for an object-based application and also offers the potential of improved memory utilization. However, in comparison to page-based caching, an object cache may introduce additional... more
    ABSTRACT Object-based caching is a natural design choice for an object-based application and also offers the potential of improved memory utilization. However, in comparison to page-based caching, an object cache may introduce additional disk reads. These installation reads are required to install modified objects onto their corresponding disk pages. We propose a new operating system service that significantly reduces the cost of installation reads. This opportunistic installation service allows applications to benefit from an economy of scale available in scheduling a large pool of asynchronous disk reads.
    Abstract Object-based client caching allows clients to keep more frequently ac-cessed objects while discarding colder objects that reside on the same page. However, when these objects are modi ed and sent to the server, it may need to... more
    Abstract Object-based client caching allows clients to keep more frequently ac-cessed objects while discarding colder objects that reside on the same page. However, when these objects are modi ed and sent to the server, it may need to read the corresponding page from disk ...
    Object servers offer the potential of improved client caching. However, in comparison to page servers, object servers must perform additional disk reads. These instal- lation reads are required to install modified objects onto their... more
    Object servers offer the potential of improved client caching. However, in comparison to page servers, object servers must perform additional disk reads. These instal- lation reads are required to install modified objects onto their corresponding disk pages. In this paper, we introduce the opportunistic log: a new technique that significantly reduces the cost of these installation reads in object serve rs. The opportunistic log provides a large pool of pending in- stallation reads that can be scheduled efficiently. Using simulations, we show that the opportunistic log substantially enhances the performance of reliable object servers. An object server without the opportunistic log requires much better client caching to outperform a page server. With an opportunistic log, only a small client cache improvement suffices. Our results affect the fundamental design choice between page-based and object-based servers and imply that efficient scheduling of installation reads is important in f...
    This session contained three papers loosely centred around low level system support for persistent computation.
    ... Greed and sloth can, of course, be cured through better application programming, and so our primary con-cern in this paper is ignorance. ... elice Foundaticw under (irant CCR-X822158,and in pan by the Ikparunent of the Amy uiidsr... more
    ... Greed and sloth can, of course, be cured through better application programming, and so our primary con-cern in this paper is ignorance. ... elice Foundaticw under (irant CCR-X822158,and in pan by the Ikparunent of the Amy uiidsr Contract DABT63-92-C-0012. 129 ...
    Object-based client caching allows clients to keep more frequently ac-cessed objects while discarding colder objects that reside on the same page. However, when these objects are modi ed and sent to the server, it may need to read the... more
    Object-based client caching allows clients to keep more frequently ac-cessed objects while discarding colder objects that reside on the same page. However, when these objects are modi ed and sent to the server, it may need to read the corresponding page from disk ...
    In a distributed storage system, client caches managed on the basis of small granularity objects can provide better memory utilization then page-based caches. However, ob-ject servers, unlike page servers, must perform additional disk... more
    In a distributed storage system, client caches managed on the basis of small granularity objects can provide better memory utilization then page-based caches. However, ob-ject servers, unlike page servers, must perform additional disk reads. These installation reads are required to ...
    Ч иЙгж ви и з з аагл г из и и ж б Й в дйа и н джг ж бз иг зигж ж а ан зг и и и н в йз в а и ж в з ж л и ги ж джг ж бзК Ы в г из в и ЧЧ б н а к агв и б И и ж б н в иг йд ж и б иг в и ж г в зигж ж дж з ви и гвК Ь з д д ж з ж з и Й в ей гж... more
    Ч иЙгж ви и з з аагл г из и и ж б Й в дйа и н джг ж бз иг зигж ж а ан зг и и и н в йз в а и ж в з ж л и ги ж джг ж бзК Ы в г из в и ЧЧ б н а к агв и б И и ж б н в иг йд ж и б иг в и ж г в зигж ж дж з ви и гвК Ь з д д ж з ж з и Й в ей гж йд ж в г из в в ЧЧ К Ь дджг дж з жк з ...
    Persistent object stores require a way to automatically up-grade persistent objects, to change their code and storage representation. Automatic upgrades are a challenge for such systems. Upgrades must be performed in a way that is... more
    Persistent object stores require a way to automatically up-grade persistent objects, to change their code and storage representation. Automatic upgrades are a challenge for such systems. Upgrades must be performed in a way that is effi-cient both in space and time, ...
    ... procedure updates! thd blient's1 bached state! (the reservation! set hnd thd statd of thd in-stock-halan ce object) to reflect thd reservation! ... The reconciler entry in the reconciler log ban be active, deactivated\ or... more
    ... procedure updates! thd blient's1 bached state! (the reservation! set hnd thd statd of thd in-stock-halan ce object) to reflect thd reservation! ... The reconciler entry in the reconciler log ban be active, deactivated\ or i,im,ed,-ouñ The ppenj nested! tran sarti on! ...
    Thor is a new object-oriented database system being developed at MIT. It allows applicationswritten in different programming languages, and possibly running on heterogeneousmachines and operating systems, to share objects conveniently.... more
    Thor is a new object-oriented database system being developed at MIT. It allows applicationswritten in different programming languages, and possibly running on heterogeneousmachines and operating systems, to share objects conveniently. Our goal is to provide safesharing of objects with higher-level semantics than is typical for today's file systems anddatabases, while still providing good performance. This paper describes the interface ofThor and also discusses some of the implementation...
    ABSTRACT
    ... Acknowledgements Thor is a joint research project carried out by the authors and a number of others. Members of this team include Atul Adya. Boaz Ben-Zvi. ... In Proceedings of the Fifth Symposium on Principles of Database Systems,... more
    ... Acknowledgements Thor is a joint research project carried out by the authors and a number of others. Members of this team include Atul Adya. Boaz Ben-Zvi. ... In Proceedings of the Fifth Symposium on Principles of Database Systems, pages 240-251. Page 15. Eswaran К. ...
    We propose several new techniques for resource manage- ment in a replicated object server. By coordinating cache and disk usage among the replicas, these techniques in- crease throughput and reduce fetch latency. Cache splitting speeds up... more
    We propose several new techniques for resource manage- ment in a replicated object server. By coordinating cache and disk usage among the replicas, these techniques in- crease throughput and reduce fetch latency. Cache splitting speeds up fetches by avoiding redundant cache entries, ef- fectively increasing the cache size. Coordinated writing coordinates disk writes to ensure that one replica is always
    ABSTRACT this paper we describe a new transactional storage system architecture, split caching, that adapts cooperative caching in a novel way to provide this support; our scheme achieves this goal in a way that avoids the problem of... more
    ABSTRACT this paper we describe a new transactional storage system architecture, split caching, that adapts cooperative caching in a novel way to provide this support; our scheme achieves this goal in a way that avoids the problem of false sharing.

    And 53 more