SlideShare a Scribd company logo
1 of 48
Download to read offline
Cloud Computing:
The Hard Problems
Never Go Away
By Doug Tidwell, Cloud Computing Evangelist, IBM
Agenda
• A few (a very few) words about the cloud
• The hard problems (Boo!)
• Vendor lock-in and the Simple Cloud API
• Next steps / Resources




                                             2
A few words about the cloud




                              3
Before the cloud
• If you wanted to start an
  enterprise, you needed an IT
  shop.
• Massive costs in hardware,
  software, power,
  administrative staff
• Prohibitive cost to entry




                                 4
What if...
• You could have unlimited computing resources?
   All the processing power you want
   All the data storage you want
   Data mining whenever you want
• Cloud computing will be the biggest change to our industry
  since the rise of the Internet.




                                                               5
The cloud

•Cloud computing . . . is a style of computing where
 IT-related capabilities are provided ‘as a service,’
 allowing users to access technology-enabled
 services ‘in the cloud’ without knowledge of,
 expertise with or control over the technology
 infrastructure that supports them.
  From Wikipedia
•Everybody has a slightly different idea of what
 cloud computing really is.


                                                        6
The cloud is here to stay
• Extremely stupid idea of assuming the entire planet just can
  not be bothered with their own data (nor the security
  thereof). As always there will be some who think they
  'need' this. I hope this whole cloud [stuff] just goes away.
  Logistically speaking it will never be anything but a waste of
  money.
  Posted by ___@gmail.com, who apparently just can not be
  bothered with their own email (nor the security thereof).




                                                                   7
Cloud characteristics
• Rapid elasticity
• Measured service
• On-demand self-service
• Ubiquitous network access
• Location-independent resource pooling




  Source: NIST Working Definition of Cloud Computing,
  http://csrc.nist.gov/groups/SNS/cloud-computing/

                                                        8
Cloud services
• There are four basic things people are doing in the cloud:
   The application in the sky
   The hard drive in the sky
   The database in the sky
   The machine in the sky




                                                               9
The hard problems never die
No matter how badly we want them to




                                      10
The hard problems never die
• Whenever the industry embraces a technology, there’s
  always the exhilaration of doing something new.
• Unfortunately, we still have to deal with the hard problems
  like security, maintenance, lifecycle management, and so
  forth.
   We still have to build flexible applications that respond to changes
  in the business environment.
  We still have to share data and business processes with our
  partners.
  We’re not going back to building silos just because the cloud is
  here.
• SOA isn’t going away just because the cloud is here.


                                                                          11
Cloud computing requirements
• Management and governance
• Transactions and concurrency
• Identity
• Federated identity
• Security
• Location awareness
• Avoiding vendor lock-in
   Common APIs for cloud storage, cloud databases, cloud middleware
• Common VM image format


                                                                      12
Cloud computing requirements
• Data and application federation
• SLAs
• Lifecycle management
• Open client
• Metering and monitoring
• Deployment




                                    13
Governance is hard
• Similarities between SOA and the cloud:
   Both started bottom-up
   Both started with massive hype
   Both don’t work without governance
   • You need an architect, a blueprint, and an executive who is both
     enlightened and powerful.
• SOA and cloud computing aren’t simply coding issues.




                                                                        14
Transactions and concurrency
• Many enterprise applications require transactions and
  concurrency.
   There needs to be only one copy of the data
   Any changes to the data have to be synchronized
• This is very difficult to scale.




                                                          15
Cloud storage
• Most cloud storage systems, such as Amazon’s S3, are
  designed as distributed, redundant systems.
  Your data is stored on more than one disk in more than one place.
  If one part of the system goes down, the rest of the system keeps going.
  “There should never be a single point of failure” is a stated design goal.

• You can’t think of cloud storage as just another hard drive.




                                                                               16
Cloud storage is not just a hard drive
• Once you create an object, it can’t be modified. You can
  delete it or replace it, but you can’t modify it. (In S3, you
  can’t even move it.)
• It takes time for changes to make their way throughout the
  system (propagation latency).
  If you just put an object into S3, you can’t be sure that it will be
  available right away.
  If you get an object from S3, you can’t be sure that it’s the latest
  version.




                                                                         17
Cloud storage is not just a hard drive
• Read and write requests will fail occasionally. Your
  application should handle that gracefully.
   Trying the request a second time usually does the trick.
   Delete requests sometimes fail as well.




                                                              18
Cloud storage
• All of this is by design.
   These design decisions mean that S3 is extremely scalable and
   reliable.
   But these design decisions also mean that S3 doesn’t work like
   another hard drive.
• The right answer, as always, is to understand your choices,
  understand your needs and pick the technology that works
  best for you.




                                                                    19
Cloud databases
• Cloud databases have similar design points.
   Datasets are distributed for reliability
   Some cloud databases support schemas, some don’t
   Some cloud databases support joins, most don’t
   Some cloud databases are relational, almost all aren’t
   Some cloud databases are transactional, some aren’t




                                                            20
“Database” ≠ RDBMS
• Amazon’s SimpleDB is built around domains. Each domain
  has some number of items; each item has some number of
  attribute / value pairs.
  No schema support
  No queries across domains
• These design decisions make SimpleDB fast, scalable and,
  well, simple.
  But our previous discussions of propagation latency and I/O errors
  apply here, too.




                                                                       21
A wee quiz
• Is this a good idea?
   count()

• How about this?
   avg()

• Or one of these?
   sum(), min(), max()




                         22
A wee quiz
• The answer: It depends.
  SimpleDB automatically indexes your datasets, so the count()
  operation is efficient. But everything is a string, so avg(), sum(),
  min(), and max() aren’t supported.
  Even if they are supported, they often aren’t efficient. If records
  have to be retrieved from multiple servers in multiple data centers
  just to calculate an average, that can take a long time.




                                                                         23
Database design
• Many of us have learned over the years how to normalize an SQL
  database.
  But in the cloud, if the dataset is scattered across multiple machines in
  multiple data centers and you can’t do joins across tables, you have to do
  things differently.
• A denormalized database contains redundant data and often does
  calculations at write time, not at read time.
  A denormalized database is different from a poorly-designed database that
  was never normalized to begin with.




                                                                               24
Denormalizing your database
• The goal of a traditional, normalized relational database is to put
  each piece of data into the system once and only once.
   Building an application to use the data in a different way doesn’t require
   changes to the database. (Hopefully.)
