As presented in the next figure, cloud computing is the current phase of the evolution row after grid computing. We cansee that every decades we have new computing terminology. Therefore, in few years (around 2015)we will face the next phase of computing. At the end of this blog I will predict what is the next computing phase.
As presented in the figure, there are challenges in every phase. Those challenges are inherited from the previous phase. Therefore, cloud computing has the largest challenges so far.
Cloud computing is a new computing paradigm, involving data and/or computation outsourcing, with
- Infinite and elastic resource scalability
- On demand “just-in-time” provisioning
- No upfront cost … pay-as-you-go
That is, use as much or as less you need, use only when you want, and pay only what you use
From the users/clients point of view, security is the main concern in cloud computing (see the next survey result). However, from the inventors point of view, I believe that the main concern is performance and scalability.
I list now the main challenges for could systems and especially for business cloud systems.
- Will the sensitive data stored on a cloud remain confidential?
- Will cloud compromises leak confidential client data (i.e., fear of loss of control over data)
- Will the cloud provider itself be honest and won’t peek into the data?
- How do I know that the cloud provider is doing the computations correctly?
- How do I ensure that the cloud provider really stored my data without tampering with it?
Availability and reliability
- Will critical systems go down at the client, if the provider is attacked in a Denial of Service attack?
- What happens if cloud provider goes out of business?
- What to scale?
- How much to scale?
- How to scale? Which scaling strategy?
- Many business cloud systems failed due to scalability.
Privacy issues raised via massive data mining
- Cloud now stores data from a lot of clients, and can run data mining algorithms to get large amounts of information on clients
Increased attack surface
- Entity outside the organization now stores and computes data, and so
- Attackers can now target the communication link between cloud provider and client
- Cloud provider employees can be phished
Auditability and forensics
- Difficult to audit data held outside organization in a cloud
- Forensics also made difficult since now clients don’t maintain data locally
Legal quagmire and transitive trust issues
- Who is responsible for complying with regulations (e.g., SOX, HIPAA, GLBA)?
- If cloud provider subcontracts to third party clouds, will the data still be secure?
- Economics of elastic cloud-based applications
Service level agreement
- Cloud infrastructure and application SLA
- This is very crucial for business applications
- CRM/ERP applications need to support it
- What it should include?
Data and BIG data
- Many business applications have big data
- Particular technologies and tools need to be applied for big data
- Does the cloud handle big data
- How big data drop the performance
- Where to store the data?
- Traditional DBs
- New DBs!
I believe that those challenges are still far to accomplish for business applications. As mentioned before, scalability and high performance is the main challenges for business applications in the cloud. For many reasons, the existing technologies may give a good solution for non-business application. But, for business we still need new and innovative technologies. The main problem of business applications is the data. Business data are different than non-business data. In addition, business application perform non-trivial data manipulation frequently.
I would say that we should move our focus on handling data and big data in the cloud rather than improving the scalability. If we success to deal with big data, we will be able to improve the scalability of business cloud. Ad the end, I would suggest that we should consider and define a new computation phase to be "data computing". Data computing should deal with all the issues in big data, data analytic, etc.