1 / 72

An Overview of Cloud Computing Yahoo Raghu Ramakrishnan Chief Scientist, Audience and Cloud Computing Research Fellow,

Questions. What is cloud computing?Horizontal and functional servicesWhat's it going to change?Software business models, science, lifeHow many clouds will there be?1, 2, 3, infinity What's new in cloud computing?HPC grids, ASPs, hosted services, Multics (!)Emerging

anise
Download Presentation

An Overview of Cloud Computing Yahoo Raghu Ramakrishnan Chief Scientist, Audience and Cloud Computing Research Fellow,

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


    1. An Overview of Cloud Computing @ Yahoo! Raghu Ramakrishnan Chief Scientist, Audience and Cloud Computing Research Fellow, Yahoo! Research

    2. Questions What is cloud computing? Horizontal and functional services What’s it going to change? Software business models, science, life How many clouds will there be? 1, 2, 3, infinity What’s new in cloud computing? HPC grids, ASPs, hosted services, Multics (!) Emerging “cloud stack” to support a broad class of programs, including data intensive applications

    3. SCENARIOS Pie-in-the-sky Need some slides up front to layout what our definition of a cloud entails (since it’s a rapidly emerging buzzword that has no intrinsic definition. )Need some slides up front to layout what our definition of a cloud entails (since it’s a rapidly emerging buzzword that has no intrinsic definition. )

    4. Living in the Clouds We want to start a new website, FredsList.com Our site will provide listings of items for sale, jobs, etc. As time goes on, we’ll add more features And illustrate how more cloud capabilities (and corresponding infrastructure components) are used as needed List of capabilities/components is illustrative, not exhaustive Our cloud provides a “dataset” abstraction FredsList doesn’t worry about the underlying components

    5. Step 1: Listings Scenario

    6. Step 2: System Evolution

    7. Step 3: Search

    8. Step 4: Photos

    9. Step 5: Data Analysis

    10. Step 6: Performance

    11. Data Serving vs. Analysis Very different workloads, requirements Data from serving system is one of many kinds of data (click streams are another common kind, as are syndicated feeds) to be analyzed and integrated The result of analysis often goes right back into serving system

    12. EYES TO THE SKIES Motherhood-and-Apple-Pie Need some slides up front to layout what our definition of a cloud entails (since it’s a rapidly emerging buzzword that has no intrinsic definition. )Need some slides up front to layout what our definition of a cloud entails (since it’s a rapidly emerging buzzword that has no intrinsic definition. )

    13. Why Clouds? On-demand infrastructure to create a fundamental shift in the OE curve: Do things we can’t do Build more robustly, more efficiently, more globally, more completely, more quickly, for a given budget Cloud services should do heavy lifting of heavy-lifting of scaling & high-availability Today, this is done at the app-level, which is not productive

    14. Requirements for Cloud Services Multitenant. A cloud service must support multiple, organizationally distant customers. Elasticity. Tenants should be able to negotiate and receive resources/QoS on-demand. Resource Sharing. Ideally, spare cloud resources should be transparently applied when a tenant’s negotiated QoS is insufficient, e.g., due to spikes. Horizontal scaling. It should be possible to add cloud capacity in small increments; this should be transparent to the tenants of the service. Metering. A cloud service must support accounting that reasonably ascribes operational and capital expenditures to each of the tenants of the service. Security. A cloud service should be secure in that tenants are not made vulnerable because of loopholes in the cloud. Availability. A cloud service should be highly available. Operability. A cloud service should be easy to operate, with few operators. Operating costs should scale linearly or better with the capacity of the service.

    15. Types of Cloud Services Two kinds of cloud services: Horizontal (“Platform”) Cloud Services Functionality enabling tenants to build applications or new services on top of the cloud Functional Cloud Services Functionality that is useful in and of itself to tenants. E.g., various SaaS instances, such as Saleforce.com; Google Analytics and Yahoo!’s IndexTools; Yahoo! properties aimed at end-users and small businesses, e.g., flickr, Groups, Mail, News, Shopping Could be built on top of horizontal cloud services or from scratch Yahoo! has been offering these for a long while (e.g., Mail for SMB, Groups, Flickr, BOSS, Ad exchanges)

    16. Opening Up Yahoo! Search Phase 1 SearchMonkey Messaging: • SearchMonkey is another proof point in Yahoo!’s big bets strategy o Openness – SearchMonkey will create access to the structured data that the web is based on and build a better experience for Yahoo! Search users o Partner of choice - Yahoo! Search is opening up its platform to any size site owner or developer to play in the search ecosystem with self-service tools o Insights – site owners will have better insight to search traffic drivers; better able to create targeted results for better engagement • Yahoo! Search is a leading starting point on the Web for users and the first major search engine to open its search page to site owners and developers and allow them to create visibly differentiated search results. • By opening up the search platform, Yahoo! Search improves the way search engines display results to the benefit of users, site owner and developers. SearchMonkey Messaging: • SearchMonkey is another proof point in Yahoo!’s big bets strategy o Openness – SearchMonkey will create access to the structured data that the web is based on and build a better experience for Yahoo! Search users o Partner of choice - Yahoo! Search is opening up its platform to any size site owner or developer to play in the search ecosystem with self-service tools o Insights – site owners will have better insight to search traffic drivers; better able to create targeted results for better engagement • Yahoo! Search is a leading starting point on the Web for users and the first major search engine to open its search page to site owners and developers and allow them to create visibly differentiated search results. • By opening up the search platform, Yahoo! Search improves the way search engines display results to the benefit of users, site owner and developers.

    17. Search Results of the Future

    18. BOSS Offerings

    19. Partner Examples About Medium Founded in 2006 in Boulder, Colorado, Me.dium is a social browsing software company offering a browser extension that allows people to surf with friends for the first time. By revealing this new Social Exploration Environment TM (SEE), Me.dium graphically connects users with their friends and others enabling users to interact online, similarly to how one interacts with people in the real world. Me.dium’s Social Search Alpha is the first crowd-powered search engine.   Social Search enables people to find relevant information based on the activity of crowds right now.  See an entirely new layer of information over and above what traditional search provides.  You get the hottest, most active content related to your query - as determined by the current activity of the crowds. Me.dium combined the BOSS API with it’s insight into the real time surfing activity of the crowds to build a unique "Crowd-Powered" social search engine prototype. About Medium Founded in 2006 in Boulder, Colorado, Me.dium is a social browsing software company offering a browser extension that allows people to surf with friends for the first time. By revealing this new Social Exploration Environment TM (SEE), Me.dium graphically connects users with their friends and others enabling users to interact online, similarly to how one interacts with people in the real world. Me.dium’s Social Search Alpha is the first crowd-powered search engine.  

    20. Horizontal Cloud Services Horizontal cloud services are foundations on which tenants build applications or new services. They should be: Semantics-free. Must be "generic infrastructure,” and not tied to specific app-logic. May provide the ability to inject application logic through well-defined APIs Broadly applicable. Must be broadly applicable (i.e., it can't be intended for just one or two properties). Fault-tolerant over commodity hardware. Must be built using inexpensive commodity hardware, and should mask component failures. While each cloud service provides value, the power of the cloud paradigm will depend on a collection of well-chosen, loosely coupled services that collectively make it easy to quickly develop and operate innovative web applications.

    21. What’s in the Horizontal Cloud?

    22. Yahoo! Cloud Stack

    23. Yahoo! CCDI Thrust Areas Fast Provisioning and Machine Virtualization: On demand, deliver a set of hosts imaged with desired software and configured against standard services Multiple hosts may be multiplexed onto the same physical machine. Batch Storage and Processing: Scalable data storage optimized for batch processing, together with computational capabilities Operational Storage: Persistent storage that supports low-latency updates and flexible retrieval Edge Content Services: Support for dealing with network topology, communication protocols, caching, and BCP

    24. Web Data Management

    25. Hadoop: Batch Storage/Analysis Why is batch processing important? Whether it’s response-prediction for advertising machine-learned relevance for Search, or content optimization for audience, data-intensive computing is increasingly central to everything Yahoo! does Hadoop is central to addressing this need Hadoop is a case-study in our cloud vision Processes enormous amounts of data Provides horizontal scaling and fault-tolerance for our users Allows those users to focus on their app logic OKOK

    26. The World Has Changed Web serving applications need: Scalability! Preferably elastic Flexible schemas Geographic distribution High availability Reliable storage Web serving applications can do without: Complicated queries Strong transactions

    27. MObStor Yahoo!’s next-generation globally replicated, virtualized media object storage service Better provisioning, easy migration, replication, better BCP, and performance New features (Evergreen URLs, CDN integration, REST API, …) The object metadata problem addressed using Sherpa, though MObStor is focused on blob storage.

    29. A project in Y!R focused on a long-range problem, origins in earlier work at Wisconsin. Basis for the Goldrush hack, which won the recent Local hack competition, and could contribute to creation/refinement of Y! Local content and Next Gen Search. A project in Y!R focused on a long-range problem, origins in earlier work at Wisconsin. Basis for the Goldrush hack, which won the recent Local hack competition, and could contribute to creation/refinement of Y! Local content and Next Gen Search.

    30. CCDI—Research Collaboration Yahoo! Research Raghu Ramakrishnan Brian Cooper Utkarsh Srivastava Adam Silberstein Rodrigo Fonseca CCDI Chuck Neerdaels P.P.S. Narayan Kevin Athey Toby Negrin Plus Dev/QA teams

    31. Yahoo! Serving Storage Problem Small records – 100KB or less Structured records – lots of fields, evolving Extreme data scale - Tens of TB Extreme request scale - Tens of thousands of requests/sec Low latency globally - 20+ datacenters worldwide High Availability - outages cost $millions Variable usage patterns - as applications and users change

    32. The PNUTS/Sherpa Solution The next generation global-scale record store Record-orientation: Routing, data storage optimized for low-latency record access Scale out: Add machines to scale throughput (while keeping latency low) Asynchrony: Pub-sub replication to far-flung datacenters to mask propagation delay Consistency model: Reduce complexity of asynchrony for the application programmer Cloud deployment model: Hosted, managed service to reduce app time-to-market and enable on demand scale and elasticity

    33. What is PNUTS/Sherpa?

    34. What Will It Become?

    35. What Will It Become?

    36. Scalability Thousands of machines Easy to add capacity Restrict query language to avoid costly queries Geographic replication Asynchronous replication around the globe Low-latency local access High availability and fault tolerance Automatically recover from failures Serve reads and writes despite failures Design Goals Consistency Per-record guarantees Timeline model Option to relax if needed Multiple access paths Hash table, ordered table Primary, secondary access Hosted service Applications plug and play Share operational cost

    37. Technology Elements

    38. Data Manipulation Per-record operations Get Set Delete Multi-record operations Multiget Scan Getrange Web service (RESTful) API

    39. Tablets—Hash Table

    40. Tablets—Ordered Table

    41. Flexible Schema

    42. Detailed Architecture

    43. Tablet Splitting and Balancing

    44. QUERY PROCESSING

    45. Accessing Data

    46. Bulk Read

    47. Range Queries in YDOT Clustered, ordered retrieval of records

    48. Updates

    49. ASYNCHRONOUS REPLICATION AND CONSISTENCY

    50. Asynchronous Replication

    51. Goal: Make it easier for applications to reason about updates and cope with asynchrony What happens to a record with primary key “Alice”? Consistency Model

    52. Example: Social Alice

    53. Consistency Model

    54. Consistency Model

    55. Consistency Model

    56. Consistency Model

    57. Consistency Model

    58. Consistency Techniques Per-record mastering Each record is assigned a “master region” May differ between records Updates to the record forwarded to the master region Ensures consistent ordering of updates Tablet-level mastering Each tablet is assigned a “master region” Inserts and deletes of records forwarded to the master region Master region decides tablet splits These details are hidden from the application Except for the latency impact!

    59. Mastering

    60. Bulk Insert/Update/Replace

    61. Bulk Load in YDOT YDOT bulk inserts can cause performance hotspots Solution: preallocate tablets

    62. Index Maintenance How to have lots of interesting indexes and views, without killing performance? Solution: Asynchrony! Indexes/views updated asynchronously when base table updated

    63. SHERPA IN CONTEXT

    64. Types of Record Stores Query expressiveness

    65. Types of Record Stores Consistency model

    66. Types of Record Stores Data model

    67. Types of Record Stores Elasticity (ability to add resources on demand)

    68. Data Stores Comparison User-partitioned SQL stores Microsoft Azure SDS Amazon SimpleDB Multi-tenant application databases Salesforce.com Oracle on Demand Mutable object stores Amazon S3 Versus PNUTS More expressive queries Users must control partitioning Limited elasticity Highly optimized for complex workloads Limited flexibility to evolving applications Inherit limitations of underlying data management system Object storage versus record management

    69. Application Design Space

    70. Alternatives Matrix

    71. Further Reading

    72. QUESTIONS?

More Related