• With a denormalized database, the goal is to copy pieces of data
  to minimize queries and processing power.
   Building an application to use the data in a different way might require
   changes to the database.
   Updating data might require making the same change in multiple places.




                                                                                25
Reliability
• If I have less physical control over my infrastructure, it’s
  vital that the cloud be reliable as possible.
  Some providers have SLAs that guarantee uptime and
  responsiveness.
  Some providers deliver private clouds via hosted or colocated data
  centers.
• Reliability isn’t a new problem, but the cloud gives us
  someone else to blame.




                                                                       26
Security
• If I’m storing my data elsewhere, security as crucial as ever.
• If I’m running my applications elsewhere, security is as
  crucial as ever.
  Some cloud providers offer greater security, access to their
  facilities, customized backup and recovery procedures, data
  destruction, etc.
• Cloud computing doesn’t introduce any new security issues.
  It doesn’t make them easier to solve, but it doesn’t create any new
  ones.
• You can reuse much of your existing security infrastructure.



                                                                        27
Identity
• Identity management, particularly federated identity
  management, is crucial for cloud computing.
  Technologies such as LDAP, OpenID, OAuth, etc. can be useful
  here.
• You can reuse much of your existing authentication
  infrastructure.




                                                                 28
Regulatory issues
• Many enterprises can’t use a public cloud at all.
   Laws prohibit certain types of data from being stored off-premises.
• The private cloud is an important architectural pattern
  being used in many enterprises.
• Location awareness is a key concern for many (potential)
  cloud users.
• Data retention and data destruction are important also.




                                                                         29
Vendor lock-in




                 30
Vendor lock-in
• If there’s a new technology, any talented programmer will
  want to use it.
   Maybe the shiny new thing is appropriate for what we’re doing.
   Maybe not.
   We’re probably going to use it anyway.
• The challenge is to walk the line between using the newest,
  coolest thing and avoiding vendor lock-in.




                                                                    31
The Simple Cloud API
• A joint effort of Zend, GoGrid, IBM, Microsoft, Nirvanix and
  Rackspace
  But you can add your own libraries to support other cloud
  providers.
• The goal: Make it possible to write portable, interoperable
  code that works with multiple cloud vendors.
• simplecloud.org/
• An article on the Simple Cloud API was published on the
  developerWorks Open Source zone today: bit.ly/1bSkTx
   There’s also a Simple Cloud podcast at dW.



                                                                 32
The Simple Cloud API
• Covers three areas:
  File storage (S3, Nirvanix, Azure Blob Storage, Rackspace Cloud
  Files)
   Document storage (SimpleDB, Azure Table Storage)
   Simple queues (SQS, Azure Table Storage)
• Uses the Factory and Adapter design patterns
  A configuration file tells the Factory object which adapter to
  create.




                                                                    33
Vendor-specific APIs
• Listing all the items in a Nirvanix directory:
•$auth = array('username'   => 'your-username',
               'password'   => 'your-password',
               'appKey'     => 'your-appkey');
 $nirvanix = new Zend_Service_Nirvanix($auth);
 $imfs = $nirvanix->getService('IMFS');
 $args = array('folderPath' => '/dougtidwell',
               'pageNumber' => 1,
               'pageSize'   => 5);
 $stuff = $imfs->ListFolder($args);




                                                   34
Vendor-specific APIs
• Listing all the items in an S3 bucket:
•$s3 = new Zend_Service_Amazon_S3
             ($accessKey, $secretKey);
 $stuff = $s3->getObjectsByBucket($bucketName);




                                                  35
The Simple Cloud API
• Listing all the items in a {Nirvanix directory | S3 bucket}:
•$credentials =
   new Zend_Config_Ini($configFile);
 $stuff = Zend_Cloud_Storage_Factory::getAdapter
            ($credentials)->listItems();




                                                                 36
Where we go from here
It’s still early




                        37
Issues with the Internet
• “It’s not secure.”
• “I don’t want to lose control of my infrastructure.”
• “I don’t know how reliable it is.”
• “I don’t know if my partners are going to use it.”
• All of these were important, legitimate issues.
  With VPNs and other technology, the industry solved these
  problems.




                                                              38
Issues with the cloud
• “It’s not secure.”
• “I don’t want to lose control of my infrastructure.”
• “I don’t know how reliable it is.”
• “I don’t know if my partners are going to use it.”
• All of these are important, legitimate issues.
  We’ve got some work to do, but the massive economic incentives
  mean someone will find a way to solve these problems.




                                                                   39
The hype, one more time


•Cloud computing will
be the biggest change
to our industry since
the rise of the
Internet.
                          40
Resources
Useful stuff




               41
Other cloud sessions
• Cloud Computing with VMWare, Akhil Sahil
  11:15 – 12:15 Wednesday
• PHP and the Cloud, Ivo Jansch
  2:45 – 3:45 Wednesday
• PHP and Platform Independence in the Cloud, Wil Sinclair
  9:15 – 10:15 Thursday




                                                             42
Cloud Computing with the Zend Framework
• A series of articles from the IBM developerWorks Open Source
  zone:
   Using Amazon S3 with Zend, September 22
   • ibm.com/developerworks/opensource/library/os-php-cloud1/
   Using Amazon EC2 with Zend, October 13
   • ibm.com/developerworks/opensource/library/os-php-cloud2/




                                                                 43
Principles of openness
1. Cloud providers must work together to ensure that the
   challenges to cloud adoption are addressed through open
   collaboration and the appropriate use of standards.
2. Cloud providers must not use their market position to
   lock customers into their particular platforms and limiting
   their choice of providers.
3. Cloud providers must use and adopt existing standards
   wherever appropriate. The IT industry has invested
   heavily in existing standards and standards organizations;
   there is no need to duplicate or reinvent them.




                                                                 44
Principles of openness
4. When new standards (or adjustments to existing
   standards) are needed, we must be judicious and
   pragmatic to avoid creating too many standards. We must
   ensure that standards promote innovation and do not
   inhibit it.
5. Any community effort around the open cloud should be
   driven by customer needs, not merely the technical needs
   of cloud providers, and should be tested or verified
   against real customer requirements.
6. Cloud computing standards organizations, advocacy
   groups, and communities should work together and stay
   coordinated, making sure that efforts do not conflict or
   overlap.
                                                              45
The principles in action
• The Cloud Computing Use
  Cases Google group has a white
  paper of common use cases.
• The identified use cases will be
  used as input to various
  standards efforts.
• Join us at
  groups.google.com/group/
  cloud-computing-use-cases.
• Version 1 of the paper is available
  at bit.ly/1FXRAH.
     bit.ly/1FXRAH




                                        46
Developer requirements
• Scalable Database
• Centralized Logging
• Scalable Session Management
• Identity Management
• Robust Storage                • Raw Compute / Job Processing
• Messaging – Pub-Sub           • Service Discovery
• Messaging – Point-to-Point    • SLAs
• Mail
• Caching                       What else?
                                                                 47
Thanks!

By Doug Tidwell, Cloud Computing Evangelist, IBM

dtidwell@us.ibm.com

More Related Content

What's hot

Big iron 2 (published)
Big iron 2 (published)Big iron 2 (published)
Big iron 2 (published)Ben Stopford
 
Storage As A Service (StAAS)
Storage As A Service (StAAS)Storage As A Service (StAAS)
Storage As A Service (StAAS)Shreyans Jain
 
cloud computing-Introduction
cloud computing-Introductioncloud computing-Introduction
cloud computing-IntroductionSuchithra Suriya
 
So You Need To Build A Private Cloud. What Now? Best Practices For Building Y...
So You Need To Build A Private Cloud. What Now? Best Practices For Building Y...So You Need To Build A Private Cloud. What Now? Best Practices For Building Y...
So You Need To Build A Private Cloud. What Now? Best Practices For Building Y...Dell World
 
Cloud storage & cloud computing
Cloud storage & cloud computingCloud storage & cloud computing
Cloud storage & cloud computingMichele Minighin
 
MT03 Cloud trends and the Dell Technologies point of view
MT03 Cloud trends and the Dell Technologies point of viewMT03 Cloud trends and the Dell Technologies point of view
MT03 Cloud trends and the Dell Technologies point of viewDell EMC World
 
Architecture Challenges In Cloud Computing
Architecture Challenges In Cloud ComputingArchitecture Challenges In Cloud Computing
Architecture Challenges In Cloud ComputingIndicThreads
 
Introduction to public cloud
Introduction to public cloudIntroduction to public cloud
Introduction to public cloudgangal
 
Dell High-Performance Computing solutions: Enable innovations, outperform exp...
Dell High-Performance Computing solutions: Enable innovations, outperform exp...Dell High-Performance Computing solutions: Enable innovations, outperform exp...
Dell High-Performance Computing solutions: Enable innovations, outperform exp...Dell World
 
Big Data and the Cloud a Best Friend Story
Big Data and the Cloud a Best Friend StoryBig Data and the Cloud a Best Friend Story
Big Data and the Cloud a Best Friend StoryAmazon Web Services
 
Accelerating Business Through Next Generation Storage
 Accelerating Business Through Next Generation Storage Accelerating Business Through Next Generation Storage
Accelerating Business Through Next Generation StorageDell World
 
Operating OpenStack on a Budget
Operating OpenStack on a BudgetOperating OpenStack on a Budget
Operating OpenStack on a BudgetSusan Wu
 
Erik Ableson & Vincent Branger: What's best for vdi storage optimisation hard...
Erik Ableson & Vincent Branger: What's best for vdi storage optimisation hard...Erik Ableson & Vincent Branger: What's best for vdi storage optimisation hard...
Erik Ableson & Vincent Branger: What's best for vdi storage optimisation hard...ILKI - Your Cloud Designer
 

What's hot (17)

Big iron 2 (published)
Big iron 2 (published)Big iron 2 (published)
Big iron 2 (published)
 
SQL Saturday San Diego
SQL Saturday San DiegoSQL Saturday San Diego
SQL Saturday San Diego
 
Storage As A Service (StAAS)
Storage As A Service (StAAS)Storage As A Service (StAAS)
Storage As A Service (StAAS)
 
cloud computing-Introduction
cloud computing-Introductioncloud computing-Introduction
cloud computing-Introduction
 
So You Need To Build A Private Cloud. What Now? Best Practices For Building Y...
So You Need To Build A Private Cloud. What Now? Best Practices For Building Y...So You Need To Build A Private Cloud. What Now? Best Practices For Building Y...
So You Need To Build A Private Cloud. What Now? Best Practices For Building Y...
 
Cloud storage & cloud computing
Cloud storage & cloud computingCloud storage & cloud computing
Cloud storage & cloud computing
 
MT03 Cloud trends and the Dell Technologies point of view
MT03 Cloud trends and the Dell Technologies point of viewMT03 Cloud trends and the Dell Technologies point of view
MT03 Cloud trends and the Dell Technologies point of view
 
Architecture Challenges In Cloud Computing
Architecture Challenges In Cloud ComputingArchitecture Challenges In Cloud Computing
Architecture Challenges In Cloud Computing
 
Introduction to public cloud
Introduction to public cloudIntroduction to public cloud
Introduction to public cloud
 
Dell High-Performance Computing solutions: Enable innovations, outperform exp...
Dell High-Performance Computing solutions: Enable innovations, outperform exp...Dell High-Performance Computing solutions: Enable innovations, outperform exp...
Dell High-Performance Computing solutions: Enable innovations, outperform exp...
 
Big Data and the Cloud a Best Friend Story
Big Data and the Cloud a Best Friend StoryBig Data and the Cloud a Best Friend Story
Big Data and the Cloud a Best Friend Story
 
Farming Dinosaurs
Farming DinosaursFarming Dinosaurs
Farming Dinosaurs
 
Virtualization vs. Cloud Computing: What's the Difference?
Virtualization vs. Cloud Computing: What's the Difference?Virtualization vs. Cloud Computing: What's the Difference?
Virtualization vs. Cloud Computing: What's the Difference?
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Accelerating Business Through Next Generation Storage
 Accelerating Business Through Next Generation Storage Accelerating Business Through Next Generation Storage
Accelerating Business Through Next Generation Storage
 
Operating OpenStack on a Budget
Operating OpenStack on a BudgetOperating OpenStack on a Budget
Operating OpenStack on a Budget
 
Erik Ableson & Vincent Branger: What's best for vdi storage optimisation hard...
Erik Ableson & Vincent Branger: What's best for vdi storage optimisation hard...Erik Ableson & Vincent Branger: What's best for vdi storage optimisation hard...
Erik Ableson & Vincent Branger: What's best for vdi storage optimisation hard...
 

Viewers also liked

Solving the C20K problem: Raising the bar in PHP Performance and Scalability
Solving the C20K problem: Raising the bar in PHP Performance and ScalabilitySolving the C20K problem: Raising the bar in PHP Performance and Scalability
Solving the C20K problem: Raising the bar in PHP Performance and ScalabilityZendCon
 
Oracle Compute Cloud Service快速实践
Oracle Compute Cloud Service快速实践Oracle Compute Cloud Service快速实践
Oracle Compute Cloud Service快速实践Zhaoyang Wang
 
Tiery Eyed
Tiery EyedTiery Eyed
Tiery EyedZendCon
 
MySQL Manchester TT - Replication Features
MySQL Manchester TT  - Replication FeaturesMySQL Manchester TT  - Replication Features
MySQL Manchester TT - Replication FeaturesMark Swarbrick
 
Zend Core on IBM i - Security Considerations
Zend Core on IBM i - Security ConsiderationsZend Core on IBM i - Security Considerations
Zend Core on IBM i - Security ConsiderationsZendCon
 
Oracle Compute Cloud Service介绍
Oracle Compute Cloud Service介绍Oracle Compute Cloud Service介绍
Oracle Compute Cloud Service介绍Zhaoyang Wang
 
Zend_Tool: Practical use and Extending
Zend_Tool: Practical use and ExtendingZend_Tool: Practical use and Extending
Zend_Tool: Practical use and ExtendingZendCon
 
MySQL Tech Tour 2015 - 5.7 Connector/J/Net
MySQL Tech Tour 2015 - 5.7 Connector/J/NetMySQL Tech Tour 2015 - 5.7 Connector/J/Net
MySQL Tech Tour 2015 - 5.7 Connector/J/NetMark Swarbrick
 
PHP and Platform Independance in the Cloud
PHP and Platform Independance in the CloudPHP and Platform Independance in the Cloud
PHP and Platform Independance in the CloudZendCon
 
Application Diagnosis with Zend Server Tracing
Application Diagnosis with Zend Server TracingApplication Diagnosis with Zend Server Tracing
Application Diagnosis with Zend Server TracingZendCon
 
Oracle cloud 使用云市场快速搭建小型电商网站
Oracle cloud 使用云市场快速搭建小型电商网站Oracle cloud 使用云市场快速搭建小型电商网站
Oracle cloud 使用云市场快速搭建小型电商网站Zhaoyang Wang
 
A Storage Story #ChefConf2013
A Storage Story #ChefConf2013A Storage Story #ChefConf2013
A Storage Story #ChefConf2013Kyle Bader
 
MySQL Optimizer Overview
MySQL Optimizer OverviewMySQL Optimizer Overview
MySQL Optimizer OverviewOlav Sandstå
 
Oracle cloud ravello介绍及测试账户申请
Oracle cloud ravello介绍及测试账户申请Oracle cloud ravello介绍及测试账户申请
Oracle cloud ravello介绍及测试账户申请Zhaoyang Wang
 
Framework Shootout
Framework ShootoutFramework Shootout
Framework ShootoutZendCon
 
MySQL Manchester TT - 5.7 Whats new
MySQL Manchester TT - 5.7 Whats newMySQL Manchester TT - 5.7 Whats new
MySQL Manchester TT - 5.7 Whats newMark Swarbrick
 
PHP on Windows - What's New
PHP on Windows - What's NewPHP on Windows - What's New
PHP on Windows - What's NewZendCon
 
PHP on IBM i Tutorial
PHP on IBM i TutorialPHP on IBM i Tutorial
PHP on IBM i TutorialZendCon
 

Viewers also liked (20)

Solving the C20K problem: Raising the bar in PHP Performance and Scalability
Solving the C20K problem: Raising the bar in PHP Performance and ScalabilitySolving the C20K problem: Raising the bar in PHP Performance and Scalability
Solving the C20K problem: Raising the bar in PHP Performance and Scalability
 
Oracle Compute Cloud Service快速实践
Oracle Compute Cloud Service快速实践Oracle Compute Cloud Service快速实践
Oracle Compute Cloud Service快速实践
 
Tiery Eyed
Tiery EyedTiery Eyed
Tiery Eyed
 
MySQL Manchester TT - Replication Features
MySQL Manchester TT  - Replication FeaturesMySQL Manchester TT  - Replication Features
MySQL Manchester TT - Replication Features
 
Zend Core on IBM i - Security Considerations
Zend Core on IBM i - Security ConsiderationsZend Core on IBM i - Security Considerations
Zend Core on IBM i - Security Considerations
 
Oracle Compute Cloud Service介绍
Oracle Compute Cloud Service介绍Oracle Compute Cloud Service介绍
Oracle Compute Cloud Service介绍
 
Zend_Tool: Practical use and Extending
Zend_Tool: Practical use and ExtendingZend_Tool: Practical use and Extending
Zend_Tool: Practical use and Extending
 
MySQL in your laptop
MySQL in your laptopMySQL in your laptop
MySQL in your laptop
 
MySQL Tech Tour 2015 - 5.7 Connector/J/Net
MySQL Tech Tour 2015 - 5.7 Connector/J/NetMySQL Tech Tour 2015 - 5.7 Connector/J/Net
MySQL Tech Tour 2015 - 5.7 Connector/J/Net
 
PHP and Platform Independance in the Cloud
PHP and Platform Independance in the CloudPHP and Platform Independance in the Cloud
PHP and Platform Independance in the Cloud
 
Application Diagnosis with Zend Server Tracing
Application Diagnosis with Zend Server TracingApplication Diagnosis with Zend Server Tracing
Application Diagnosis with Zend Server Tracing
 
Oracle cloud 使用云市场快速搭建小型电商网站
Oracle cloud 使用云市场快速搭建小型电商网站Oracle cloud 使用云市场快速搭建小型电商网站
Oracle cloud 使用云市场快速搭建小型电商网站
 
A Storage Story #ChefConf2013
A Storage Story #ChefConf2013A Storage Story #ChefConf2013
A Storage Story #ChefConf2013
 
MySQL Optimizer Overview
MySQL Optimizer OverviewMySQL Optimizer Overview
MySQL Optimizer Overview
 
Script it
Script itScript it
Script it
 
Oracle cloud ravello介绍及测试账户申请
Oracle cloud ravello介绍及测试账户申请Oracle cloud ravello介绍及测试账户申请
Oracle cloud ravello介绍及测试账户申请
 
Framework Shootout
Framework ShootoutFramework Shootout
Framework Shootout
 
MySQL Manchester TT - 5.7 Whats new
MySQL Manchester TT - 5.7 Whats newMySQL Manchester TT - 5.7 Whats new
MySQL Manchester TT - 5.7 Whats new
 
