The Architecture of PIER: an Internet-Scale Query Processor (PIER = Peer-to-peer Information Exchange and Retrieval) Ryan Huebsch Brent Chun, Joseph M.

Slides:



Advertisements
Similar presentations
SkipNet: A Scalable Overlay Network with Practical Locality Properties Nick Harvey, Mike Jones, Stefan Saroiu, Marvin Theimer, Alec Wolman Microsoft Research.
Advertisements

Implementing Declarative Overlays Timothy Roscoe Joint work with Boon Thau Loo, Tyson Condie, Joseph M. Hellerstein, Petros Maniatis, Ion Stoica Intel.
Implementing Declarative Overlays Boon Thau Loo 1 Tyson Condie 1, Joseph M. Hellerstein 1,2, Petros Maniatis 2, Timothy Roscoe 2, Ion Stoica 1 1 University.
Declarative Networking Mothy Joint work with Boon Thau Loo, Tyson Condie, Joseph M. Hellerstein, Petros Maniatis, Ion Stoica Intel Research and U.C. Berkeley.
Database System Concepts and Architecture
Implementing Declarative Overlays From two talks by: Boon Thau Loo 1 Tyson Condie 1, Joseph M. Hellerstein 1,2, Petros Maniatis 2, Timothy Roscoe 2, Ion.
P2P data retrieval DHT (Distributed Hash Tables) Partially based on Hellerstein’s presentation at VLDB2004.
Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan MIT and Berkeley presented by Daniel Figueiredo Chord: A Scalable Peer-to-peer.
Peer to Peer and Distributed Hash Tables
Berkeley dsn declarative sensor networks problem David Chu, Lucian Popa, Arsalan Tavakoli, Joe Hellerstein approach related dsn architecture status  B.
Peer-to-Peer Systems Chapter 25. What is Peer-to-Peer (P2P)? Napster? Gnutella? Most people think of P2P as music sharing.
Declarative sensor networks David Chu Computer Science Division EECS Department UC Berkeley DBLunch UC Berkeley 2 March 2007.
Presented by Elisavet Kozyri. A distributed application architecture that partitions tasks or work loads between peers Main actions: Find the owner of.
Rheeve: A Plug-n-Play Peer- to-Peer Computing Platform Wang-kee Poon and Jiannong Cao Department of Computing, The Hong Kong Polytechnic University ICDCSW.
P2p, Fall 05 1 Querying the Internet with PIER (PIER = Peer-to-peer Information Exchange and Retrieval) VLDB 2003 Ryan Huebsch, Joe Hellerstein, Nick Lanham,
The Data Ring: Community Content Sharing Serge Abiteboul (INRIA) Alkis Polyzotis (UC Santa Cruz)
Topics in Reliable Distributed Systems Lecture 2, Fall Dr. Idit Keidar.
SkipNet: A Scalable Overlay Network with Practical Locality Properties Nick Harvey, Mike Jones, Stefan Saroiu, Marvin Theimer, Alec Wolman Microsoft Research.
Freddies: DHT-Based Adaptive Query Processing via Federated Eddies Ryan Huebsch Shawn Jeffery CS Peer-to-Peer Systems 12/9/03.
Topics in Reliable Distributed Systems Fall Dr. Idit Keidar.
1 CS 194: Distributed Systems Distributed Hash Tables Scott Shenker and Ion Stoica Computer Science Division Department of Electrical Engineering and Computer.
What Can Databases Do for Peer-to-Peer Steven Gribble, Alon Halevy, Zachary Ives, Maya Rodrig, Dan Suciu Presented by: Ryan Huebsch CS294-4 P2P Systems.
Definition of terms Definition of terms Explain business conditions driving distributed databases Explain business conditions driving distributed databases.
Improving Data Access in P2P Systems Karl Aberer and Magdalena Punceva Swiss Federal Institute of Technology Manfred Hauswirth and Roman Schmidt Technical.
P2p, Fall 06 1 Querying the Internet with PIER (PIER = Peer-to-peer Information Exchange and Retrieval) VLDB 2003 Ryan Huebsch, Joe Hellerstein, Nick Lanham,
Focus on Distributed Hash Tables Distributed hash tables (DHT) provide resource locating and routing in peer-to-peer networks –But, more than object locating.
Internet Indirection Infrastructure (i3) Ion Stoica, Daniel Adkins, Shelley Zhuang, Scott Shenker, Sonesh Surana UC Berkeley SIGCOMM 2002.
1CS 6401 Peer-to-Peer Networks Outline Overview Gnutella Structured Overlays BitTorrent.
Introduction to Peer-to-Peer Networks. What is a P2P network Uses the vast resource of the machines at the edge of the Internet to build a network that.
Querying the Internet with PIER (PIER = Peer-to-peer Information Exchange and Retrieval) Ryan Huebsch Joe Hellerstein, Nick Lanham, Boon Thau Loo, Timothy.
Introduction to Peer-to-Peer Networks. What is a P2P network A P2P network is a large distributed system. It uses the vast resource of PCs distributed.
1 Copyright © 2004, Oracle. All rights reserved. Introduction to Oracle Forms Developer and Oracle Forms Services.
PIER & PHI Overview of Challenges & Opportunities Ryan Huebsch † Joe Hellerstein † °, Boon Thau Loo †, Sam Mardanbeigi †, Scott Shenker †‡, Ion Stoica.
Querying the Internet with PIER (PIER = Peer-to-peer Information Exchange and Retrieval) Ryan Huebsch † Joe Hellerstein †, Nick Lanham †, Boon Thau Loo.
Overlay Network Physical LayerR : router Overlay Layer N R R R R R N.
Titanium/Java Performance Analysis Ryan Huebsch Group: Boon Thau Loo, Matt Harren Joe Hellerstein, Ion Stoica, Scott Shenker P I E R Peer-to-Peer.
1 Distributed Hash Tables (DHTs) Lars Jørgen Lillehovde Jo Grimstad Bang Distributed Hash Tables (DHTs)
Querying Large Databases Rukmini Kaushik. Purpose Research for efficient algorithms and software architectures of query engines.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
Objectives Functionalities and services Architecture and software technologies Potential Applications –Link to research problems.
10 1 Chapter 10 Distributed Database Management Systems Database Systems: Design, Implementation, and Management, Sixth Edition, Rob and Coronel.
1 Distributed Databases BUAD/American University Distributed Databases.
1 Peer-to-Peer Technologies Seminar by: Kunal Goswami (05IT6006) School of Information Technology Guided by: Prof. C.R.Mandal, School of Information Technology.
Scalable Content- Addressable Networks Prepared by Kuhan Paramsothy March 5, 2007.
Peer to Peer A Survey and comparison of peer-to-peer overlay network schemes And so on… Chulhyun Park
1 Secure Peer-to-Peer File Sharing Frans Kaashoek, David Karger, Robert Morris, Ion Stoica, Hari Balakrishnan MIT Laboratory.
PIER: Peer-to-Peer Information Exchange and Retrieval Ryan Huebsch Joe Hellerstein, Nick Lanham, Boon Thau Loo, Scott Shenker, Ion Stoica
CS4432: Database Systems II Query Processing- Part 2.
Plethora: Infrastructure and System Design. Introduction Peer-to-Peer (P2P) networks: –Self-organizing distributed systems –Nodes receive and provide.
Introduction.  Administration  Simple DBMS  CMPT 454 Topics John Edgar2.
1. Efficient Peer-to-Peer Lookup Based on a Distributed Trie 2. Complex Queries in DHT-based Peer-to-Peer Networks Lintao Liu 5/21/2002.
Internet of Things. IoT Novel paradigm – Rapidly gaining ground in the wireless scenario Basic idea – Pervasive presence around us a variety of things.
6.894: Distributed Operating System Engineering Lecturers: Frans Kaashoek Robert Morris
PIER ( Peer-to-Peer Information Exchange and Retrieval ) 30 March 07 Neha Singh.
Algorithms and Techniques in Structured Scalable Peer-to-Peer Networks
Click to edit Master title style Multi-Destination Routing and the Design of Peer-to-Peer Overlays Authors John Buford Panasonic Princeton Lab, USA. Alan.
Fall CSE330/CIS550: Introduction to Database Management Systems Prof. Susan Davidson Office: 278 Moore Office hours: TTh
CS 540 Database Management Systems
P2P Search COP6731 Advanced Database Systems. P2P Computing  Powerful personal computer Share computing resources P2P Computing  Advantages: Shared.
P2P Search COP P2P Search Techniques Centralized P2P systems  e.g. Napster, Decentralized & unstructured P2P systems  e.g. Gnutella.
NCLAB 1 Supporting complex queries in a distributed manner without using DHT NodeWiz: Peer-to-Peer Resource Discovery for Grids Sujoy Basu, Sujata Banerjee,
Nick McKeown CS244 Lecture 17 Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications [Stoica et al 2001]
Querying the Internet with PIER CS294-4 Paul Burstein 11/10/2003.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Ryan Huebsch, Joseph M. Hellerstein, Ion Stoica, Nick Lanham, Boon Thau Loo, Scott Shenker Querying the Internet with PIER Speaker: Natalia KozlovaTutor:
Internet Indirection Infrastructure (i3)
UC Berkeley and Intel Research Berkeley
CHAPTER 3 Architectures for Distributed Systems
EE 122: Peer-to-Peer (P2P) Networks
Deterministic and Semantically Organized Network Topology
Presentation transcript:

