



































Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
1644 Data Structures and Algorithms
Typology: High school final essays
1 / 43
This page cannot be seen from the preview
Don't miss anything!




































Qualification BTEC Level 5 HND Diploma in Computing
Unit number and title (^) Unit 16 : Cloud computing
Submission date Date Received 1st submission
Re-submission Date Date Received 2nd submission
Student Name Student ID
Class Assessor name
Student declaration
I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism. I understand that making a false declaration is a form of malpractice.
Student’s signature
Grading grid
P1 P2 P3 P4 M1 M2 D
Grade: Assessor Signature: Date:
Internal Verifier’ s Comments:
Signature & Date:
Assignment Brief and Guidance:
Scenario ATN is a Vietnamese company which is selling toys to teenagers in many provinces all over Vietnam. The company has the revenue over 700.000 dollars/year. Currently each shop has its own database to store transactions for that shop only. Each shop has to send the sale data to the board director monthly and the board director need lots of time to summarize the data collected from all the shops. Besides the board can’t see the stock information update in real time.
The table of contents in your technical report should be as follows:
General guidelines:
Instead of providing definitions but also provide with examples. Provide more own arguments instead of definitions Making use of academic references instead of web tutorials For a cloud architecture look at the bottom of this document
Learning Outcomes and Assessment Criteria
Pass Merit Distinction
LO1 Demonstrate an understanding of the fundamentals of Cloud Computing and its architectures
LO1 & 2 D1 Justify the tools chosen to realise a Cloud Computing solution.
P1 Analyse the evolution and fundamental concepts of Cloud Computing.
P2 Design an appropriate architectural Cloud Computing framework for a given scenario.
M1 Discuss why an organisation should migrate to a Cloud Computing solution.
LO2 Evaluate the deployment models, service models and technological drivers of Cloud Computing and validate their use
P3 Define an appropriate deployment model for a given scenario.
P4 Compare the service models for choosing an adequate model for a given scenario.
M2 Demonstrate these deployment models with real world examples.
I. Introduction Cloud computing is broadening the scope of the IT industry. Cloud computing is rapidly growing as a viable form of IT service delivery, thanks to a variety of converging and complementary forces. In the next study, we will discuss the concept of cloud computing, service provider models, and how to take use of a wide range of IT services. Reduced costs and enhanced agility and flexibility are among the advantages of cloud computing over traditional on-premises computing methods. Because of its immense and astonishing transformation potential, cloud computing is increasingly being utilized by individuals, businesses, educational institutions, governments , and community organizations.
II. Overview cloud computing According to (Moltchanov, 2013), in the client/server model, all end systems are divided into clients and servers each designed for specific purposes.
Client - Server Relationship
1. Client
The client takes the initiative and starts the conversation by sending a request to the server. The client must now be aware of the available servers as well as the services they offer. The client, on the other hand, can only communicate with the server; they are unable to see each other.
Concurrent design is more difficult, but it produces better results. When the pace at which requests are processed is less than the rate at which requests arrive at the server, it is possible to improve responsiveness and minimize latency. Concurrent servers are often used to implement Internet services such as HTTP, telnet, and FTP. Concurrent servers perform the following steps: Step 1: Wait for a client request to arrive Step 2: Handle the request using a new process/task/thread. Step 3: Return to the first step. As a result, concurrent servers process client requests in a parallel manner.
3. Relation between Client and Server
Below are some of the characteristics to distinguish between client and server. Hardware role: The terms "client" and "server" generally refer to the key roles performed by networked hardware. A "client" is usually something like a PC used by an individual and essentially initiates the conversation by sending a request. A "server" is usually a powerful machine dedicated to responding to customer requests, sitting in a server room somewhere that no one other than its administrator has ever seen. Software roles : TCP/IP uses different pieces of software for many protocols to implement “client” and “server” roles. Client software is usually found on client hardware and server software on server hardware, but not always. Some devices may run both client and server software.
Web clients : Mozilla Firefox, Internet Explorer, Google Chrome,... For example, “Web Statistics” by W3Schools
Web servers : Apache, Microsoft IIS, GWS,... For example, “Web Server Survey” by Netcraft Ltd.
Transaction role : During communication processes, the customer is the entity that initiates the communication or sends a query; The server responds, often providing information. Usually, the client software on the client will initiate a transaction, but this does not always happen.
For example, when two SMTP servers communicate for email exchange, both are server programs running on the server hardware. However, in the process of exchanging information one device acts as a client, while the other acts as a server.
4. Peer-to-peer (P2P) According to (Chandrasekaran, 2022), all end systems have identical skills and responsibilities in the P2P architecture, and either partner can start a communication session. Participants pool a portion of their own hardware resources, such as storage, link capacity, and CPU power. These shared resources are required to supply the P2P network's service or content. As a result, the members are both resource suppliers and resource requestors, and they link using similar networking tools.
In P2P networks, data flow is usually (but not always) symmetric downlink and uplink. This is because each linked host serves as both a client and a server at the same time, receiving and transferring the same amount of data on average.
Clients and servers are not used in the P2P paradigm; instead, equivalent peers operate as both clients and servers at the same time. However, we can always distinguish between asking peers as "clients" and reacting peers as "servers" in every contact session. This approach is solely applicable to end systems, regardless of how they are coupled to one another.
The following is a list of P2P's benefits and drawbacks
Advantage Disadvantage Scalability and dependability have been improved.
There is no centralized control.
There's no need for a separate database andapplication server.
Shared resource computers may have sluggishperformance. Low levels of security.
computers that are connected between themselves to share storage and printers. This is one of the most common uses for peer-to-peer technology. Some people might say that Homegroups can't be peer-to-peer because the computers in the network are connected to a router. However, keep in mind that the router has nothing in common with managing what the computers from the Homegroup share among themselves. The router does not work as a server but merely as an interface or gate between the local network and the internet. If you want, you can find more information about the way Microsoft chose to implement the P2P technology, in these articles: Peer-To-Peer based Features in Win 7, [MS-HGRP]: HomeGroup Protocol, and HomeGroup: A practical guide to domestic bliss with Windows 7. (digitalcitizen, 2022)
III. High Performance Computing Definition
High-performance computing (HPC) is the practice of using parallel data processing to improve computing performance and perform complex calculations. HPC achieves these goals by aggregating computing power, so even advanced applications can run efficiently, reliably and quickly as per user needs and expectations. It thus delivers much higher power and better performance than traditional computers, workstations and servers. (techtarget,
1. Parallel According to (Chandrasekaran, 2014), Parallel computing is also one of the facets of HPC. Here, a set of processors work cooperatively to solve a computational problem. These processor machines or CPUs are mostly of homogeneous type. Therefore, this definition is the same as that of HPC and is broad enough to include supercomputers that have hundreds or thousands of processors interconnected with other resources.
One can distinguish between conventional computers and parallel computers in the way the applications are executed. In parallel computing, since there is the simultaneous use of multiple processor machines, the following apply:
It is run using multiple processors (multiple CPUs). A problem is broken down into discrete parts that can be solved concurrently. Each part is further broken down into a series of instructions. Instructions from each part are executed simultaneously on different processors. An overall control/coordination mechanism is employed.
2. Cluster According to (Chandrasekaran, 2014), A cluster computing system consists of a set of the same or similar type of processor machines connected using dedicated network infrastructure. All processor machines share resources such as a common home directory and have software such as a message passing interface (MPI) implementation installed to allow programs to be run across all nodes simultaneously. This is also a kind of HPC category. The individual computers in a cluster can be referred to as nodes.
If we have processor machines of heterogeneous types in a cluster, this kind of clusters become a subtype and still mostly are in the experimental or research stage.
3. Distributed According to (Chandrasekaran, 2014), distributed computing is also a computing system that consists of multiple computers or processor machines connected through a network, which can be homogeneous or heterogeneous, but run as a single system.
Connectivity can be so that the CPUs in a distributed system can be physically close together and linked to a local network, or they can be geographically isolated and connected to a wide area network. Any number of potential configurations on processor devices, such as mainframes, PCs, workstations, and minicomputers, support heterogeneity in a distributed framework. The aim of distributed computing is to make such a network operate like a single computer.
Distributed computing systems are advantageous over centralized systems, because there is support for the following characteristic features:
Scalability: It is the ability of the system to be easily expanded by adding more machines as needed, and vice versa, without affecting the existing setup. Redundancy or replication: Here, several machines can provide the same services, so that even if one is unavailable (or failed), work does not stop because other similar computing supports will be available.
of the cloud. It specifies the appearance of your cloud-based architecture, what the IT teams can modify, and if you can access all services or whether you must develop them all from scratch (parallels, 2022).
1. Public Deployment According to (Chandrasekaran, 2022), a public cloud is a third-party cloud provider's publicly available cloud environment. IT resources on public clouds are often provisioned using the previously stated cloud delivery models and are either sold to cloud users for a fee or monetized through other means such as advertisements. The public cloud, according to NIST, is cloud infrastructure that is made available to the general public for free. A company, academic, or government entity, or a combination of them, may own, manage, and run it. It is located on the cloud provider's premises.
Public Deployment
Public cloud architectures have three common service models: Infrastructure as a service (IaaS) The CSP hosts infrastructure elements like servers, networking, and storage resources in an IaaS paradigm. Then, using virtual machines (VMs) accessible over the open internet, it provides these resources to subscribers (parallels, 2022). Platform as a service (PaaS) The CSP maintains hardware and software tools on its own infrastructure and provides them to subscribers in a PaaS framework to aid in the creation of applications. Developers can avoid the time-consuming and difficult in-house hardware and software installation process by utilizing PaaS. This enables them to concentrate on developing applications (parallels, 2022). Software as a service (SaaS) With this infrastructure for software distribution, a CSP hosts programs and makes them accessible to subscribers online. To host and provide their apps to subscribers, bigger CSPs like Amazon Web Services (AWS) or Azure may be contacted by smaller independent software vendors (ISVs) (parallels, 2022).
There are several advantages and disadvantages of a public cloud:
Advantage s
Disadvantages
There is no need to keep the cloud up to date. There is a problem with security. The number of users is unrestricted. It is impossible to maintain privacy and organizational autonomy. The public cloud has a lot of scalability.
Setting up a cloud does not necessitate the installation of infrastructure. They are less expensive in comparison to other cloud models. SLAs are strictly adhered to.
Example: A number of companies, including Amazon, Google, Microsoft, IBM, and Oracle, offer public cloud services. Hundreds or thousands of people share the same resources. Public services for Google Cloud Storage include the public cloud infrastructure provided by Google Cloud Platform. Some examples of public cloud services include Gmail and Google Drive. An email account, for instance, is protected by a password, but the hardware on which it is kept is shared by millions of users. Here is a list of the numerous services offered by market-leading public cloud providers (jigsawacademy, 2022).
2. Private Deployment A private cloud, as defined by the National Institute of Standards and Technology (NIST), is cloud infrastructure that is provisioned for exclusive use by a single company with many clients. It could be owned, managed, and operated by the organization, a third party, or a mix of the two, and it could be located on or off site.
Simply said, a private cloud is a cloud environment developed for a single enterprise. It is normally kept secret within the organization, however it might be administered by the organization or by a third party. Open-source tools like OpenStack and Eucalyptus can be used to create a private cloud. In comparison to other cloud architectures, the private cloud is very tiny. The cloud is deployed and maintained by the companies themselves in this scenario (Chandrasekaran, 2022).
In actuality, the author has worked with both small and private cloud environments. The situation was that the company with which the author worked was working on a project with a big number of customers. They used to put things on Google Cloud Platform, but the billing seemed to be out of control due to the rapid expansion of the number of customers. After a few months, the organization made the decision to switch to a private cloud with a self-managed environment. The servers are located on different floors of the building and are managed by a "Central Server.". The System Administrator can deploy instances with custom specs from a system on Central Server. The author believes that the primary benefit of using Private Cloud Instances is that scalability may be done "manually" and that everything is kept inside a firewall.
Physical Private Cloud Instances
It appears to be highly complex when said manually, and the "System Admin" must have extensive experience managing and maintaining servers in order to adjust the entire system. When the system must be re-scaled, however, it is much cheaper and easier to do so. Because it's an enterprise product, deploying it on a private cloud ensures that customer data is completely secure in business procedures (which highly important in protecting data).
3. Community Cloud According to NIST, the community cloud is the cloud infrastructure that is provisioned for exclusive use by a specific community of consumers from organizations that have shared concerns such as mission, security requirements, policy, and compliance considerations. It
may be owned, managed, and operated by one or more of the organizations in the community, a third party, or some combination of them, and it may exist on or off-premises (Chandrasekaran, 2022).
Community Cloud
There are some several advantage and disadvantages of community cloud:
Advantag e
Disadvantage s Allows for the creation of a low-cost private cloud.
Security is superior to that of the public cloud.
An organization's autonomy is eroded. The security features are inferior to those of aprivate cloud. Allows for cloud-based collaboration. It isn't appropriate if there isn't any teamwork.
Allows the organization to share tasks.
4. Hybrid Cloud The hybrid cloud, according to NIST, is a cloud architecture made up of two or more independent cloud infrastructures (private, communal, or public) that remain distinct entities but are linked by standardized or proprietary technology that allows data and application portability. The most common way to use the hybrid cloud is to start with a private cloud and then use the public cloud for more resources (Chandrasekaran, 2022). There is several advantages and disadvantage of hybrid cloud: