On the Feasibility of Peer-To-Peer Web Indexing and Search

Total Page:16

File Type:pdf, Size:1020Kb

On the Feasibility of Peer-To-Peer Web Indexing and Search University of Pennsylvania ScholarlyCommons Departmental Papers (CIS) Department of Computer & Information Science October 2003 On the Feasibility of Peer-to-Peer Web Indexing and Search Jiyang Li Massachusetts Institute of Technology Boon Thau Loo University of Pennsylvania, [email protected] Joseph M. Hellerstein University of California M Frans Kaashoek Massachusetts Institute of Technology David Karger Massachusetts Institute of Technology See next page for additional authors Follow this and additional works at: https://repository.upenn.edu/cis_papers Recommended Citation Jiyang Li, Boon Thau Loo, Joseph M. Hellerstein, M Frans Kaashoek, David Karger, and Robert Morris, "On the Feasibility of Peer-to-Peer Web Indexing and Search", . October 2003. Postprint version. Published in Lecture Notes in Computer Science, Volume 2735, Peer-to-Peer Systems II, 2003, pages 207-215. Publisher URL: http://dx.doi.org/10.1007/b11823 NOTE: At the time of publication, author Boon Thau Loo was affiliated with the University of California at Berkeley. Currently (April 2007), he is a faculty member in the Department of Computer and Information Science at the University of Pennsylvania. This paper is posted at ScholarlyCommons. https://repository.upenn.edu/cis_papers/328 For more information, please contact [email protected]. On the Feasibility of Peer-to-Peer Web Indexing and Search Abstract This paper discusses the feasibility of peer-to-peer full-text keyword search of the Web. Two classes of keyword search techniques are in use or have been proposed: flooding of queries vo er an overlay network (as in Gnutella), and intersection of index lists stored in a distributed hash table. We present a simple feasibility analysis based on the resource constraints and search workload. Our study suggests that the peer-to-peer network does not have enough capacity to make naive use of either of search techniques attractive for Web search. The paper presents a number of existing and novel optimizations for P2P search based on distributed hash tables, estimates their effects on performance, and concludes that in combination these optimizations would bring the problem to within an order of magnitude of feasibility. The paper suggests a number of compromises that might achieve the last order of magnitude. Comments Postprint version. Published in Lecture Notes in Computer Science, Volume 2735, Peer-to-Peer Systems II, 2003, pages 207-215. Publisher URL: http://dx.doi.org/10.1007/b11823 NOTE: At the time of publication, author Boon Thau Loo was affiliated with the University of California at Berkeley. Currently (April 2007), he is a faculty member in the Department of Computer and Information Science at the University of Pennsylvania. Author(s) Jiyang Li, Boon Thau Loo, Joseph M. Hellerstein, M Frans Kaashoek, David Karger, and Robert Morris This book chapter is available at ScholarlyCommons: https://repository.upenn.edu/cis_papers/328 On the Feasibility of Peer-to-Peer Web Indexing and Search Jinyang Li∗ Boon Thau Looy Joseph M. Hellersteiny M. Frans Kaashoek∗ David Karger∗ Robert Morris∗ ∗MIT Lab for Computer Science yUC Berkeley [email protected], fboonloo, [email protected], fkaashoek, karger, [email protected] Abstract search, including Gnutella [1] and KaZaA [4]. These systems use the simple and robust technique of flood- This paper discusses the feasibility of peer-to-peer ing queries over some or all peers. The estimated full-text keyword search of the Web. Two classes of number of documents in these systems is 500 mil- keyword search techniques are in use or have been lion [3]; documents are typically music files, and proposed: flooding of queries over an overlay net- searches examine only file meta-data such as title and work (as in Gnutella), and intersection of index lists artist. These systems have performance problems [6] stored in a distributed hash table. We present a sim- even with workloads much smaller than the Web. ple feasibility analysis based on the resource con- straints and search workload. Our study suggests Another class of P2P systems achieve scalabil- that the peer-to-peer network does not have enough ity by structuring the data so that it can be found capacity to make naive use of either of search tech- with far less expense than flooding; these are com- niques attractive for Web search. The paper presents monly called distributed hash tables (DHTs) [19, a number of existing and novel optimizations for 16, 18, 23]. DHTs are well-suited for exact match P2P search based on distributed hash tables, esti- lookups using unique identifiers, but do not directly mates their effects on performance, and concludes support text search. There have been recent propos- that in combination these optimizations would bring als for P2P text search [17, 20, 11, 10] over DHTs. the problem to within an order of magnitude of feasi- The most ambitious known evaluation of such a sys- bility. The paper suggests a number of compromises tem [17] demonstrated good full-text keyword search that might achieve the last order of magnitude. performance with about 100,000 documents. Again, this is a tiny fraction of the size of the Web. 1 Introduction This paper addresses the question Is P2P Web Full-text keyword search of the Web is arguably one search likely to work? The paper first estimates the of the most important Internet applications. It is also size of the problem: the size of a Web index and the a hard problem; Google currently indexes more than rate at which people submit Web searches. Then it 2 billion documents [2], a tiny fraction of the esti- estimates the magnitude of the two most fundamen- mated 550 billion documents on the Web [5]. While tal resource constraints: the capacity of the Internet centralized search engines such as Google work well, and the amount of disk space available on peer hosts. peer-to-peer (P2P) Web search is worth studying An analysis of the communication costs of naive P2P for the following reasons. First, Web search offers Web search shows that it would require orders of a good stress test for P2P architectures. Second, magnitude more resources than are likely to be avail- P2P search might be more resistant then centralized able. The paper evaluates a number of existing and search engines to censoring or manipulated rankings. novel optimizations, and shows that in combination, Third, P2P search might be more robust than central- they should reduce costs to within an order of mag- ized search as the demise of a single server or site is nitude of available resources. Finally, the paper out- unlikely to paralyze the entire search system. lines some design compromises that might eliminate A number of P2P systems provide keyword the last order of magnitude difference. 1 The main contribution of this paper is an evalua- gigabyte, a small fraction of the size of a typical tion of the fundamental costs of, and constraints on, PC hard disk. It is not atypical today for some P2P Web search. The paper does not claim to have large desktop applications to have an installed a definitive answer about whether P2P Web search is size of around 1GB. An inverted index of size likely to work, but it does provide a framework for 6 ∗ 1013 bytes would require 60,000 PCs, as- debating the question. suming no compression. 2 Background • Communication Constraints: A P2P query A query consists of a set of search terms (words) consumes bandwidth on the wide-area Internet; provided by a user. The result is usually a list of the total bandwidth consumed by all queries documents that contain the terms, ranked by some must fit comfortably within the Internet’s ca- scoring mechanism. Search engines typically pre- pacity. compute an inverted index: for each word, a posting Given the importance of finding information on list of the identifiers of documents that contain that the Web, we assume that it is reasonable for it word. These postings are intersected in a query in- to consume a noticeable fraction of Internet ca- volving more than one term. Since the intersection is pacity. DNS uses a few percent of wide-area In- often large, search engines usually present only the ternet capacity [21]; we optimistically assume most highly ranked documents. Systems typically that Web search could consume 10%. One way combine many ranking factors; these may include to estimate the Internet’s capacity is to look at the importance of the documents themselves [15], the backbone cross-section bandwidth. For ex- the frequency of the search terms, or how close the ample, the sum of the bisection bandwidths of terms occur to each other within the documents. Internet backbones in the U.S. was about 100 gigabits in 1999 [7]. Assuming 1,000 queries 3 Fundamental Constraints per second, the per-query communication bud- Whether a search algorithm is feasible depends on get is 10 megabits, or roughly one megabyte. the workload, the available resources, and the algo- This is a very optimistic assessment. rithm itself. We estimate the workload first. Google Another way to derive a reasonable query com- indexes more than 2 billion Web documents [2], so to munication cost is to assume that the query be conservative we assume 3 billion. Assuming 1000 should send no more data than the size of the words per document, an inverted index would con- 9 document ultimately retrieved. Assuming that tain 3∗10 ∗1000 document identifiers (docIDs). In a the average Web page size is about 10 kilobytes, DHT, a docID would likely be a key with which one this leads to a pessimistic query communication could retrieve the document; typically this is a 20- budget of 10 kilobytes. byte hash of the document’s content.
Recommended publications
  • A Distributed, Cooperative Citeseer
    OverCite: A Distributed, Cooperative CiteSeer Jeremy Stribling, Jinyang Li,† Isaac G. Councill,†† M. Frans Kaashoek, Robert Morris MIT Computer Science and Artificial Intelligence Laboratory †New York University and MIT CSAIL, via UC Berkeley ††Pennsylvania State University Abstract common for non-commercial Web sites to be popular yet to lack the resources to support their popularity. Users of CiteSeer is a popular online resource for the computer sci- such sites are often willing to help out, particularly in the ence research community, allowing users to search and form of modest amounts of compute power and network browse a large archive of research papers. CiteSeer is ex- traffic. Examples of applications that thrive on volunteer pensive: it generates 35 GB of network traffic per day, re- resources include SETI@home, BitTorrent, and volunteer quires nearly one terabyte of disk storage, and needs sig- software distribution mirror sites. Another prominent ex- nificant human maintenance. ample is the PlanetLab wide-area testbed [36], which is OverCite is a new digital research library system that made up of hundreds of donated machines over many dif- aggregates donated resources at multiple sites to provide ferent institutions. Since donated resources are distributed CiteSeer-like document search and retrieval. OverCite en- over the wide area and are usually abundant, they also al- ables members of the community to share the costs of run- low the construction of a more fault tolerant system using ning CiteSeer. The challenge facing OverCite is how to a geographically diverse set of replicas. provide scalable and load-balanced storage and query pro- In order to harness volunteer resources at many sites, a cessing with automatic data management.
    [Show full text]
  • Scooped, Again
    Scooped, Again The Harvard community has made this article openly available. Please share how this access benefits you. Your story matters Citation Ledlie, Jonathan, Jeff Shneidman, Margo Seltzer, and John Huth. 2003. Scooped, again. Peer-to-peer systems II: Second international workshop, IPTPS 2003, Berkeley, California, February 21-22, 2003, ed. IPTPS 2003, Frans Kaashoek, and Ion Stoica. Berlin: Springer Verlang. Previously published in Lecture Notes in Computer Science 2735: 129-138. Published Version http://dx.doi.org/10.1007/b11823 Citable link http://nrs.harvard.edu/urn-3:HUL.InstRepos:2799042 Terms of Use This article was downloaded from Harvard University’s DASH repository, and is made available under the terms and conditions applicable to Other Posted Material, as set forth at http:// nrs.harvard.edu/urn-3:HUL.InstRepos:dash.current.terms-of- use#LAA Scooped, Again Jonathan Ledlie, Jeff Shneidman, Margo Seltzer, John Huth Harvard University jonathan,jeffsh,margo ¡ @eecs.harvard.edu [email protected] Abstract p2p Grid Users (scientists) users Users (disparate The Peer-to-Peer (p2p) and Grid infrastructure commu- groups ) ©§ nities are tackling an overlapping set of problems. In ad- App. ¢¤£¦¥§¥§¨writers place demand demand dressing these problems, p2p solutions are usually moti- demand (e.g., on vated by elegance or research interest. Grid researchers, App. writers OGSA) writers} under pressure from thousands of scientists with real file research and Infrastructure writers Infrastructure writers sharing and computational needs, are pooling their solu- development tions from a wide range of sources in an attempt to meet user demand. Driven by this need to solve large scientific Figure 1: In serving their well-defined user base, the problems quickly, the Grid is being constructed with the Grid community has needed to draw from both its ances- tools at hand: FTP or RPC for data transfer, centraliza- try of supercomputing and from Systems research (in- tion for scheduling and authentication, and an assump- cluding p2p and distributed computing).
    [Show full text]
  • Donut: a Robust Distributed Hash Table Based on Chord
    Donut: A Robust Distributed Hash Table based on Chord Amit Levy, Jeff Prouty, Rylan Hawkins CSE 490H Scalable Systems: Design, Implementation and Use of Large Scale Clusters University of Washington Seattle, WA Donut is an implementation of an available, replicated distributed hash table built on top of Chord. The design was built to support storage of common file sizes in a closed cluster of systems. This paper discusses the two layers of the implementation and a discussion of future development. First, we discuss the basics of Chord as an overlay network and our implementation details, second, Donut as a hash table providing availability and replication and thirdly how further development towards a distributed file system may proceed. Chord Introduction Chord is an overlay network that maps logical addresses to physical nodes in a Peer- to-Peer system. Chord associates a ranges of keys with a particular node using a variant of consistent hashing. While traditional consistent hashing schemes require nodes to maintain state of the the system as a whole, Chord only requires that nodes know of a fixed number of “finger” nodes, allowing both massive scalability while maintaining efficient lookup time (O(log n)). Terms Chord Chord works by arranging keys in a ring, such that when we reach the highest value in the key-space, the following key is zero. Nodes take on a particular key in this ring. Successor Node n is called the successor of a key k if and only if n is the closest node after or equal to k on the ring. Predecessor Node n is called the predecessor of a key k if and only n is the closest node before k in the ring.
    [Show full text]
  • CHR: a Distributed Hash Table for Wireless Ad Hoc Networks
    CHR: a Distributed Hash Table for Wireless Ad Hoc Networks∗ Filipe Araujo´ Lu´ıs Rodrigues Universidade de Lisboa University of Lisboa fi[email protected] [email protected] J¨org Kaiser Changling Liu University of Ulm University of Ulm [email protected] [email protected] Carlos Mitidieri University of Ulm [email protected] Abstract This paper focuses on the problem of implementing a distributed hash table (DHT) in wireless ad hoc networks. Scarceness of resources and node mobility turn routing into a challenging problem and therefore, we claim that building a DHT as an overlay network (like in wired environments) is not the best option. Hence, we present a proof-of-concept DHT, called Cell Hash Routing (CHR), designed from scratch to cope with problems like limited available energy, communication range or node mobility. CHR overcomes these problems, by using position information to organize a DHT of clusters instead of individual nodes. By using position-based routing on top of these clusters, CHR is very efficient. Furthermore, its localized routing and its load sharing schemes, make CHR very scalable in respect to network size and density. For these reasons, we believe that CHR is a simple and yet powerful adaptation of the DHT concept for wireless ad hoc environments. ∗Selected sections of this report were published in the Proceedings of the Fourth Interna- tional Workshop on Distributed Event-Based Systems (DEBS'05), in conjuction with the 25th International Conference on Distributed Computing Systems (ICDCS-25), Columbus, Ohio, USA, June 2005.
    [Show full text]
  • Mast Cornellgrad 0058F 12280.Pdf (2.365Mb)
    Protocols for Building Secure and Scalable Decentralized Applications A Dissertation Presented to the Faculty of the Graduate School of Cornell University in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy by Kai Mast December 2020 © 2020 Kai Mast ALL RIGHTS RESERVED Protocols for Building Secure and Scalable Decentralized Applications Kai Mast, Ph.D. Cornell University 2020 Decentralized ledger technologies distribute data and execution across a public peer- to-peer network, which allows for more democratic governance of distributed systems and enables tolerating Byzantine failures. However, current protocols for such decen- tralized ledgers are limited in performance as they require every participant of the protocol to execute and validate every operation. Because of this, systems such as Bitcoin or Ethereum are limited in their throughput to around 10 transaction per sec- ond. Additionally, current implementations provide virtually no privacy to individual users, which precludes decentralized ledgers from being used in many real-world ap- plications. This thesis analyses the scalability and privacy limitations of current protocols and discusses means to improve them in detail. It then outlines two novel protocols for building decentralized ledgers, their implementation, and evaluates their performance under realistic workloads. First, it introduces the BitWeave, a blockchain protocol enabling parallel transac- tion validation and serialization while maintaining the same safety and liveness guaran- tees provided by Bitcoin. BitWeave partitions the system’s workload across multiple distinct shards, each of which then executes transactions mostly independently, while allowing for serializable cross-shard transactions. Second, it discusses DataPods, which is a database architecture and programming abstraction that combines the safety properties of decentralized systems with the scala- bility and confidentiality of centralized systems.
    [Show full text]
  • JAIME TEEVAN [email protected]
    JAIME TEEVAN [email protected] http://www.teevan.org WORK: MICROSOFT RESEARCH HOME One Microsoft Way 13109 NE 38th Place Redmond, WA 98052 Bellevue, WA 98005 (425) 421-9299 (425) 556-9753 EDUCATION Massachusetts Institute of Technology, Cambridge, MA Ph.D., Electrical Engineering and Computer Science, January 2007. Thesis: Supporting Finding and Re-Finding Through Personalization Advisor: Prof. David R. Karger Committee Members: Prof. Mark S. Ackerman, Dr. Susan T. Dumais, Prof. Robert C. Miller S.M., Electrical Engineering and Computer Science, June 2001. Thesis: Improving Information Retrieval with Textual Analysis: Bayesian Models and Beyond Advisor: Prof. David R. Karger Yale University, New Haven, CT B.S., Computer Science, May 1998. Cum laude, with distinction in major. Senior thesis: Automatically Creating High Quality Internet Directories Advisor: Prof. Gregory D. Hager PROFESSIONAL EXPERIENCE Researcher, Microsoft Research, 2006 – Present. Studied the history of digital content (how the content has changed and how people have interacted with it over time) and built tools to take advantage of that history. Developed a community of researchers interested in personal information management. Published numerous papers, presented research to the academic community, and influenced product decisions. Research Assistant, Massachusetts Institute of Technology, Computer Science and Artificial Intelligence Laboratory, 1999 – 2006. Explored re-finding in dynamic information environments. Developed the Re:Search Engine, a tool to support re-finding by preserving previous search contexts. Devised a generative document model for information retrieval that more closely matches real text data than previous naïve Bayesian models. Research Intern, Microsoft Research, Spring 2004. Investigated the variation in goals of people using Web search engines.
    [Show full text]
  • Building Distributed Systems Using Programmable Networks
    c Copyright 2020 Ming Liu Building Distributed Systems Using Programmable Networks Ming Liu A dissertation submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy University of Washington 2020 Reading Committee: Arvind Krishnamurthy, Chair Luis Ceze Ratul Mahajan Program Authorized to Offer Degree: Computer Science & Engineering University of Washington Abstract Building Distributed Systems Using Programmable Networks Ming Liu Chair of the Supervisory Committee: Professor Arvind Krishnamurthy Computer Science & Engineering The continuing increase of data center network bandwidth, coupled with a slower improvement in CPU performance, has challenged our conventional wisdom regarding data center networks: how to build distributed systems that can keep up with the network speeds and are high-performant and energy-efficient? The recent emergence of a programmable network fabric (PNF) suggests a poten- tial solution. By offloading suitable computations to a PNF device (i.e., SmartNIC, reconfigurable switch, or network accelerator), one can reduce request serving latency, save end-host CPU cores, and enable efficient traffic control. In this dissertation, we present three frameworks for building PNF-enabled distributed systems: (1) IncBricks, an in-network caching fabric built with network accelerators and programmable switches; (2) iPipe, an actor-based framework for offloading distributed applications on Smart- NICs; (3) E3, an energy-efficient microservice execution platform for SmartNIC-accelerated servers. This dissertation presents how to make efficient use of in-network heterogeneous computing re- sources by employing new programming abstractions, applying approximation techniques, co- designing with end-host software layers, and designing efficient control-/data-planes. Our pro- totyped systems using commodity PNF hardware not only show the feasibility of such an approach but also demonstrate that it is an indispensable technique for efficient data center computing.
    [Show full text]
  • Chord: a Scalable Peer-To-Peer Lookup Service for Internet
    Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications ¡ Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan MIT Laboratory for Computer Science [email protected] http://pdos.lcs.mit.edu/chord/ Abstract and involves relatively little movement of keys when nodes join A fundamental problem that confronts peer-to-peer applications is and leave the system. to efficiently locate the node that stores a particular data item. This Previous work on consistent hashing assumed that nodes were paper presents Chord, a distributed lookup protocol that addresses aware of most other nodes in the system, making it impractical to this problem. Chord provides support for just one operation: given scale to large number of nodes. In contrast, each Chord node needs a key, it maps the key onto a node. Data location can be easily “routing” information about only a few other nodes. Because the implemented on top of Chord by associating a key with each data routing table is distributed, a node resolves the hash function by item, and storing the key/data item pair at the node to which the communicating with a few other nodes. In the steady state, in an ¢ -node system, each node maintains information only about £¥¤§¦©¨ key maps. Chord adapts efficiently as nodes join and leave the £¥¤§¦©¨ ¢ system, and can answer queries even if the system is continuously ¢ other nodes, and resolves all lookups via mes- changing. Results from theoretical analysis, simulations, and ex- sages to other nodes. Chord maintains its routing information as nodes join and leave the system; with high probability each such periments show that Chord is scalable, with communication cost £¥¤§¦©¨ and the state maintained by each node scaling logarithmically with event results in no more than ¢ messages.
    [Show full text]
  • Overcite: a Cooperative Digital Research Library
    OverCite: A Cooperative Digital Research Library by Jeremy Stribling Submitted to the Department of Electrical Engineering and Computer Science in partial fulfillment of the requirements for the degree of Master of Science in Computer Science and Engineering at the MASSACHUSETTS INSTITUTE OF TECHNOLOGY September 2005 ) Massachusetts Institute of Technology 2005. All rights reserved. Author ......... ................. Department of Electri Engineering and CIter Science September 2, 2005 ^ /,\ la /7 Certified by ......................... 1 K/ I M. Frans Kaashoek Professor Thesis Supervisor 7pb., - ,,, -.. 7.B- Z-111" Acceptedby......... ( .............. Arthur C. Smith Chairman, Department Committee on Graduate Students MASSACHUSEtITSINSmTE OF TECHNOLOGY ARCHIVfS F71·· YTZAAAA MAKRL ZUUb LIBRARIES 2 OverCite: A Cooperative Digital Research Library by Jeremy Stribling Submitted to the Department of Electrical Engineering and Computer Science on September 2, 2005, in partial fulfillment of the requirements for the degree of Master of Science in Computer Science and Engineering Abstract CiteSeer is a well-known online resource for the computer science research community, allowing users to search and browse a large archive of research papers. Unfortunately, its current centralized incarnation is costly to run. Although members of the community would presumably be willing to donate hardware and bandwidth at their own sites to assist CiteSeer, the current architecture does not facilitate such distribution of resources. OverCite is a design for a new architecture for a distributed and cooperative research library based on a distributed hash table (DHT). The new architecture harnesses donated resources at many sites to provide document search and retrieval service to researchers worldwide. A preliminary evaluation of an initial OverCite prototype shows that it can service more queries per second than a centralized system, and that it increases total storage capacity by a factor of n/4 in a system of n nodes.
    [Show full text]
  • Overcite: a Distributed, Cooperative Citeseer
    OverCite: A Distributed, Cooperative CiteSeer Jeremy Stribling, Jinyang Li,† Isaac G. Councill,†† M. Frans Kaashoek, Robert Morris MIT Computer Science and Artificial Intelligence Laboratory †New York University and MIT CSAIL, via UC Berkeley ††Pennsylvania State University Abstract common for non-commercial Web sites to be popular yet to lack the resources to support their popularity. Users of CiteSeer is a popular online resource for the computer sci- such sites are often willing to help out, particularly in the ence research community, allowing users to search and form of modest amounts of compute power and network browse a large archive of research papers. CiteSeer is ex- traffic. Examples of applications that thrive on volunteer pensive: it generates 35 GB of network traffic per day, re- resources include SETI@home, BitTorrent, and volunteer quires nearly one terabyte of disk storage, and needs sig- software distribution mirror sites. Another prominent ex- nificant human maintenance. ample is the PlanetLab wide-area testbed [36], which is OverCite is a new digital research library system that made up of hundreds of donated machines over many dif- aggregates donated resources at multiple sites to provide ferent institutions. Since donated resources are distributed CiteSeer-like document search and retrieval. OverCite en- over the wide area and are usually abundant, they also al- ables members of the community to share the costs of run- low the construction of a more fault tolerant system using ning CiteSeer. The challenge facing OverCite is how to a geographically diverse set of replicas. provide scalable and load-balanced storage and query pro- In order to harness volunteer resources at many sites, a cessing with automatic data management.
    [Show full text]
  • Algorithmic Engineering Towards More Efficient Key-Value Systems Bin
    Algorithmic Engineering Towards More Efficient Key-Value Systems Bin Fan CMU-CS-13-126 December 18, 2013 School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 Thesis Committee: David G. Andersen, Chair Michael Kaminsky, Intel Labs Garth A. Gibson Edmund B. Nightingale, Microsoft Research Submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy. Copyright © 2013 Bin Fan The views and conclusions contained in this document are those of the author and should not be interpreted as representing the official policies, either expressed or implied, of any sponsoring institution, the U.S. government or any other entity. Keywords: Memory Efficiency, Hash Table, Bloom Filter, Caching, Load Bal- ancing Dedicated to my family iv Abstract Distributed key-value systems have been widely used as elemental components of many Internet-scale services at sites such as Amazon, Facebook and Twitter. This thesis examines a system design approach to scale existing key-value systems, both horizontally and vertically, by carefully engineering and integrating techniques that are grounded in re- cent theory but also informed by underlying architectures and expected workloads in practice. As a case study, we re-design FAWN-KV—a dis- tributed key-value cluster consisting of “wimpy” key-value nodes—to use less memory but achieve higher throughput even in the worst case. First, to improve the worst-case throughput of a FAWN-KV system, we propose a randomized load balancing scheme that can fully utilize all the nodes regardless of their query distribution. We analytically prove and empirically demonstrate that deploying a very small but ex- tremely fast load balancer at FAWN-KV can effectively prevent uneven or dynamic workloads creating hotspots on individual nodes.
    [Show full text]
  • P43-Balakrishnan.Pdf
    LOOKING UP in P2P DATA Systems By Hari Balakrishnan, M. Frans Kaashoek, David Karger, Robert Morris, and Ion Stoica he main challenge in P2P computing is to design and imple- ment a robust and scalable distributed system composed of inexpensive, individually unreliable computers in unrelated administrative domains. The participants in a typical P2P Tsystem might include computers at homes, schools, and businesses, and can grow to several million concurrent participants. P2P systems are attractive for P2P computing raises many several reasons: interesting research problems in distributed systems. In this article • The barriers to starting and we will look at one of them, the growing such systems are low, lookup problem. How do you find since they usually don’t require any given data item in a large P2P any special administrative or system in a scalable manner, with- financial arrangements, out any centralized servers unlike centralized or hierarchy? This problem facilities; is at the heart of any P2P • P2P systems offer a way system. It is not addressed to aggregate and make use well by most popular sys- of the tremendous com- tems currently in use, and it putation and storage provides a good example of resources on computers across how the challenges of designing the Internet; and P2P systems can be addressed. • The decentralized and distrib- The recent algorithms devel- uted nature of P2P systems oped by several research groups for gives them the potential to be the lookup problem present a sim- robust to faults or intentional ple and general interface, a distrib- attacks, making them ideal for uted hash table (DHT).
    [Show full text]