SlideShare ist ein Scribd-Unternehmen logo
1 von 37
What is Cloud Computing? 
Arcus Universe 
Tuesday, December 2, 2014
Source: http://www.free-pictures-photos.com/
1. Web-Scale Problems 
 Characteristics: 
 Definitely data-intensive 
 May also be processing intensive 
 Examples: 
 Crawling, indexing, searching, mining the Web 
 “Post-genomics” life sciences research 
 Other scientific data (physics, astronomers, etc.) 
 Sensor networks 
 Web 2.0 applications 
 …
How much data? 
● Wayback Machine has 2 PB + 20 TB/month (2006) 
● Google processes 20 PB a day (2008) 
● “all words ever spoken by human beings” ~ 5 EB 
● NOAA has ~1 PB climate data (2007) 
● CERN’s LHC will generate 15 PB a year (2008) 
640K ought to be 
enough for 
anybody.
There’s nothing like more data! 
s/inspiration/data/g;
What to do with more data? 
● Answering factoid questions 
● Pattern matching on the Web 
● Works amazingly well 
Who shot Abraham Lincoln? ® X shot Abraham Lincoln 
● Learning relations 
● Start with seed instances 
● Search for patterns on the Web 
● Using patterns to find more instances 
Birthday-of(Mozart, 1756) 
Birthday-of(Einstein, 1879) 
Wolfgang Amadeus Mozart (1756 - 1791) 
●Einstein was born in 1879 
PERSON (DATE – 
PERSON was born in DATE
2. Large Data Centers 
● Web-scale problems? Throw more machines at it! 
● Clear trend: centralization of computing resources 
in large data centers 
● Necessary ingredients: fiber, juice, and space 
● What do Oregon, Iceland, and abandoned mines have in 
common? 
● Important Issues: 
● Redundancy 
● Efficiency 
● Utilization 
● Management
Key Technology: Virtualization 
App App App 
Operating System 
Hardware 
Traditional Stack 
App App App 
OS OS 
Hardware 
OS 
Hypervisor 
Virtualized Stack
3. Different Computing Models 
“Why do it yourself if you can pay someone to do it for you?” 
● Utility computing 
● Why buy machines when you can rent cycles? 
● Examples: Amazon’s EC2, GoGrid, AppNexus 
● Platform as a Service (PaaS) 
● Give me nice API and take care of the 
implementation 
● Example: Google App Engine 
● Software as a Service (SaaS) 
● Just run it for me! 
● Example: Gmail
What is the course about? 
● MapReduce: the “back-end” of cloud computing 
● Batch-oriented processing of large datasets 
● Ajax: the “front-end” of cloud computing 
● Highly-interactive Web-based applications 
● Computing “in the clouds” 
● Amazon’s EC2/S3 as an example of utility 
computing
Amazon Web Services 
● Elastic Compute Cloud (EC2) 
● Rent computing resources by the hour 
● Basic unit of accounting = instance-hour 
● Additional costs for bandwidth 
● Simple Storage Service (S3) 
● Persistent storage 
● Charge by the GB/month 
● Additional costs for bandwidth 
● You’ll be using EC2/S3 for course assignments!
This course is not for you… 
● If you’re not genuinely interested in the topic 
● If you’re not ready to do a lot of programming 
● If you’re not open to thinking about computing in 
new ways 
● If you can’t cope with uncertainly, 
unpredictability, poor documentation, and 
immature software 
● If you can’t put in the time 
Otherwise, this will be a richly rewarding course!
Cloud Computing Zen 
● Don’t get frustrated (take a deep breath)… 
● This is bleeding edge technology 
● Those W$*#T@F! moments 
● Be patient… 
● This is the second first time I’ve taught this course 
● Be flexible… 
● There will be unanticipated issues along the way 
● Be constructive… 
● Tell me how I can make everyone’s experience 
better
Web-Scale Problems? 
● Don’t hold your breath: 
● Biocomputing 
● Nanocomputing 
● Quantum computing 
● … 
● It all boils down to… 
● Divide-and-conquer 
● Throwing more hardware at the problem 
Simple to understand… a lifetime to master…
Divide and Conquer 
“Work” 
w1 w2 w3 
“worker” “worker” “worker” 
r1 r2 r3 
“Result” 
Partition 
Combine
Different Workers 
● Different threads in the same core 
● Different cores in the same CPU 
● Different CPUs in a multi-processor system 
● Different machines in a distributed system
Choices, Choices, Choices 
● Commodity vs. “exotic” hardware 
● Number of machines vs. processor vs. cores 
● Bandwidth of memory vs. disk vs. network 
● Different programming models
Flynn’s Taxonomy 
Instructions 
Single (SI) Multiple (MI) 
at aD 
) DM( el pitl u M 
SISD 
Single-threaded 
process 
MISD 
Pipeline architecture 
SIMD 
Vector Processing 
MIMD 
Multi-threaded 
Programming 
) DS( el gni S
SISD 
Processor 
D D D D D D D 
Instructions
SIMD 
D0 
Processor 
DDDDDD0 0 0 
0 0 0 
Instructions 
D1 
D2 
D3 
D4 
… 
Dn 
D1 
D2 
D3 
D4 
… 
Dn 
D1 
D2 
D3 
D4 
… 
Dn 
D1 
D2 
D3 
D4 
… 
Dn 
D1 
D2 
D3 
D4 
… 
Dn 
D1 
D2 
D3 
D4 
… 
Dn 
D1 
D2 
D3 
D4 
… 
Dn
MIMD 
Processor 
D D D D D D D 
Instructions 
Processor 
D D D D D D D 
Instructions
Memory Typology: Distributed 
Processor Memory Processor Memory 
Network 
Processor Memory Processor Memory
Memory Typology: Shared 
Memory 
Processor 
Processor 
Processor Processor
Memory Typology: Hybrid 
Memory 
Processor 
Processor 
Network 
Processor 
Memory 
Processor 
Processor 
Memory 
Processor 
Memory 
Processor 
Processor
Parallelization Problems 
● How do we assign work units to workers? 
● What if we have more work units than workers? 
● What if workers need to share partial results? 
● How do we aggregate partial results? 
● How do we know all the workers have finished? 
● What if workers die? 
What is the common theme of all of these problems?
General Theme? 
● Parallelization problems arise from: 
● Communication between workers 
● Access to shared resources (e.g., data) 
● Thus, we need a synchronization system! 
● This is tricky: 
● Finding bugs is hard 
● Solving bugs is even harder
Managing Multiple Workers 
● Difficult because 
● (Often) don’t know the order in which workers run 
● (Often) don’t know where the workers are running 
● (Often) don’t know when workers interrupt each other 
● Thus, we need: 
● Semaphores (lock, unlock) 
● Conditional variables (wait, notify, broadcast) 
● Barriers 
● Still, lots of problems: 
● Deadlock, livelock, race conditions, ... 
● Moral of the story: be careful! 
● Even trickier if the workers are on different machines
Patterns for Parallelism 
● Parallel computing has been around for 
decades 
● Here are some “design patterns” …
Master/Slaves 
master 
slaves
Producer/Consumer Flow 
P C 
P 
P 
C 
C 
P C 
P 
P 
C 
C
Work Queues 
P C 
P 
P 
C 
C 
shared queue 
W W W W W
Rubber Meets Road 
● From patterns to implementation: 
● pthreads, OpenMP for multi-threaded programming 
● MPI for clustering computing 
● … 
● The reality: 
● Lots of one-off solutions, custom code 
● Write you own dedicated library, then program with it 
● Burden on the programmer to explicitly manage 
everything 
● MapReduce to the rescue! 
● (for next time)
Visit Arcus Universe for demo of our Cloud 
Accounting Software 
www.arcus-universe.com

Weitere ähnliche Inhalte

Andere mochten auch

Nanotechnology and its impact on modern computer
Nanotechnology and its impact on modern computerNanotechnology and its impact on modern computer
Nanotechnology and its impact on modern computerFarah M. Altufaili
 
The Future Of Computers
The Future Of ComputersThe Future Of Computers
The Future Of Computersskyhighphoto83
 
Next Generation Computer
Next Generation ComputerNext Generation Computer
Next Generation ComputerAnil Kumar
 
Nanotechnology for Future Electronics
Nanotechnology for Future ElectronicsNanotechnology for Future Electronics
Nanotechnology for Future ElectronicsPiyusha Hivale
 
Future of Computers
Future of ComputersFuture of Computers
Future of Computersguest19ab3c
 
תוכנית שיווק באינטרנט
תוכנית שיווק באינטרנטתוכנית שיווק באינטרנט
תוכנית שיווק באינטרנטIsaac Nehmad
 
Walmart Store Inc 1208412318223884 8
Walmart Store Inc 1208412318223884 8Walmart Store Inc 1208412318223884 8
Walmart Store Inc 1208412318223884 8rogersjr33
 
Get More Done with Less: A Team Approach to Delivering Results for Career Ce...
Get More Done with Less:  A Team Approach to Delivering Results for Career Ce...Get More Done with Less:  A Team Approach to Delivering Results for Career Ce...
Get More Done with Less: A Team Approach to Delivering Results for Career Ce...Hannah Morgan
 
trabajo con fotografia digital
trabajo con fotografia digitaltrabajo con fotografia digital
trabajo con fotografia digitalRicardo Mejia
 
Surrealism and abstract expressionism
Surrealism and abstract expressionismSurrealism and abstract expressionism
Surrealism and abstract expressionismalquea13
 
活著都是特別日子
活著都是特別日子活著都是特別日子
活著都是特別日子David Leung
 
Siena International Photo Awards Honorable Mentions: Category Travel
Siena International Photo Awards Honorable  Mentions:  Category TravelSiena International Photo Awards Honorable  Mentions:  Category Travel
Siena International Photo Awards Honorable Mentions: Category Travelmaditabalnco
 

Andere mochten auch (18)

Nanocomputers
NanocomputersNanocomputers
Nanocomputers
 
Future Computers
Future ComputersFuture Computers
Future Computers
 
Nano computing.
Nano computing.Nano computing.
Nano computing.
 
Nanotechnology and its impact on modern computer
Nanotechnology and its impact on modern computerNanotechnology and its impact on modern computer
Nanotechnology and its impact on modern computer
 
Nanocomputing
NanocomputingNanocomputing
Nanocomputing
 
The Future Of Computers
The Future Of ComputersThe Future Of Computers
The Future Of Computers
 
Next Generation Computer
Next Generation ComputerNext Generation Computer
Next Generation Computer
 
Ppt of nanocomputing
Ppt of nanocomputingPpt of nanocomputing
Ppt of nanocomputing
 
Nanotechnology for Future Electronics
Nanotechnology for Future ElectronicsNanotechnology for Future Electronics
Nanotechnology for Future Electronics
 
Future of Computers
Future of ComputersFuture of Computers
Future of Computers
 
תוכנית שיווק באינטרנט
תוכנית שיווק באינטרנטתוכנית שיווק באינטרנט
תוכנית שיווק באינטרנט
 
Walmart Store Inc 1208412318223884 8
Walmart Store Inc 1208412318223884 8Walmart Store Inc 1208412318223884 8
Walmart Store Inc 1208412318223884 8
 
Get More Done with Less: A Team Approach to Delivering Results for Career Ce...
Get More Done with Less:  A Team Approach to Delivering Results for Career Ce...Get More Done with Less:  A Team Approach to Delivering Results for Career Ce...
Get More Done with Less: A Team Approach to Delivering Results for Career Ce...
 
trabajo con fotografia digital
trabajo con fotografia digitaltrabajo con fotografia digital
trabajo con fotografia digital
 
Surrealism and abstract expressionism
Surrealism and abstract expressionismSurrealism and abstract expressionism
Surrealism and abstract expressionism
 
活著都是特別日子
活著都是特別日子活著都是特別日子
活著都是特別日子
 
Bread
BreadBread
Bread
 
Siena International Photo Awards Honorable Mentions: Category Travel
Siena International Photo Awards Honorable  Mentions:  Category TravelSiena International Photo Awards Honorable  Mentions:  Category Travel
Siena International Photo Awards Honorable Mentions: Category Travel
 

Ähnlich wie Cloud accounting software uk

Future of ai on the jvm
Future of ai on the jvmFuture of ai on the jvm
Future of ai on the jvmAdam Gibson
 
AMW43 - Unba.se, Distributed database for human interaction
AMW43 - Unba.se, Distributed database for human interactionAMW43 - Unba.se, Distributed database for human interaction
AMW43 - Unba.se, Distributed database for human interactionDaniel Norman
 
Monitoring Big Data Systems - "The Simple Way"
Monitoring Big Data Systems - "The Simple Way"Monitoring Big Data Systems - "The Simple Way"
Monitoring Big Data Systems - "The Simple Way"Demi Ben-Ari
 
AWS Big Data Demystified #1.2 | Big Data architecture lessons learned
AWS Big Data Demystified #1.2 | Big Data architecture lessons learned AWS Big Data Demystified #1.2 | Big Data architecture lessons learned
AWS Big Data Demystified #1.2 | Big Data architecture lessons learned Omid Vahdaty
 
Challenges in Large Scale Machine Learning
Challenges in Large Scale  Machine LearningChallenges in Large Scale  Machine Learning
Challenges in Large Scale Machine LearningSudarsun Santhiappan
 
Notes on data-intensive processing with Hadoop Mapreduce
Notes on data-intensive processing with Hadoop MapreduceNotes on data-intensive processing with Hadoop Mapreduce
Notes on data-intensive processing with Hadoop MapreduceEvert Lammerts
 
Productionizing Deep Learning From the Ground Up
Productionizing Deep Learning From the Ground UpProductionizing Deep Learning From the Ground Up
Productionizing Deep Learning From the Ground Upodsc
 
Benchmarks, performance, scalability, and capacity what's behind the numbers
Benchmarks, performance, scalability, and capacity what's behind the numbersBenchmarks, performance, scalability, and capacity what's behind the numbers
Benchmarks, performance, scalability, and capacity what's behind the numbersJustin Dorfman
 
Benchmarks, performance, scalability, and capacity what s behind the numbers...
Benchmarks, performance, scalability, and capacity  what s behind the numbers...Benchmarks, performance, scalability, and capacity  what s behind the numbers...
Benchmarks, performance, scalability, and capacity what s behind the numbers...james tong
 
Bridging the gap in enterprise AI
Bridging the gap in enterprise AIBridging the gap in enterprise AI
Bridging the gap in enterprise AIMax Pumperla
 
The Professional Programmer
The Professional ProgrammerThe Professional Programmer
The Professional ProgrammerDave Cross
 
Big Data in 200 km/h | AWS Big Data Demystified #1.3
Big Data in 200 km/h | AWS Big Data Demystified #1.3  Big Data in 200 km/h | AWS Big Data Demystified #1.3
Big Data in 200 km/h | AWS Big Data Demystified #1.3 Omid Vahdaty
 
AWS big-data-demystified #1.1 | Big Data Architecture Lessons Learned | English
AWS big-data-demystified #1.1  | Big Data Architecture Lessons Learned | EnglishAWS big-data-demystified #1.1  | Big Data Architecture Lessons Learned | English
AWS big-data-demystified #1.1 | Big Data Architecture Lessons Learned | EnglishOmid Vahdaty
 
Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.
Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.
Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.UA Mobile
 
Dirty Data? Clean it up! - Rocky Mountain DataCon 2016
Dirty Data? Clean it up! - Rocky Mountain DataCon 2016Dirty Data? Clean it up! - Rocky Mountain DataCon 2016
Dirty Data? Clean it up! - Rocky Mountain DataCon 2016Dan Lynn
 
Everything You Were Taught About Java Is Wrong
Everything You Were Taught About Java Is WrongEverything You Were Taught About Java Is Wrong
Everything You Were Taught About Java Is WrongTim Boudreau
 
What is Distributed Computing, Why we use Apache Spark
What is Distributed Computing, Why we use Apache SparkWhat is Distributed Computing, Why we use Apache Spark
What is Distributed Computing, Why we use Apache SparkAndy Petrella
 
Distributed machine learning 101 using apache spark from a browser devoxx.b...
Distributed machine learning 101 using apache spark from a browser   devoxx.b...Distributed machine learning 101 using apache spark from a browser   devoxx.b...
Distributed machine learning 101 using apache spark from a browser devoxx.b...Andy Petrella
 
BYOD Revisited: Build Your Own Device (Embedded Linux Conference 2014)
BYOD Revisited: Build Your Own Device (Embedded Linux Conference 2014)BYOD Revisited: Build Your Own Device (Embedded Linux Conference 2014)
BYOD Revisited: Build Your Own Device (Embedded Linux Conference 2014)Ron Munitz
 

Ähnlich wie Cloud accounting software uk (20)

Future of ai on the jvm
Future of ai on the jvmFuture of ai on the jvm
Future of ai on the jvm
 
AMW43 - Unba.se, Distributed database for human interaction
AMW43 - Unba.se, Distributed database for human interactionAMW43 - Unba.se, Distributed database for human interaction
AMW43 - Unba.se, Distributed database for human interaction
 
Monitoring Big Data Systems - "The Simple Way"
Monitoring Big Data Systems - "The Simple Way"Monitoring Big Data Systems - "The Simple Way"
Monitoring Big Data Systems - "The Simple Way"
 
AWS Big Data Demystified #1.2 | Big Data architecture lessons learned
AWS Big Data Demystified #1.2 | Big Data architecture lessons learned AWS Big Data Demystified #1.2 | Big Data architecture lessons learned
AWS Big Data Demystified #1.2 | Big Data architecture lessons learned
 
Challenges in Large Scale Machine Learning
Challenges in Large Scale  Machine LearningChallenges in Large Scale  Machine Learning
Challenges in Large Scale Machine Learning
 
Hadoop.mapreduce
Hadoop.mapreduceHadoop.mapreduce
Hadoop.mapreduce
 
Notes on data-intensive processing with Hadoop Mapreduce
Notes on data-intensive processing with Hadoop MapreduceNotes on data-intensive processing with Hadoop Mapreduce
Notes on data-intensive processing with Hadoop Mapreduce
 
Productionizing Deep Learning From the Ground Up
Productionizing Deep Learning From the Ground UpProductionizing Deep Learning From the Ground Up
Productionizing Deep Learning From the Ground Up
 
Benchmarks, performance, scalability, and capacity what's behind the numbers
Benchmarks, performance, scalability, and capacity what's behind the numbersBenchmarks, performance, scalability, and capacity what's behind the numbers
Benchmarks, performance, scalability, and capacity what's behind the numbers
 
Benchmarks, performance, scalability, and capacity what s behind the numbers...
Benchmarks, performance, scalability, and capacity  what s behind the numbers...Benchmarks, performance, scalability, and capacity  what s behind the numbers...
Benchmarks, performance, scalability, and capacity what s behind the numbers...
 
Bridging the gap in enterprise AI
Bridging the gap in enterprise AIBridging the gap in enterprise AI
Bridging the gap in enterprise AI
 
The Professional Programmer
The Professional ProgrammerThe Professional Programmer
The Professional Programmer
 
Big Data in 200 km/h | AWS Big Data Demystified #1.3
Big Data in 200 km/h | AWS Big Data Demystified #1.3  Big Data in 200 km/h | AWS Big Data Demystified #1.3
Big Data in 200 km/h | AWS Big Data Demystified #1.3
 
AWS big-data-demystified #1.1 | Big Data Architecture Lessons Learned | English
AWS big-data-demystified #1.1  | Big Data Architecture Lessons Learned | EnglishAWS big-data-demystified #1.1  | Big Data Architecture Lessons Learned | English
AWS big-data-demystified #1.1 | Big Data Architecture Lessons Learned | English
 
Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.
Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.
Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.
 
Dirty Data? Clean it up! - Rocky Mountain DataCon 2016
Dirty Data? Clean it up! - Rocky Mountain DataCon 2016Dirty Data? Clean it up! - Rocky Mountain DataCon 2016
Dirty Data? Clean it up! - Rocky Mountain DataCon 2016
 
Everything You Were Taught About Java Is Wrong
Everything You Were Taught About Java Is WrongEverything You Were Taught About Java Is Wrong
Everything You Were Taught About Java Is Wrong
 
What is Distributed Computing, Why we use Apache Spark
What is Distributed Computing, Why we use Apache SparkWhat is Distributed Computing, Why we use Apache Spark
What is Distributed Computing, Why we use Apache Spark
 
Distributed machine learning 101 using apache spark from a browser devoxx.b...
Distributed machine learning 101 using apache spark from a browser   devoxx.b...Distributed machine learning 101 using apache spark from a browser   devoxx.b...
Distributed machine learning 101 using apache spark from a browser devoxx.b...
 
BYOD Revisited: Build Your Own Device (Embedded Linux Conference 2014)
BYOD Revisited: Build Your Own Device (Embedded Linux Conference 2014)BYOD Revisited: Build Your Own Device (Embedded Linux Conference 2014)
BYOD Revisited: Build Your Own Device (Embedded Linux Conference 2014)
 

Kürzlich hochgeladen

What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfkalichargn70th171
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Software Coding for software engineering
Software Coding for software engineeringSoftware Coding for software engineering
Software Coding for software engineeringssuserb3a23b
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 

Kürzlich hochgeladen (20)

What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
Advantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your BusinessAdvantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your Business
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
Odoo Development Company in India | Devintelle Consulting Service
Odoo Development Company in India | Devintelle Consulting ServiceOdoo Development Company in India | Devintelle Consulting Service
Odoo Development Company in India | Devintelle Consulting Service
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Software Coding for software engineering
Software Coding for software engineeringSoftware Coding for software engineering
Software Coding for software engineering
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 

Cloud accounting software uk

  • 1. What is Cloud Computing? Arcus Universe Tuesday, December 2, 2014
  • 3. 1. Web-Scale Problems  Characteristics:  Definitely data-intensive  May also be processing intensive  Examples:  Crawling, indexing, searching, mining the Web  “Post-genomics” life sciences research  Other scientific data (physics, astronomers, etc.)  Sensor networks  Web 2.0 applications  …
  • 4. How much data? ● Wayback Machine has 2 PB + 20 TB/month (2006) ● Google processes 20 PB a day (2008) ● “all words ever spoken by human beings” ~ 5 EB ● NOAA has ~1 PB climate data (2007) ● CERN’s LHC will generate 15 PB a year (2008) 640K ought to be enough for anybody.
  • 5.
  • 6.
  • 7. There’s nothing like more data! s/inspiration/data/g;
  • 8. What to do with more data? ● Answering factoid questions ● Pattern matching on the Web ● Works amazingly well Who shot Abraham Lincoln? ® X shot Abraham Lincoln ● Learning relations ● Start with seed instances ● Search for patterns on the Web ● Using patterns to find more instances Birthday-of(Mozart, 1756) Birthday-of(Einstein, 1879) Wolfgang Amadeus Mozart (1756 - 1791) ●Einstein was born in 1879 PERSON (DATE – PERSON was born in DATE
  • 9. 2. Large Data Centers ● Web-scale problems? Throw more machines at it! ● Clear trend: centralization of computing resources in large data centers ● Necessary ingredients: fiber, juice, and space ● What do Oregon, Iceland, and abandoned mines have in common? ● Important Issues: ● Redundancy ● Efficiency ● Utilization ● Management
  • 10.
  • 11.
  • 12. Key Technology: Virtualization App App App Operating System Hardware Traditional Stack App App App OS OS Hardware OS Hypervisor Virtualized Stack
  • 13. 3. Different Computing Models “Why do it yourself if you can pay someone to do it for you?” ● Utility computing ● Why buy machines when you can rent cycles? ● Examples: Amazon’s EC2, GoGrid, AppNexus ● Platform as a Service (PaaS) ● Give me nice API and take care of the implementation ● Example: Google App Engine ● Software as a Service (SaaS) ● Just run it for me! ● Example: Gmail
  • 14. What is the course about? ● MapReduce: the “back-end” of cloud computing ● Batch-oriented processing of large datasets ● Ajax: the “front-end” of cloud computing ● Highly-interactive Web-based applications ● Computing “in the clouds” ● Amazon’s EC2/S3 as an example of utility computing
  • 15. Amazon Web Services ● Elastic Compute Cloud (EC2) ● Rent computing resources by the hour ● Basic unit of accounting = instance-hour ● Additional costs for bandwidth ● Simple Storage Service (S3) ● Persistent storage ● Charge by the GB/month ● Additional costs for bandwidth ● You’ll be using EC2/S3 for course assignments!
  • 16. This course is not for you… ● If you’re not genuinely interested in the topic ● If you’re not ready to do a lot of programming ● If you’re not open to thinking about computing in new ways ● If you can’t cope with uncertainly, unpredictability, poor documentation, and immature software ● If you can’t put in the time Otherwise, this will be a richly rewarding course!
  • 17. Cloud Computing Zen ● Don’t get frustrated (take a deep breath)… ● This is bleeding edge technology ● Those W$*#T@F! moments ● Be patient… ● This is the second first time I’ve taught this course ● Be flexible… ● There will be unanticipated issues along the way ● Be constructive… ● Tell me how I can make everyone’s experience better
  • 18. Web-Scale Problems? ● Don’t hold your breath: ● Biocomputing ● Nanocomputing ● Quantum computing ● … ● It all boils down to… ● Divide-and-conquer ● Throwing more hardware at the problem Simple to understand… a lifetime to master…
  • 19. Divide and Conquer “Work” w1 w2 w3 “worker” “worker” “worker” r1 r2 r3 “Result” Partition Combine
  • 20. Different Workers ● Different threads in the same core ● Different cores in the same CPU ● Different CPUs in a multi-processor system ● Different machines in a distributed system
  • 21. Choices, Choices, Choices ● Commodity vs. “exotic” hardware ● Number of machines vs. processor vs. cores ● Bandwidth of memory vs. disk vs. network ● Different programming models
  • 22. Flynn’s Taxonomy Instructions Single (SI) Multiple (MI) at aD ) DM( el pitl u M SISD Single-threaded process MISD Pipeline architecture SIMD Vector Processing MIMD Multi-threaded Programming ) DS( el gni S
  • 23. SISD Processor D D D D D D D Instructions
  • 24. SIMD D0 Processor DDDDDD0 0 0 0 0 0 Instructions D1 D2 D3 D4 … Dn D1 D2 D3 D4 … Dn D1 D2 D3 D4 … Dn D1 D2 D3 D4 … Dn D1 D2 D3 D4 … Dn D1 D2 D3 D4 … Dn D1 D2 D3 D4 … Dn
  • 25. MIMD Processor D D D D D D D Instructions Processor D D D D D D D Instructions
  • 26. Memory Typology: Distributed Processor Memory Processor Memory Network Processor Memory Processor Memory
  • 27. Memory Typology: Shared Memory Processor Processor Processor Processor
  • 28. Memory Typology: Hybrid Memory Processor Processor Network Processor Memory Processor Processor Memory Processor Memory Processor Processor
  • 29. Parallelization Problems ● How do we assign work units to workers? ● What if we have more work units than workers? ● What if workers need to share partial results? ● How do we aggregate partial results? ● How do we know all the workers have finished? ● What if workers die? What is the common theme of all of these problems?
  • 30. General Theme? ● Parallelization problems arise from: ● Communication between workers ● Access to shared resources (e.g., data) ● Thus, we need a synchronization system! ● This is tricky: ● Finding bugs is hard ● Solving bugs is even harder
  • 31. Managing Multiple Workers ● Difficult because ● (Often) don’t know the order in which workers run ● (Often) don’t know where the workers are running ● (Often) don’t know when workers interrupt each other ● Thus, we need: ● Semaphores (lock, unlock) ● Conditional variables (wait, notify, broadcast) ● Barriers ● Still, lots of problems: ● Deadlock, livelock, race conditions, ... ● Moral of the story: be careful! ● Even trickier if the workers are on different machines
  • 32. Patterns for Parallelism ● Parallel computing has been around for decades ● Here are some “design patterns” …
  • 34. Producer/Consumer Flow P C P P C C P C P P C C
  • 35. Work Queues P C P P C C shared queue W W W W W
  • 36. Rubber Meets Road ● From patterns to implementation: ● pthreads, OpenMP for multi-threaded programming ● MPI for clustering computing ● … ● The reality: ● Lots of one-off solutions, custom code ● Write you own dedicated library, then program with it ● Burden on the programmer to explicitly manage everything ● MapReduce to the rescue! ● (for next time)
  • 37. Visit Arcus Universe for demo of our Cloud Accounting Software www.arcus-universe.com