PHP on Windows - What's New
PHP on Windows - What's NewPHP on Windows - What's New
PHP on Windows - What's New
 
PHP on IBM i Tutorial
PHP on IBM i TutorialPHP on IBM i Tutorial
PHP on IBM i Tutorial
 

Similar to Cloud Computing: The Hard Problems Never Go Away

Data management in cloud computing trainee
Data management in cloud computing  traineeData management in cloud computing  trainee
Data management in cloud computing traineeDamilola Mosaku
 
Mapping Life Science Informatics to the Cloud
Mapping Life Science Informatics to the CloudMapping Life Science Informatics to the Cloud
Mapping Life Science Informatics to the CloudChris Dagdigian
 
Cloud-Storage-PPT - Copy.pptx
Cloud-Storage-PPT - Copy.pptxCloud-Storage-PPT - Copy.pptx
Cloud-Storage-PPT - Copy.pptxDeveshKhandare
 
Scaling Your Database in the Cloud
Scaling Your Database in the CloudScaling Your Database in the Cloud
Scaling Your Database in the CloudRightScale
 
Cloudcomputing.072110
Cloudcomputing.072110Cloudcomputing.072110
Cloudcomputing.072110Maxwell Pearl
 
An Integrated Cloud Computing Architectural Stack
An Integrated Cloud Computing Architectural Stack An Integrated Cloud Computing Architectural Stack
An Integrated Cloud Computing Architectural Stack Zara Tariq
 
Going to the Cloud: Ask the Expert Webcast
Going to the Cloud: Ask the Expert Webcast Going to the Cloud: Ask the Expert Webcast
Going to the Cloud: Ask the Expert Webcast Abila
 
SQL 2014 hybrid platform - Azure and on premise
SQL 2014 hybrid platform - Azure and on premise SQL 2014 hybrid platform - Azure and on premise
SQL 2014 hybrid platform - Azure and on premise Shy Engelberg
 
Cloud Computing and Virtualization Overview by Amr Ali
Cloud Computing and Virtualization Overview by Amr AliCloud Computing and Virtualization Overview by Amr Ali
Cloud Computing and Virtualization Overview by Amr AliAmr Ali
 
Christoph Streit - Reasons to use a Private Cloud
Christoph Streit - Reasons to use a Private CloudChristoph Streit - Reasons to use a Private Cloud
Christoph Streit - Reasons to use a Private CloudSymposia Media
 
4.1 Introduction to cloud storage.pptx
4.1 Introduction to cloud storage.pptx4.1 Introduction to cloud storage.pptx
4.1 Introduction to cloud storage.pptxyasothamohankumar
 

Similar to Cloud Computing: The Hard Problems Never Go Away (20)

Data management in cloud computing trainee
Data management in cloud computing  traineeData management in cloud computing  trainee
Data management in cloud computing trainee
 
Mapping Life Science Informatics to the Cloud
Mapping Life Science Informatics to the CloudMapping Life Science Informatics to the Cloud
Mapping Life Science Informatics to the Cloud
 
Cloud-Storage-PPT - Copy.pptx
Cloud-Storage-PPT - Copy.pptxCloud-Storage-PPT - Copy.pptx
Cloud-Storage-PPT - Copy.pptx
 
Scaling Your Database in the Cloud
Scaling Your Database in the CloudScaling Your Database in the Cloud
Scaling Your Database in the Cloud
 
Cloudcomputing.072110
Cloudcomputing.072110Cloudcomputing.072110
Cloudcomputing.072110
 
cloud computing Architecture in Details.ppt
cloud computing Architecture in Details.pptcloud computing Architecture in Details.ppt
cloud computing Architecture in Details.ppt
 
Discovering cloudnine
Discovering cloudnineDiscovering cloudnine
Discovering cloudnine
 
An Integrated Cloud Computing Architectural Stack
An Integrated Cloud Computing Architectural Stack An Integrated Cloud Computing Architectural Stack
An Integrated Cloud Computing Architectural Stack
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Lecture 1.Basics of cloud computing, Advantage and Disadvantage and History
Lecture 1.Basics of cloud computing, Advantage and Disadvantage and HistoryLecture 1.Basics of cloud computing, Advantage and Disadvantage and History
Lecture 1.Basics of cloud computing, Advantage and Disadvantage and History
 
The Sun Cloud
The Sun CloudThe Sun Cloud
The Sun Cloud
 
somee.pptx
somee.pptxsomee.pptx
somee.pptx
 
Going to the Cloud: Ask the Expert Webcast
Going to the Cloud: Ask the Expert Webcast Going to the Cloud: Ask the Expert Webcast
Going to the Cloud: Ask the Expert Webcast
 
lecture5_4.pptx
lecture5_4.pptxlecture5_4.pptx
lecture5_4.pptx
 
SQL 2014 hybrid platform - Azure and on premise
SQL 2014 hybrid platform - Azure and on premise SQL 2014 hybrid platform - Azure and on premise
SQL 2014 hybrid platform - Azure and on premise
 
Cloud Computing
Cloud Computing Cloud Computing
Cloud Computing
 
Cloud Computing and Virtualization Overview by Amr Ali
Cloud Computing and Virtualization Overview by Amr AliCloud Computing and Virtualization Overview by Amr Ali
Cloud Computing and Virtualization Overview by Amr Ali
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Christoph Streit - Reasons to use a Private Cloud
Christoph Streit - Reasons to use a Private CloudChristoph Streit - Reasons to use a Private Cloud
Christoph Streit - Reasons to use a Private Cloud
 
4.1 Introduction to cloud storage.pptx
4.1 Introduction to cloud storage.pptx4.1 Introduction to cloud storage.pptx
4.1 Introduction to cloud storage.pptx
 

More from ZendCon

I18n with PHP 5.3
I18n with PHP 5.3I18n with PHP 5.3
I18n with PHP 5.3ZendCon
 
Planning for Synchronization with Browser-Local Databases
Planning for Synchronization with Browser-Local DatabasesPlanning for Synchronization with Browser-Local Databases
Planning for Synchronization with Browser-Local DatabasesZendCon
 
Magento - a Zend Framework Application
Magento - a Zend Framework ApplicationMagento - a Zend Framework Application
Magento - a Zend Framework ApplicationZendCon
 
Enterprise-Class PHP Security
Enterprise-Class PHP SecurityEnterprise-Class PHP Security
Enterprise-Class PHP SecurityZendCon
 
PHP and IBM i - Database Alternatives
PHP and IBM i - Database AlternativesPHP and IBM i - Database Alternatives
PHP and IBM i - Database AlternativesZendCon
 
Insights from the Experts: How PHP Leaders Are Transforming High-Impact PHP A...
Insights from the Experts: How PHP Leaders Are Transforming High-Impact PHP A...Insights from the Experts: How PHP Leaders Are Transforming High-Impact PHP A...
Insights from the Experts: How PHP Leaders Are Transforming High-Impact PHP A...ZendCon
 
Joe Staner Zend Con 2008
Joe Staner Zend Con 2008Joe Staner Zend Con 2008
Joe Staner Zend Con 2008ZendCon
 
Make your PHP Application Software-as-a-Service (SaaS) Ready with the Paralle...
Make your PHP Application Software-as-a-Service (SaaS) Ready with the Paralle...Make your PHP Application Software-as-a-Service (SaaS) Ready with the Paralle...
Make your PHP Application Software-as-a-Service (SaaS) Ready with the Paralle...ZendCon
 
DB2 Storage Engine for MySQL and Open Source Applications Session
DB2 Storage Engine for MySQL and Open Source Applications SessionDB2 Storage Engine for MySQL and Open Source Applications Session
DB2 Storage Engine for MySQL and Open Source Applications SessionZendCon
 
Digital Identity
Digital IdentityDigital Identity
Digital IdentityZendCon
 
Modernizing i5 Applications
Modernizing i5 ApplicationsModernizing i5 Applications
Modernizing i5 ApplicationsZendCon
 
Lesser Known Security Problems in PHP Applications
Lesser Known Security Problems in PHP ApplicationsLesser Known Security Problems in PHP Applications
Lesser Known Security Problems in PHP ApplicationsZendCon
 
Architecting for PHP5 - Why "Runs on PHP5" is not "Written for PHP5"
Architecting for PHP5 - Why "Runs on PHP5" is not "Written for PHP5"Architecting for PHP5 - Why "Runs on PHP5" is not "Written for PHP5"
Architecting for PHP5 - Why "Runs on PHP5" is not "Written for PHP5"ZendCon
 
SQL Query Tuning: The Legend of Drunken Query Master
SQL Query Tuning: The Legend of Drunken Query MasterSQL Query Tuning: The Legend of Drunken Query Master
SQL Query Tuning: The Legend of Drunken Query MasterZendCon
 
ZendCon 2008 Closing Keynote
ZendCon 2008 Closing KeynoteZendCon 2008 Closing Keynote
ZendCon 2008 Closing KeynoteZendCon
 
Top Zend Studio Secrets
Top Zend Studio SecretsTop Zend Studio Secrets
Top Zend Studio SecretsZendCon
 
VIM for (PHP) Programmers
VIM for (PHP) ProgrammersVIM for (PHP) Programmers
VIM for (PHP) ProgrammersZendCon
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven DevelopmentZendCon
 
Rickroll To Go With PHP, WURFL, and Other Open Source Tools
Rickroll To Go With PHP, WURFL, and Other Open Source ToolsRickroll To Go With PHP, WURFL, and Other Open Source Tools
Rickroll To Go With PHP, WURFL, and Other Open Source ToolsZendCon
 
PECL Picks - Extensions to make your life better
PECL Picks - Extensions to make your life betterPECL Picks - Extensions to make your life better
PECL Picks - Extensions to make your life betterZendCon
 

More from ZendCon (20)

I18n with PHP 5.3
I18n with PHP 5.3I18n with PHP 5.3
I18n with PHP 5.3
 
Planning for Synchronization with Browser-Local Databases
Planning for Synchronization with Browser-Local DatabasesPlanning for Synchronization with Browser-Local Databases
Planning for Synchronization with Browser-Local Databases
 
Magento - a Zend Framework Application
Magento - a Zend Framework ApplicationMagento - a Zend Framework Application
Magento - a Zend Framework Application
 
Enterprise-Class PHP Security
Enterprise-Class PHP SecurityEnterprise-Class PHP Security
Enterprise-Class PHP Security
 
PHP and IBM i - Database Alternatives
PHP and IBM i - Database AlternativesPHP and IBM i - Database Alternatives
PHP and IBM i - Database Alternatives
 
Insights from the Experts: How PHP Leaders Are Transforming High-Impact PHP A...
Insights from the Experts: How PHP Leaders Are Transforming High-Impact PHP A...Insights from the Experts: How PHP Leaders Are Transforming High-Impact PHP A...
Insights from the Experts: How PHP Leaders Are Transforming High-Impact PHP A...
 
Joe Staner Zend Con 2008
Joe Staner Zend Con 2008Joe Staner Zend Con 2008
Joe Staner Zend Con 2008
 
Make your PHP Application Software-as-a-Service (SaaS) Ready with the Paralle...
Make your PHP Application Software-as-a-Service (SaaS) Ready with the Paralle...Make your PHP Application Software-as-a-Service (SaaS) Ready with the Paralle...
Make your PHP Application Software-as-a-Service (SaaS) Ready with the Paralle...
 
DB2 Storage Engine for MySQL and Open Source Applications Session
DB2 Storage Engine for MySQL and Open Source Applications SessionDB2 Storage Engine for MySQL and Open Source Applications Session
DB2 Storage Engine for MySQL and Open Source Applications Session
 
Digital Identity
Digital IdentityDigital Identity
Digital Identity
 
Modernizing i5 Applications
Modernizing i5 ApplicationsModernizing i5 Applications
Modernizing i5 Applications
 
Lesser Known Security Problems in PHP Applications
Lesser Known Security Problems in PHP ApplicationsLesser Known Security Problems in PHP Applications
Lesser Known Security Problems in PHP Applications
 
Architecting for PHP5 - Why "Runs on PHP5" is not "Written for PHP5"
Architecting for PHP5 - Why "Runs on PHP5" is not "Written for PHP5"Architecting for PHP5 - Why "Runs on PHP5" is not "Written for PHP5"
Architecting for PHP5 - Why "Runs on PHP5" is not "Written for PHP5"
 
SQL Query Tuning: The Legend of Drunken Query Master
SQL Query Tuning: The Legend of Drunken Query MasterSQL Query Tuning: The Legend of Drunken Query Master
SQL Query Tuning: The Legend of Drunken Query Master
 
ZendCon 2008 Closing Keynote
ZendCon 2008 Closing KeynoteZendCon 2008 Closing Keynote
ZendCon 2008 Closing Keynote
 
Top Zend Studio Secrets
Top Zend Studio SecretsTop Zend Studio Secrets
Top Zend Studio Secrets
 