The Architecture of PIER: an Internet-Scale Query Processor (PIER = Peer-to-peer Information Exchange and Retrieval) Ryan Huebsch Brent Chun, Joseph M. Hellerstein, Boon Thau Loo, Petros Maniatis, Timothy Roscoe, Scott Shenker, Ion Stoica, and Aydan R. Yumerefendi UC Berkeley and Intel Research Berkeley CIDR 1/5/05

Outline Application Space and Context Design Decisions Overview of Distributed Hash Tables Architecture Native Simulation Non-blocking Iterator Dataflow Query Dissemination Hierarchical Operators System Status Future Work

What is Very Large? Depends on Who You Are Single Site Clusters Distributed 10’s – 100’s Challenges How to run database style queries at Internet scale? Can DB concepts influence the next Internet architecture? Database CommunityNetwork Community Internet Scale 1000’s – Millions

Application Space Key properties Data is naturally distributed Centralized collection undesirable (legal, social, etc.) Homogenous schemas Data is more useful when viewed as a whole This is the design space we have chosen to investigate Mostly systems/algorithms challenges As opposed to … Enterprise Information Integration Semantic Web Data semantics & cleaning challenges

A Guiding Example: File Sharing Simple ubiquitous schemas: Filenames, Sizes, ID3 tags Early P2P file sharing apps Napster, Gnutella, KaZaA, etc. Simple Not the greatest example Often used to violate copyright Fairly trivial technology But… Points to key social issues driving adoption of decentralized systems Provide real workloads to validate more complex designs

Example 2: Network Traces Schemas are mostly standardized: IP, SMTP, HTTP, SNMP log formats, firewall log formats, etc. Network administrators are looking for patterns within their site AND with other sites: DDoS attacks cross administrative boundaries Tracking epidemiology of viruses/worms Timeliness is very helpful Might surprise you just how useful this is

Hard Systems Issues Here Scale Network churn Soft-state maintenance Timing/synchronization No central administration Debugging and software engineering Not to mention: Optimization Security Semantics Etc.

Core Dataflow Engine Context for this Talk Physical Network Overlay Network Query Plan Declarative Queries

Initial Design Assumptions Database Oriented: Data independence, from disk to network General-purpose dataflow engine Focus on relational operators Network Oriented: “Best Effort” P2P architecture All nodes are “equal” No explicit hierarchy No single owner Overlay Network/Distributed Hash Tables (DHT) Highly scalable per-operation overheads grow logarithmically Little routing state stored at each node Resilient to network churn

Design Decisions Decouple Storage PIER is just the query engine, no storage Query data that is in situ Give up ACID guarantees Why not a design p2p storage manager too? Not needed for many applications Hard problem in itself – leave for others to solve (or not) Software Engineering Distributed systems are complicated Important design decision: “native simulation” Simulated network, native application code Reuse of complex distributed logic Overlay network provides this logic, with narrow interface Design challenge: get lots of functionality from this simple interface

Overview of Distributed Hash Tables (DHTs) DHT interface is just a “hash table”: Put(key, value), Get(key) K V put(K 1,V 1 ) (K 1,V 1 ) get(K 1 )

Integrating Network and Database Research Initial design goal was to use the DHT  became a major piece of the architecture On that simple interface, we can build many DBMS components Query Dissemination Broadcast (scan) Content-based Unicast (hash index) Content-based Multicast (range index) Partitioned Parallelism (Exchange, Map/Reduce) Operator Internal State Hierarchical Operators (Aggregation and Joins) Essentially, DHT is a data independence mechanism for Nets Our DB viewpoint led us to reuse DHTs far more broadly

Outline Application Space and Context Design Decisions Overview of Distributed Hash Tables Architecture Native Simulation Non-blocking Iterator Dataflow Query Dissemination Hierarchical Operators System Status Future Work

Native Simulation Idea: simulated network, but the very same application code No #ifdef SIMULATOR What’s it good for Simulation: Algorithmic logic bugs & scaling experiments Native simulation: implementation errors, large-system issues Architecture PIER use events not threads Nice for efficiency, asynchronous I/O More critical: fits naturally with discrete-event network simulator Virtual Runtime Interface (VRI) consists only of: System clock Event scheduler UDP/TCP network calls Local storage At runtime bind the VRI to either the simulator or the OS

Architecture Overview Physical RuntimeSimulation Same Code

Non-Blocking Iterator Problem: Traditional iterator (pull) model is blocking This didn’t matter much in disk-based DBMSs Many have looked at this problem Turns out none of the literature fit naturally Recall: event-driven, network-bound system Our Solution: Non-blocking iterator Always decouple control flow from the data flow Pull for the control flow Push for the data flow Natural combination of DB and Net SW engineering E.g. “iterators” meets “active messages” Simple function calls except at points of asynchrony

Non-Blocking Iterator (cont’d) Data -- R Selection 1 Data -- S Selection 2 Join R & S Result Stack (Local) Index Join PIER Backend probe * data probe s=x probe * data Result Join R & S Selection 1 Data R Selection 1 Join R & S Selection 2 Data S Selection 2 Join R & S Result

Query Dissemination Problem: Need to get the query to the right nodes Which are they? How to reach just them? Akin to DB “access methods” steering queries to disk blocks Traditional DB indexes not well suited to Internet scale Networking view: content-based multicast A topic of research in overlay networks Note IP multicast not content-based: list of IP addresses Our solution: leverage DHT Queries disseminated by “put()-ing” them E.g., DHT can route equality selections natively For more complex queries, we add more machinery on top of DHTs E.g. range selections E.g. more complex queries

Hierarchical Operators We use DHTs as our basic routing infrastructure A multi-hop network If all nodes route toward a single node, a tree is formed This provides a natural hierarchical distributed QP infrastructure Opportunities for optimization Hierarchical Aggregation Combine data early in path Spread in-bandwidth (fan-in) Hierarchical Joins Produce answers early Spread out-bandwidth

1 Hierarchical Aggregation

Hierarchical Joins R1R1 R3R3 R2R2 S1S1 S2S2 S3S3 Assume a cross product 3 R tuples and 3 S tuples = 9 results A 11 A 31 A 23 A 12 A 22 A 21 A 13 A 32 A 33 R1R1 S1S1 S3S3 R3R3 R1R1 S1S1 S3S3 R2R2 S2S2

PIER Status Running 24x7 on 400+ PlanetLab nodes (Global test bed on 5 continents) Demo application of network security monitoring Gnutella proxy implementation [VLDB 04] Network route construction with recursive PIER queries [HotNets 04]

Future Work Continuing Research Optimization Static optimization vs. Distributed eddies Multi-Query optimization Security Result fidelity Resource management Accountability Politics and Privacy