VIM for (PHP) Programmers
VIM for (PHP) ProgrammersVIM for (PHP) Programmers
VIM for (PHP) Programmers
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Rickroll To Go With PHP, WURFL, and Other Open Source Tools
Rickroll To Go With PHP, WURFL, and Other Open Source ToolsRickroll To Go With PHP, WURFL, and Other Open Source Tools
Rickroll To Go With PHP, WURFL, and Other Open Source Tools
 
PECL Picks - Extensions to make your life better
PECL Picks - Extensions to make your life betterPECL Picks - Extensions to make your life better
PECL Picks - Extensions to make your life better
 

Recently uploaded

Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 

Recently uploaded (20)

Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 

Cloud Computing: The Hard Problems Never Go Away

  • 1. Cloud Computing: The Hard Problems Never Go Away By Doug Tidwell, Cloud Computing Evangelist, IBM
  • 2. Agenda • A few (a very few) words about the cloud • The hard problems (Boo!) • Vendor lock-in and the Simple Cloud API • Next steps / Resources 2
  • 3. A few words about the cloud 3
  • 4. Before the cloud • If you wanted to start an enterprise, you needed an IT shop. • Massive costs in hardware, software, power, administrative staff • Prohibitive cost to entry 4
  • 5. What if... • You could have unlimited computing resources? All the processing power you want All the data storage you want Data mining whenever you want • Cloud computing will be the biggest change to our industry since the rise of the Internet. 5
  • 6. The cloud •Cloud computing . . . is a style of computing where IT-related capabilities are provided ‘as a service,’ allowing users to access technology-enabled services ‘in the cloud’ without knowledge of, expertise with or control over the technology infrastructure that supports them. From Wikipedia •Everybody has a slightly different idea of what cloud computing really is. 6
  • 7. The cloud is here to stay • Extremely stupid idea of assuming the entire planet just can not be bothered with their own data (nor the security thereof). As always there will be some who think they 'need' this. I hope this whole cloud [stuff] just goes away. Logistically speaking it will never be anything but a waste of money. Posted by ___@gmail.com, who apparently just can not be bothered with their own email (nor the security thereof). 7
  • 8. Cloud characteristics • Rapid elasticity • Measured service • On-demand self-service • Ubiquitous network access • Location-independent resource pooling Source: NIST Working Definition of Cloud Computing, http://csrc.nist.gov/groups/SNS/cloud-computing/ 8
  • 9. Cloud services • There are four basic things people are doing in the cloud: The application in the sky The hard drive in the sky The database in the sky The machine in the sky 9
  • 10. The hard problems never die No matter how badly we want them to 10
  • 11. The hard problems never die • Whenever the industry embraces a technology, there’s always the exhilaration of doing something new. • Unfortunately, we still have to deal with the hard problems like security, maintenance, lifecycle management, and so forth. We still have to build flexible applications that respond to changes in the business environment. We still have to share data and business processes with our partners. We’re not going back to building silos just because the cloud is here. • SOA isn’t going away just because the cloud is here. 11
  • 12. Cloud computing requirements • Management and governance • Transactions and concurrency • Identity • Federated identity • Security • Location awareness • Avoiding vendor lock-in Common APIs for cloud storage, cloud databases, cloud middleware • Common VM image format 12
  • 13. Cloud computing requirements • Data and application federation • SLAs • Lifecycle management • Open client • Metering and monitoring • Deployment 13
  • 14. Governance is hard • Similarities between SOA and the cloud: Both started bottom-up Both started with massive hype Both don’t work without governance • You need an architect, a blueprint, and an executive who is both enlightened and powerful. • SOA and cloud computing aren’t simply coding issues. 14
  • 15. Transactions and concurrency • Many enterprise applications require transactions and concurrency. There needs to be only one copy of the data Any changes to the data have to be synchronized • This is very difficult to scale. 15
  • 16. Cloud storage • Most cloud storage systems, such as Amazon’s S3, are designed as distributed, redundant systems. Your data is stored on more than one disk in more than one place. If one part of the system goes down, the rest of the system keeps going. “There should never be a single point of failure” is a stated design goal. • You can’t think of cloud storage as just another hard drive. 16
  • 17. Cloud storage is not just a hard drive • Once you create an object, it can’t be modified. You can delete it or replace it, but you can’t modify it. (In S3, you can’t even move it.) • It takes time for changes to make their way throughout the system (propagation latency). If you just put an object into S3, you can’t be sure that it will be available right away. If you get an object from S3, you can’t be sure that it’s the latest version. 17
  • 18. Cloud storage is not just a hard drive • Read and write requests will fail occasionally. Your application should handle that gracefully. Trying the request a second time usually does the trick. Delete requests sometimes fail as well. 18
  • 19. Cloud storage • All of this is by design. These design decisions mean that S3 is extremely scalable and reliable. But these design decisions also mean that S3 doesn’t work like another hard drive. • The right answer, as always, is to understand your choices, understand your needs and pick the technology that works best for you. 19
  • 20. Cloud databases • Cloud databases have similar design points. Datasets are distributed for reliability Some cloud databases support schemas, some don’t Some cloud databases support joins, most don’t Some cloud databases are relational, almost all aren’t Some cloud databases are transactional, some aren’t 20
  • 21. “Database” ≠ RDBMS • Amazon’s SimpleDB is built around domains. Each domain has some number of items; each item has some number of attribute / value pairs. No schema support No queries across domains • These design decisions make SimpleDB fast, scalable and, well, simple. But our previous discussions of propagation latency and I/O errors apply here, too. 21
  • 22. A wee quiz • Is this a good idea? count() • How about this? avg() • Or one of these? sum(), min(), max() 22
  • 23. A wee quiz • The answer: It depends. SimpleDB automatically indexes your datasets, so the count() operation is efficient. But everything is a string, so avg(), sum(), min(), and max() aren’t supported. Even if they are supported, they often aren’t efficient. If records have to be retrieved from multiple servers in multiple data centers just to calculate an average, that can take a long time. 23
  • 24. Database design • Many of us have learned over the years how to normalize an SQL database. But in the cloud, if the dataset is scattered across multiple machines in multiple data centers and you can’t do joins across tables, you have to do things differently. • A denormalized database contains redundant data and often does calculations at write time, not at read time. A denormalized database is different from a poorly-designed database that was never normalized to begin with. 24
  • 25. Denormalizing your database • The goal of a traditional, normalized relational database is to put each piece of data into the system once and only once. Building an application to use the data in a different way doesn’t require changes to the database. (Hopefully.) • With a denormalized database, the goal is to copy pieces of data to minimize queries and processing power. Building an application to use the data in a different way might require changes to the database. Updating data might require making the same change in multiple places. 25
  • 26. Reliability • If I have less physical control over my infrastructure, it’s vital that the cloud be reliable as possible. Some providers have SLAs that guarantee uptime and responsiveness. Some providers deliver private clouds via hosted or colocated data centers. • Reliability isn’t a new problem, but the cloud gives us someone else to blame. 26
  • 27. Security • If I’m storing my data elsewhere, security as crucial as ever. • If I’m running my applications elsewhere, security is as crucial as ever. Some cloud providers offer greater security, access to their facilities, customized backup and recovery procedures, data destruction, etc. • Cloud computing doesn’t introduce any new security issues. It doesn’t make them easier to solve, but it doesn’t create any new ones. • You can reuse much of your existing security infrastructure. 27
  • 28. Identity • Identity management, particularly federated identity management, is crucial for cloud computing. Technologies such as LDAP, OpenID, OAuth, etc. can be useful here. • You can reuse much of your existing authentication infrastructure. 28
  • 29. Regulatory issues • Many enterprises can’t use a public cloud at all. Laws prohibit certain types of data from being stored off-premises. • The private cloud is an important architectural pattern being used in many enterprises. • Location awareness is a key concern for many (potential) cloud users. • Data retention and data destruction are important also. 29
  • 31. Vendor lock-in • If there’s a new technology, any talented programmer will want to use it. Maybe the shiny new thing is appropriate for what we’re doing. Maybe not. We’re probably going to use it anyway. • The challenge is to walk the line between using the newest, coolest thing and avoiding vendor lock-in. 31
  • 32. The Simple Cloud API • A joint effort of Zend, GoGrid, IBM, Microsoft, Nirvanix and Rackspace But you can add your own libraries to support other cloud providers. • The goal: Make it possible to write portable, interoperable code that works with multiple cloud vendors. • simplecloud.org/ • An article on the Simple Cloud API was published on the developerWorks Open Source zone today: bit.ly/1bSkTx There’s also a Simple Cloud podcast at dW. 32
  • 33. The Simple Cloud API • Covers three areas: File storage (S3, Nirvanix, Azure Blob Storage, Rackspace Cloud Files) Document storage (SimpleDB, Azure Table Storage) Simple queues (SQS, Azure Table Storage) • Uses the Factory and Adapter design patterns A configuration file tells the Factory object which adapter to create. 33
  • 34. Vendor-specific APIs • Listing all the items in a Nirvanix directory: •$auth = array('username' => 'your-username', 'password' => 'your-password', 'appKey' => 'your-appkey'); $nirvanix = new Zend_Service_Nirvanix($auth); $imfs = $nirvanix->getService('IMFS'); $args = array('folderPath' => '/dougtidwell', 'pageNumber' => 1, 'pageSize' => 5); $stuff = $imfs->ListFolder($args); 34
  • 35. Vendor-specific APIs • Listing all the items in an S3 bucket: •$s3 = new Zend_Service_Amazon_S3 ($accessKey, $secretKey); $stuff = $s3->getObjectsByBucket($bucketName); 35
  • 36. The Simple Cloud API • Listing all the items in a {Nirvanix directory | S3 bucket}: •$credentials = new Zend_Config_Ini($configFile); $stuff = Zend_Cloud_Storage_Factory::getAdapter ($credentials)->listItems(); 36
  • 37. Where we go from here It’s still early 37
  • 38. Issues with the Internet • “It’s not secure.” • “I don’t want to lose control of my infrastructure.” • “I don’t know how reliable it is.” • “I don’t know if my partners are going to use it.” • All of these were important, legitimate issues. With VPNs and other technology, the industry solved these problems. 38
  • 39. Issues with the cloud • “It’s not secure.” • “I don’t want to lose control of my infrastructure.” • “I don’t know how reliable it is.” • “I don’t know if my partners are going to use it.” • All of these are important, legitimate issues. We’ve got some work to do, but the massive economic incentives mean someone will find a way to solve these problems. 39
  • 40. The hype, one more time •Cloud computing will be the biggest change to our industry since the rise of the Internet. 40
  • 42. Other cloud sessions • Cloud Computing with VMWare, Akhil Sahil 11:15 – 12:15 Wednesday • PHP and the Cloud, Ivo Jansch 2:45 – 3:45 Wednesday • PHP and Platform Independence in the Cloud, Wil Sinclair 9:15 – 10:15 Thursday 42
  • 43. Cloud Computing with the Zend Framework • A series of articles from the IBM developerWorks Open Source zone: Using Amazon S3 with Zend, September 22 • ibm.com/developerworks/opensource/library/os-php-cloud1/ Using Amazon EC2 with Zend, October 13 • ibm.com/developerworks/opensource/library/os-php-cloud2/ 43
  • 44. Principles of openness 1. Cloud providers must work together to ensure that the challenges to cloud adoption are addressed through open collaboration and the appropriate use of standards. 2. Cloud providers must not use their market position to lock customers into their particular platforms and limiting their choice of providers. 3. Cloud providers must use and adopt existing standards wherever appropriate. The IT industry has invested heavily in existing standards and standards organizations; there is no need to duplicate or reinvent them. 44
  • 45. Principles of openness 4. When new standards (or adjustments to existing standards) are needed, we must be judicious and pragmatic to avoid creating too many standards. We must ensure that standards promote innovation and do not inhibit it. 5. Any community effort around the open cloud should be driven by customer needs, not merely the technical needs of cloud providers, and should be tested or verified against real customer requirements. 6. Cloud computing standards organizations, advocacy groups, and communities should work together and stay coordinated, making sure that efforts do not conflict or overlap. 45
  • 46. The principles in action • The Cloud Computing Use Cases Google group has a white paper of common use cases. • The identified use cases will be used as input to various standards efforts. • Join us at groups.google.com/group/ cloud-computing-use-cases. • Version 1 of the paper is available at bit.ly/1FXRAH. bit.ly/1FXRAH 46
  • 47. Developer requirements • Scalable Database • Centralized Logging • Scalable Session Management • Identity Management • Robust Storage • Raw Compute / Job Processing • Messaging – Pub-Sub • Service Discovery • Messaging – Point-to-Point • SLAs • Mail • Caching What else? 47
  • 48. Thanks! By Doug Tidwell, Cloud Computing Evangelist, IBM dtidwell@us.ibm.com